docs/manual/: Fix playbin/decodebin examples, update docs a bit, mention bus instead...
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2
3         * docs/manual/advanced-autoplugging.xml:
4         * docs/manual/appendix-checklist.xml:
5         * docs/manual/appendix-integration.xml:
6         * docs/manual/highlevel-components.xml:
7           Fix playbin/decodebin examples, update docs a bit, mention bus
8           instead of signals in various places, mention kmplayer and
9           kaffeine since they have a working GStreamer backend in the KDE
10           section.
11
12 2005-06-30  Wim Taymans  <wim@fluendo.com>
13
14         * CHANGES-0.9:
15         * docs/design/draft-ghostpads.txt:
16         * docs/design/draft-push-pull.txt:
17         * docs/design/draft-query.txt:
18         * docs/design/part-TODO.txt:
19         * docs/design/part-query.txt:
20         Added CHANGES-0.9 doc, updated status of other docs.
21         
22         * gst/gstquery.h:
23         Remove "hmm" macro
24
25 2005-06-30  Wim Taymans  <wim@fluendo.com>
26
27         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
28         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
29         (gst_base_sink_change_state):
30         * gst/base/gstbasesink.h:
31         Some tweaks, only EOS and a buffer complete a preroll.
32
33 2005-06-30  Andy Wingo  <wingo@pobox.com>
34
35         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
36         activate_push down to the internal pad as well.
37
38 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
39
40         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
41
42         * gst/gsttaginterface.c:
43           Some documentation fixes (#307394 and #307397).
44
45 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
46
47         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
48
49         * gst/gstvalue.c: (gst_value_intersect_list):
50           Fix memleak (#309125).
51
52 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
53
54         * docs/manual/advanced-dataaccess.xml:
55           Fix fakesrc example to compile; doesn't work, bug somewhere...?
56         * docs/manual/basics-pads.xml:
57           Add reference for filtered caps to above chapter.
58
59 2005-06-30  Wim Taymans  <wim@fluendo.com>
60
61         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
62         (gst_bin_change_state):
63         Probes are gone.
64         Lame attempt at making the state change function a bit
65         more readable.
66
67 2005-06-30  Wim Taymans  <wim@fluendo.com>
68
69         * docs/design/part-clocks.txt:
70         * docs/design/part-element-sink.txt:
71         * docs/design/part-events.txt:
72         * docs/design/part-preroll.txt:
73         * docs/design/part-states.txt:
74         Some more tweeks and additions to the docs.
75
76 2005-06-30  Wim Taymans  <wim@fluendo.com>
77
78         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
79         (default_have_data), (gst_pad_class_init), (gst_pad_init),
80         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
81         (gst_pad_check_pull_range), (gst_pad_get_range),
82         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
83         * gst/gstpad.h:
84         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
85         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
86         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
87         (gst_pad_remove_buffer_probe):
88         Removed atomic operations, use existing LOCK.
89         Move exception handling out of main code path.
90
91 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
92
93         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
94         (silly_return_true_function), (gst_pad_class_init),
95         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
96         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
97         (gst_pad_send_event):
98           Fix accumulator, add default value by using _emitv() instead
99           of _emit() for signal emission.
100
101 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
102
103         * docs/manual/advanced-dataaccess.xml:
104         * examples/manual/Makefile.am:
105           Add probe example.
106         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
107           Make work (??).
108
109 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
110
111         * gst/elements/gstfilesink.c: (gst_filesink_render):
112           Simplify code so that we don't have to handle short
113           writes and return GST_FLOW_ERROR if an error occured.
114
115 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
116
117         * docs/gst/gstreamer-docs.sgml:
118           Remove probes more.
119
120 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
121
122         * docs/gst/gstreamer-sections.txt:
123         * docs/gst/tmpl/gstpad.sgml:
124         * docs/gst/tmpl/gstprobe.sgml:
125         * gst/Makefile.am:
126         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
127         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
128         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
129         (gst_pad_push_event), (gst_pad_send_event):
130         * gst/gstpad.h:
131         * gst/gstutils.c: (gst_pad_add_data_probe),
132         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
133         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
134         (gst_pad_remove_buffer_probe):
135         * gst/gstutils.h:
136           Remove old probes, add new g-signal-based probes and some utility
137           functions.
138
139 2005-06-29  Edward Hervey  <edward@fluendo.com>
140
141         * gst/gstelementfactory.c:
142         * gst/gstutils.h:
143         * gst/gstutils.c:
144         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
145         the definition to the header file.
146
147 2005-06-29  Andy Wingo  <wingo@pobox.com>
148
149         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
150         plugins from the source directory.
151
152 2005-06-29  Wim Taymans  <wim@fluendo.com>
153
154         * docs/gst/tmpl/gstbuffer.sgml:
155         * docs/gst/tmpl/gstclock.sgml:
156         Some fixings for blantently wrong text.
157
158 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
159
160         * check/Makefile.am:
161         * gst/gst.c: (add_path_func), (init_pre):
162         * gst/gstregistry.c: (gst_registry_add_path):
163           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
164           only scan the GST_PLUGIN_PATH locations, and not add
165           system locations
166
167 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
168
169         * docs/gst/gstreamer-sections.txt:
170         * docs/gst/tmpl/gstbasesrc.sgml:
171         * gst/gstelement.c:
172         * gst/gstelement.h:
173         * gst/gstevent.c:
174         * gst/gstutils.c:
175           doc fixes
176
177 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
178
179         * docs/manual/advanced-autoplugging.xml:
180           Fix autoplugging example.
181
182 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
183
184         * docs/manual/advanced-autoplugging.xml:
185         * docs/manual/mime-world.fig:
186           Try to get autoplugging working, fix type detection. Fix text
187           in hello-world image.
188
189 2005-06-29  Wim Taymans  <wim@fluendo.com>
190
191         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
192         (gst_base_sink_change_state):
193         Small debug line.
194
195         * gst/gstclock.h:
196         map SIGNAL and BROADCAST to the right function.
197
198         * gst/gstobject.h:
199         Remove redundant braces.
200
201         * gst/gstpad.c: (gst_pad_set_caps):
202         Don't call setcaps function when reseting caps to NULL.
203
204         * gst/gstsystemclock.c: (gst_system_clock_dispose),
205         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
206         (gst_system_clock_id_unschedule):
207         Use BROADCAST as this is what we do.
208
209 2005-06-29  Wim Taymans  <wim@fluendo.com>
210
211         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
212         We are actually prerolling before commiting the state
213         change. 
214
215 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
216
217         * docs/manual/advanced-clocks.xml:
218         * docs/manual/advanced-interfaces.xml:
219         * docs/manual/advanced-metadata.xml:
220         * docs/manual/advanced-position.xml:
221         * docs/manual/advanced-schedulers.xml:
222         * docs/manual/advanced-threads.xml:
223         * docs/manual/appendix-porting.xml:
224         * docs/manual/basics-bins.xml:
225         * docs/manual/basics-bus.xml:
226         * docs/manual/basics-elements.xml:
227         * docs/manual/basics-helloworld.xml:
228         * docs/manual/basics-pads.xml:
229         * docs/manual/highlevel-components.xml:
230         * docs/manual/manual.xml:
231         * docs/manual/thread.fig:
232           Update (until threads/scheduling) Application Development Manual;
233           remove GstThread, add GstBus, add simple porting checklist, add
234           documentation for tag writing, clocks, make all examples until this
235           part compile and run.
236         * examples/manual/Makefile.am:
237           Update from changes to Application Development Manual; add bus
238           example, remove thread example.
239
240 2005-06-28  Wim Taymans  <wim@fluendo.com>
241
242         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
243         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
244         (gst_bus_source_dispatch):
245         Add debugging messages.
246         Make internal methods static.
247         Handle the case where the bus is flushed in the handler.
248         
249         * gst/gstelement.c: (gst_element_get_bus):
250         Fix refcount in _get_bus();
251
252         * gst/gstpipeline.c: (gst_pipeline_change_state),
253         (gst_pipeline_get_clock_func):
254         Clock refcounting fixes.
255         Handle the case where preroll timed out more gracefully.
256         
257         * gst/gstsystemclock.c: (gst_system_clock_dispose):
258         Clean up the internal thread in dispose. This is needed
259         for subclasses that actually get disposed.
260         
261         * gst/schedulers/threadscheduler.c:
262         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
263         (gst_thread_scheduler_dispose):
264         Free thread pool in dispose.
265
266 2005-06-28  Andy Wingo  <wingo@pobox.com>
267
268         * tests/network-clock-utils.scm (debug, print-event): New utils.
269
270         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
271         (*packet-loss*): Unified loss probability.
272         (network-time): Report out-of-band events.
273
274         * tests/plot-data: Add support for out-of-band events. Hack it
275         into this script instead of passing it down the pipe; should fix
276         this later.
277
278 2005-06-28  Wim Taymans  <wim@fluendo.com>
279
280         * docs/gst/gstreamer.types:
281         * docs/gst/tmpl/gstbasesrc.sgml:
282         * docs/gst/tmpl/gstpad.sgml:
283         Docs fixes.
284
285 2005-06-28  Wim Taymans  <wim@fluendo.com>
286
287         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
288         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
289         (gst_proxy_pad_do_fixatecaps):
290         Correctly proxy the check_pull_range function.
291
292 2005-06-28  Andy Wingo  <wingo@pobox.com>
293
294         * tests/network-clock.scm: Removed need for slib.
295         
296 2005-06-28  Wim Taymans  <wim@fluendo.com>
297
298         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
299         (gst_basesink_preroll_queue_flush):
300         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
301         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
302         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
303         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
304         (gst_proxy_pad_set_property):
305         * gst/gstpad.c:
306         * gst/gstpad.h:
307         * gst/gstqueue.c: (gst_queue_init):
308         The deprecated pad loop function is removed now.
309
310 2005-06-28  Andy Wingo  <wingo@pobox.com>
311
312         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
313         New parameters, simulate network packet loss.
314
315         * tests/network-clock-utils.scm: Initialize the RNG.
316
317 2005-06-28  Wim Taymans  <wim@fluendo.com>
318
319         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
320         (gst_basesink_event), (gst_basesink_deactivate):
321         Flushing the preroll queue always needs to unlock the waiters.
322
323 2005-06-28  Edward Hervey  <edward@fluendo.com>
324
325         * gst/gstpipeline.c: (gst_pipeline_send_event): 
326         Wheen a seek was successful on a pipeline, set the stream_time to the
327         seek offset in order to have a synchronized stream_time.
328
329 2005-06-28  Wim Taymans  <wim@fluendo.com>
330
331         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
332         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
333         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
334         (gst_proxy_pad_do_fixatecaps):
335         Call wrapper function instead of just calling the function
336         pointers. This takes care of any locking and whatmore.
337
338 2005-06-28  Wim Taymans  <wim@fluendo.com>
339
340         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
341         (gst_pad_pull_range):
342         * gst/gstpad.h:
343         CONNECTED -> LINKED.
344
345 2005-06-28  Andy Wingo  <wingo@pobox.com>
346
347         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
348         source-munging commit!!!
349
350         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
351         (gst_object_sink): Take gpointer arguments, not GstObject --
352         avoids casts. Like GLib.
353
354         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
355         activate.
356
357 2005-06-27  Andy Wingo  <wingo@pobox.com>
358
359         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
360         remaining buffer.
361
362         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
363         returns a sorted copy of the trace list.
364         (gst_alloc_trace_print_live): New API, only prints traces with
365         live objects. Sort the list.
366         (gst_alloc_trace_print_all): Sort the list.
367         (gst_alloc_trace_print): Align columns.
368
369         * gst/elements/gstttypefindelement.c:
370         * gst/elements/gsttee.c:
371         * gst/base/gstbasesrc.c:
372         * gst/base/gstbasesink.c:
373         * gst/base/gstbasetransform.c:
374         * gst/gstqueue.c: Adapt for pad activation changes.
375
376         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
377         sched.
378         (gst_pipeline_dispose): Drop ref on sched.
379
380         * gst/gstpad.c (gst_pad_init): Set the default activate func.
381         (gst_pad_activate_default): Push mode by default.
382         (pre_activate_switch, post_activate_switch): New stubs, things to
383         do before and after switching activation modes on pads.
384         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
385         the pad's activate function to choose which mode to activate.
386         Shortcut on deactivation and call the right function directly.
387         (gst_pad_activate_pull): New API, (de)activates a pad in pull
388         mode.
389         (gst_pad_activate_push): New API, same for push mode.
390         (gst_pad_set_activate_function) 
391         (gst_pad_set_activatepull_function) 
392         (gst_pad_set_activatepush_function): Setters for new API.
393
394         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
395         Trace all miniobjects.
396         (gst_mini_object_make_writable): Unref the arg if we copy, like
397         gst_caps_make_writable.
398
399         * gst/gstmessage.c (_gst_message_initialize): No trace init.
400
401         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
402         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
403         Adapt for new pad API.
404
405         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
406
407         * gst/gstelement.h:
408         * gst/gstelement.c (gst_element_iterate_src_pads) 
409         (gst_element_iterate_sink_pads): New API functions.
410         
411         * gst/gstelement.c (iterator_fold_with_resync): New utility,
412         should fold into gstiterator.c in some form.
413         (gst_element_pads_activate): Simplified via use of fold and
414         delegation of decisions to gstpad->activate.
415
416         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
417         help in debugging.
418
419         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
420         class once in init, like gstmessage. Didn't run into this issue
421         but it seems correct. Don't initialize a trace, gstminiobject does
422         that.
423
424         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
425         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
426         to the bus.
427         (assert_live_count): New util function, uses alloc traces to check
428         cleanup.
429
430         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
431         To be modified when unlink drops the internal pad.
432
433 2005-06-27  Wim Taymans  <wim@fluendo.com>
434
435         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
436         (gst_bin_change_state):
437         Cleanup the get_state() function a little, make sure it
438         iterates the same set of elements.
439         Added stub iterate_state_order().
440
441 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
442
443         * docs/gst/gstreamer-docs.sgml:
444         * docs/gst/gstreamer-sections.txt:
445         * docs/gst/gstreamer.types:
446         * docs/gst/tmpl/gstbasesink.sgml:
447         * docs/gst/tmpl/gstbasesrc.sgml:
448         * docs/gst/tmpl/gstbasetransform.sgml:
449         * docs/gst/tmpl/gstelement.sgml:
450         * docs/gst/tmpl/gstiterator.sgml:
451         * gst/base/gstbasesrc.c:
452         * gst/base/gstbasesrc.h:
453         * gst/base/gstbasetransform.h:
454         * gst/gstelement.c:
455         * gst/gstiterator.h:
456           adding basetransform and iterator docs
457
458 2005-06-27  Andy Wingo  <wingo@pobox.com>
459
460         * docs/design/part-activation.txt: Notes on how activation should
461         work -- not quite implemented yet.
462
463 2005-06-25  Wim Taymans  <wim@fluendo.com>
464
465         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
466         At least get the chain function correct, needs more
467         fixing.
468
469 2005-06-25  Wim Taymans  <wim@fluendo.com>
470
471         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
472         (gst_basesink_handle_object), (gst_basesink_event),
473         (gst_basesink_do_sync), (gst_basesink_handle_event),
474         (gst_basesink_change_state):
475         * gst/gsttask.h:
476         Right, two problems here: ghostpads don't take locks and
477         glib _rec_mutex_lock_full() with depth==0 still locks.
478         Catch illegal locking and g_warn them.
479
480 2005-06-25  Wim Taymans  <wim@fluendo.com>
481
482         * check/states/sinks.c: (START_TEST), (gst_object_suite):
483         Have to check for completion now...
484
485 2005-06-25  Wim Taymans  <wim@fluendo.com>
486
487         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
488         (gst_basesink_handle_object), (gst_basesink_event),
489         (gst_basesink_do_sync), (gst_basesink_handle_event),
490         (gst_basesink_change_state):
491         * gst/gstpad.h:
492         Unlock STREAM_LOCK whatever the recursion was.
493
494 2005-06-25  Wim Taymans  <wim@fluendo.com>
495
496         * gst/base/gstbasesink.c: (gst_basesink_set_property),
497         (gst_basesink_preroll_queue_empty),
498         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
499         (gst_basesink_event), (gst_basesink_do_sync),
500         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
501         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
502         (gst_basesink_change_state):
503         Reworked the base sink, handle event and buffer serialisation
504         correctly and removed possible deadlock.
505         Handle EOS correctly.
506
507 2005-06-25  Wim Taymans  <wim@fluendo.com>
508
509         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
510         (gst_pipeline_change_state):
511         * tools/gst-launch.c: (check_intr), (event_loop), (main):
512         Allow elements to post EOS in the state change function.
513         Fix up -launch, make it exit the poll loop when the
514         pipeline actually changed state.
515         Fix up warning parsing in -launch.
516
517 2005-06-25  Wim Taymans  <wim@fluendo.com>
518
519         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
520         (gst_tee_sink_activate):
521         Core takes STREAM_LOCK for us now.
522
523 2005-06-25  Wim Taymans  <wim@fluendo.com>
524
525         * gst/gstelement.c: (gst_element_get_state_func),
526         (gst_element_set_state):
527         * gst/gstelement.h:
528         * gst/gstmessage.c: (gst_message_parse_error),
529         (gst_message_parse_warning):
530         Keep track of current target state while performing a state
531         change so that subclasses can do something interesting.
532         Fix parsing of warning/error messages when GError is NULL.
533
534 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
535
536         * docs/gst/Makefile.am:
537         * docs/gst/gstreamer-docs.sgml:
538         * docs/gst/gstreamer-sections.txt:
539         * docs/gst/gstreamer.types:
540         * docs/gst/tmpl/gstbasesink.sgml:
541         * docs/gst/tmpl/gstbasesrc.sgml:
542         * docs/gst/tmpl/gstbin.sgml:
543         * docs/gst/tmpl/gstcompat.sgml:
544         * docs/gst/tmpl/gstfakesink.sgml:
545         * docs/gst/tmpl/gstfakesrc.sgml:
546         * docs/gst/tmpl/gstfilesink.sgml:
547         * docs/gst/tmpl/gstfilesrc.sgml:
548         * docs/gst/tmpl/gstindex.sgml:
549         * docs/manual/appendix-quotes.xml:
550         * gst/base/gstbasesrc.h:
551         * gst/elements/gstfakesrc.h:
552         * gst/gstmessage.h:
553           start pulling in base classes and elements in our docs
554
555 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
556
557         * docs/gst/Makefile.am:
558         * docs/libs/Makefile.am:
559           fixed make distcheck with gtk-doc 1.3
560
561 2005-06-23  Wim Taymans  <wim@fluendo.com>
562
563         * gst/gstelement.c: (gst_element_get_state_func),
564         (gst_element_set_state), (gst_element_change_state):
565         When the state did not change, also report NO_PREROLL
566         when it matters.
567
568 2005-06-23  Wim Taymans  <wim@fluendo.com>
569
570         * gst/gstpad.c: (gst_pad_event_default):
571         * gst/gstqueue.c: (gst_queue_loop):
572         No unsafe task pausing please.
573
574 2005-06-23  Wim Taymans  <wim@fluendo.com>
575
576         * gst/schedulers/threadscheduler.c:
577         (gst_thread_scheduler_task_start),
578         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
579         Ref the task before pushing it on the threadpool. This
580         makes sure that we have a ref when the threadfunction is
581         actually called.
582
583 2005-06-23  Andy Wingo  <wingo@pobox.com>
584
585         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
586         offset is greater than the file's size.
587
588         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
589         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
590         * gst/gstobject.c (gst_object_class_init): Make the class lock
591         recursive. Wim won't let me drop deep_notify. Decodebin works
592         again, whoopdy doo.
593
594         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
595         internal pad, and hacks accordingly. Doesn't do it on the target
596         pad because we change its caps. Probably catches all cases of
597         interest tho.
598         (gst_ghost_pad_set_property): Connect to notify::caps as
599         appropritate.
600
601         * tests/network-clock.scm (plot-simulation): Pipe data to the
602         elite python skript.
603
604         * tests/network-clock-utils.scm (define-parameter): New macro,
605         defines a parameter that can be set via the command line.
606         (set-parameter!, parse-parameter-arguments): Command line args
607         parser.
608
609         * tests/plot-data: Simple matplotlib-based plotter, takes input on
610         stdin.
611
612 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
613
614         * gst/elements/gsttypefindelement.c:
615         (gst_type_find_element_handle_event):
616           Don't restart typefinding on a discont.
617         * gst/gstelement.c: (gst_element_set_state):
618           Debug spelling fix.
619         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
620           Allow changing mode of an active pad.
621           Debug output fixes.
622         * gst/registries/gstlibxmlregistry.c: (load_feature):
623           Don't cast a static pad template to a normal pad template.
624
625 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
626
627         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
628         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
629           remove gst_strtoll completely, since it didn't actually do
630           anything more than what g_ascii_strtoull already does.
631           check for range errors when deserializing
632           do a cast for the unsigned cases; but further fixing needs
633           a decision on what the interpretation of "(int)" and
634           deserialization should be for values that fall outside the
635           type's boundaries (ie, refuse, or interpret as casting)
636
637 2005-06-23  Wim Taymans  <wim@fluendo.com>
638
639         * check/Makefile.am:
640         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
641         * docs/design/part-live-source.txt:
642         * docs/design/part-states.txt:
643         * gst/base/gstbasesrc.c: (gst_basesrc_init),
644         (gst_basesrc_set_live), (gst_basesrc_is_live),
645         (gst_basesrc_get_range), (gst_basesrc_activate),
646         (gst_basesrc_change_state):
647         * gst/base/gstbasesrc.h:
648         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
649         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
650         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
651         * gst/gstelement.c: (gst_element_get_state_func),
652         (gst_element_set_state):
653         * gst/gstelement.h:
654         * gst/gsttypes.h:
655         * tools/gst-launch.c: (event_loop), (main):
656         Added support for live sources and other elements that
657         cannot do preroll.
658         Updated design docs, added live-source design doc.
659         Implemented live source functionality in basesrc
660         Fix error condition in _bin_get_state()
661         Implement live source handling in -launch.
662         Added check for live sources.
663         Fixed case in GstBin where elements were changed state
664         multiple times.
665
666
667 2005-06-23  Andy Wingo  <wingo@pobox.com>
668
669         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
670         borken refcounting.
671
672         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
673         gst_caps_replace takes care of this for us.
674
675         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
676         gst_pad_set_caps on the target, not just its setcaps() function.
677
678         * tests/network-clock.scm: 
679         * tests/network-clock-utils.scm: A network clock simulator.
680         Something of an algorithmic testbed before doing something in C.
681
682 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
683
684         * check/Makefile.am:
685         * check/gst/capslist.h:
686           copy over from 0.8, and add two with bitmasks specified with
687           (int) 0xFF...
688         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
689           add test to parse everything from capslist.h
690         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
691         (main):
692           add test for structure deserialization
693         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
694           add tests for deserialization of strings to int types
695         * gst/gststructure.c: (gst_structure_nth_field_name):
696         * gst/gststructure.h:
697           add a way to get the name of a field referenced by index
698         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
699           instead of checking if the resulting long long lies between
700           min and max, we check if the long long would fit into
701           a number of bytes for the final type.
702           This fixes cases where a string represents 2^32 - 1, which
703           when cast to int would be the (valid) -1, but is bigger than
704           G_MAXINT
705
706 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
707
708         * gst/parse/grammar.y:
709           add a log line for type deserialization
710
711 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
712
713         * check/gst/gstvalue.c: (START_TEST):
714         * gst/gstvalue.c: (gst_value_deserialize):
715           return long long, not int, so gint64 deserialization actually
716           works.  Is there any flag that makes the compiler check this ?
717           Fixes #308559
718
719 2005-06-22  Wim Taymans  <wim@fluendo.com>
720
721         * gst/gstbuffer.h:
722         Added convenience macros for setting buffers in GValue.
723
724 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
725
726         * check/gst/.cvsignore:
727         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
728           add a test deserializing int64, and comment part out because
729           it fails, yay !
730
731 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
732
733         * check/Makefile.am:
734         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
735         * testsuite/Makefile.am:
736         * testsuite/caps/Makefile.am:
737         * testsuite/caps/value_serialize.c:
738         * testsuite/test_gst_init.c:
739           move a value_serialize test over
740
741 2005-06-20  Wim Taymans  <wim@fluendo.com>
742
743         * gst/gstpad.c:
744         Small doc updates.
745         
746         * gst/gstvalue.c: (gst_value_compare_buffer),
747         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
748         (gst_value_compare_flags), (gst_value_serialize_flags),
749         (gst_value_deserialize_flags), (_gst_value_initialize):
750         Fix serialisation of buffers, they are not boxed types anymore
751
752 2005-06-20  Wim Taymans  <wim@fluendo.com>
753
754         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
755         Testcase to show error in buffer-on-caps serialisation.
756
757 2005-06-20  Andy Wingo  <wingo@pobox.com>
758
759         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
760         will be adding to later.
761
762         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
763         if its socks fill with rocks.
764         (gst_system_clock_obtain): Set the name on object construction.
765         Avoid double-checked locking.
766
767 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
768
769         * gst/gsturi.c: (gst_element_make_from_uri):
770           Fix potential endless loop.
771
772 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
773
774         * check/Makefile.am:
775           add gsttag
776         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
777         (main):
778           move over from testsuite dir and clean up
779         * configure.ac:
780         * gst/gsttag.c:
781         * testsuite/Makefile.am:
782         * testsuite/tags/.cvsignore:
783         * testsuite/tags/Makefile.am:
784         * testsuite/tags/merge.c:
785           remove testsuite/tags
786
787 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
788
789         * docs/gst/gstreamer-sections.txt:
790         * docs/gst/tmpl/gstenumtypes.sgml:
791         * win32/gstenumtypes.c:
792           clean up documentation build a little
793
794 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
795
796         * check/gstcheck.h:
797           add macros for checking refcounts on objects and caps
798         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
799           add some more unit tests
800         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
801         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
802           fix leaked refcounts (I hope :)) so unittest works
803         * gst/gstpad.h:
804           whitespace removal
805
806 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
807
808         * configure.ac: back to HEAD
809
810 === release 0.9.1 ===
811
812 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
813
814         * NEWS:
815         * RELEASE:
816           updated
817
818 2005-06-17  Andy Wingo  <wingo@pobox.com>
819
820         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
821         assert; it's always possible that the pad gets deactivated in
822         between the checks in gstpad.c and the implementation. Rely on
823         finish_preroll() to return a FLUSHING or similar instead of on the
824         assert.
825         
826         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
827         clock and post an EOS message if we come out of finish_preroll in
828         the playing state.
829
830 2005-06-16  David Schleef  <ds@schleef.org>
831
832         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
833         (gst_capsfilter_set_property): Allow NULL as possible value
834         for filter_caps property, indicating GST_CAPS_ANY.
835
836 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
837
838         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
839           fix debug output
840         * gst/schedulers/Makefile.am:
841           use libgst prefix
842         * gstreamer.spec.in:
843           fix spec for it
844
845 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
846
847         * gstreamer.spec.in:
848           clean up
849
850 2005-06-08  Andy Wingo  <wingo@pobox.com>
851
852         * gst/gstutils.c: RPAD fixes all around.
853         (gst_element_link_pads): Refcounting fixes.
854
855         * tools/gst-inspect.c:
856         * tools/gst-xmlinspect.c:
857         * parse/grammar.y:
858         * gst/base/gsttypefindhelper.c:
859         * gst/base/gstbasesink.c:
860         * gst/gstqueue.c: RPAD fixes.
861
862         * gst/gstghostpad.h:
863         * gst/gstghostpad.c: New ghost pad implementation as full proxy
864         pads. The tricky thing is they provide both source and sink
865         interfaces, since they proxy the internal pad for the external
866         pad, and vice versa. Implement with lower-level ProxyPad objects,
867         with the interior proxy pad as a child of the exterior ghost pad.
868         Should write a doc on this.
869         
870         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
871         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
872         gst_object API.
873         
874         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
875         pads are real pads. No ghost pads in this file. Not documenting
876         the myriad s/RPAD/PAD/ and REALIZE fixes.
877         (gst_pad_class_init): Add properties for "direction" and
878         "template". Both are construct-only, so they can't change during
879         the life of the pad. Fixes properly deriving from GstPad.
880         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
881         derived objects, just set properties when creating the objects via
882         g_object_new.
883         (gst_pad_get_parent): Implement as a function, return NULL if the
884         parent is not an element.
885         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
886         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
887         
888         * gst/gstobject.c (gst_object_class_init): Make name a construct
889         property. Don't set it in the object init.
890
891         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
892         with UNKNOWN direction.
893         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
894         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
895         (gst_element_remove_pad): Remove ghost-pad special cases.
896         (gst_element_pads_activate): Remove rpad cruft.
897
898         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
899         catch the pad's-parent-not-an-element case.
900
901         * gst/gst.h: Include gstghostpad.h.
902
903         * gst/gst.c (init_post): No more real, ghost pads.
904
905         * gst/Makefile.am: Add gstghostpad.[ch].
906
907         * check/Makefile.am:
908         * check/gst/gstbin.c:
909         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
910         into a bin creates ghost pads, and that the refcounts are right.
911         Partly moved from gstbin.c.
912
913 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
914
915         * check/gst-libs/.cvsignore:
916         * check/gst/.cvsignore:
917         * check/pipelines/.cvsignore:
918           ignore more
919         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
920         (START_TEST), (cleanup_suite), (main):
921           add some tests related to cleanup after running pipelines
922
923 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
924
925         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
926           add a testsuite for GstBuffer
927
928 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
929
930         * gst/gstminiobject.h:
931           add defines for accessing the refcount
932
933 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
934
935         * Makefile.am: added support for html unit test coverage reports
936
937 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
938
939         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
940           Free existing caps if the capsfilter changes. Add a FIXME about
941           setting those caps on the pads.
942
943         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
944           Before adding a ghost pad to a parent bin, check that there isn't
945           already one for the element on the bin. Prevents infinite recursion
946           when using decodebin in parse pipelines. Andy says he'll rewrite the
947           way this works anyway, so ignore the hack.
948
949 2005-06-02  Andy Wingo  <wingo@pobox.com>
950
951         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
952         file size, pass it on to the type find helper.
953
954         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
955         segment_start and segment_end properly according to the seek
956         method. Segment_end is still a bit flaky because offset can be
957         negative for CUR and END cases, but it takes -1 as an "unset"
958         value.
959
960 2005-06-02  Wim Taymans  <wim@fluendo.com>
961
962         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
963         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
964         (gst_basesink_activate):
965         * gst/base/gstbasesink.h:
966         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
967         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
968         (gst_pad_query), (gst_pad_start_task):
969         * gst/gstpad.h:
970         * gst/gstqueue.c: (gst_queue_bufferalloc),
971         (gst_queue_handle_sink_event), (gst_queue_chain):
972         Bufferalloc: return GstFlowReturn to more accuratly report
973         why allocation failed.
974
975 2005-06-02  Wim Taymans  <wim@fluendo.com>
976
977         * gst/gstpipeline.c: (gst_pipeline_send_event):
978         Take snapshot of state without blocking.
979
980 2005-06-02  Wim Taymans  <wim@fluendo.com>
981
982         * docs/design/part-TODO.txt:
983         * docs/design/part-caps.txt:
984         * docs/design/part-clocks.txt:
985         * docs/design/part-negotiation.txt:
986         * docs/design/part-preroll.txt:
987         Small doc updates 
988
989 2005-05-30  Wim Taymans  <wim@fluendo.com>
990
991         * gst/elements/gstidentity.c: (gst_identity_event),
992         (gst_identity_transform), (gst_identity_get_property):
993         Protect last_message property as it is accessed from
994         multiple threads.
995
996 2005-05-30  Wim Taymans  <wim@fluendo.com>
997
998         * gst/gstelement.c: (gst_element_init),
999         (gst_element_pads_activate), (gst_element_change_state):
1000         Slicker pad activation code.
1001
1002 2005-05-30  Wim Taymans  <wim@fluendo.com>
1003
1004         * gst/Makefile.am:
1005         * gst/gstelement.h:
1006         * gst/gstelementfactory.h:
1007         * gst/gsttypes.h:
1008         Move elementfactory methods to separate .h file.
1009
1010 2005-05-30  Wim Taymans  <wim@fluendo.com>
1011
1012         * docs/design/part-overview.txt:
1013         * gst/gstsystemclock.h:
1014         Small typo fixes, doc updates.
1015
1016 2005-05-30  Wim Taymans  <wim@fluendo.com>
1017
1018         * gst/gst.c: (gst_init_get_popt_table), (init_post),
1019         (init_popt_callback):
1020         Remove cpu-opt flag.
1021
1022 2005-05-30  Wim Taymans  <wim@fluendo.com>
1023
1024         * gst/gstbuffer.c: (gst_subbuffer_finalize),
1025         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
1026         * gst/gstbuffer.h:
1027         Avoid typechecking in places where not needed.
1028         Added accessor for malloc_data.
1029
1030 2005-05-30  Wim Taymans  <wim@fluendo.com>
1031
1032         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
1033         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
1034         (gst_pad_configure_sink), (gst_pad_configure_src),
1035         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
1036         (gst_pad_start_task):
1037         Propagate errors from _set_caps() in configure_src/sink
1038         functions instead of returning TRUE.
1039         FLUSH events can travel up and downstream
1040
1041
1042 2005-05-30  Wim Taymans  <wim@fluendo.com>
1043
1044         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
1045         (gst_basesink_activate):
1046         Handle EOS in preroll.
1047
1048 2005-05-30  Wim Taymans  <wim@fluendo.com>
1049
1050         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
1051         (gst_queue_loop), (gst_queue_handle_src_event):
1052         Remove old pieces of code
1053         Flushing the queue in an upstream event is a very bad idea.
1054
1055 2005-05-26  Andy Wingo  <wingo@pobox.com>
1056
1057         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
1058         gst_value_set_mini_object so as to add a ref on the object (which
1059         will be removed when the value is unset).
1060
1061         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
1062         arg type in ::handoff.
1063
1064         * gst/gstelement.c (gst_element_change_state): Also deactivate
1065         pads in READY->NULL, just in case the element didn't make it to
1066         PAUSED. Wingo tested, Wim approved.
1067
1068 2005-05-26  Wim Taymans  <wim@fluendo.com>
1069
1070         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1071         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
1072         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
1073         A flushing pad cannot be used to alloc_buffer from.
1074
1075 2005-05-26  Wim Taymans  <wim@fluendo.com>
1076
1077         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
1078         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
1079         (gst_bus_source_dispatch), (gst_bus_source_finalize),
1080         (gst_bus_create_watch), (gst_bus_add_watch_full):
1081         * gst/gstbus.h:
1082         Implement a real GSource and use g_main_context_wakeup() to
1083         signal new messages instead of the socketpair.
1084
1085 2005-05-25  Wim Taymans  <wim@fluendo.com>
1086
1087         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
1088         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
1089         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1090         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
1091         (gst_pad_send_event), (gst_pad_start_task):
1092         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
1093         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
1094         (gst_queue_sink_activate), (gst_queue_src_activate),
1095         (gst_queue_change_state):
1096         * gst/gstqueue.h:
1097         Fix state changes for non sinks. We now change sinks, then elements
1098         with unconnected srcpads, then the rest.
1099         More efficient queue unlocking in flush and state changes.
1100         Set the pad activate mode even if it does not have an activate
1101         function.
1102
1103 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1104
1105         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
1106           Don't go in pull mode for non-seekable sources.
1107         * gst/elements/gsttypefindelement.h:
1108         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
1109         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
1110         (free_entry), (stop_typefinding),
1111         (gst_type_find_element_handle_event), (find_peek),
1112         (gst_type_find_element_chain), (do_pull_typefind),
1113         (gst_type_find_element_change_state):
1114           Allow typefinding (w/o seeking) in push-mode, simplified version
1115           of what was in 0.8.
1116         * gst/gstutils.c: (gst_buffer_join):
1117         * gst/gstutils.h:
1118           gst_buffer_join() from 0.8.
1119
1120 2005-05-25  Wim Taymans  <wim@fluendo.com>
1121
1122         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1123         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
1124         (gst_pad_send_event), (gst_pad_start_task):
1125         Disable attempt at mode switching until it is figured out.
1126
1127 2005-05-25  Wim Taymans  <wim@fluendo.com>
1128
1129         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
1130         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
1131         (gst_basesink_finish_preroll), (gst_basesink_chain),
1132         (gst_basesink_loop), (gst_basesink_activate),
1133         (gst_basesink_change_state):
1134         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
1135         (gst_basesrc_get_range), (gst_basesrc_loop),
1136         (gst_basesrc_activate):
1137         * gst/elements/gsttee.c: (gst_tee_sink_activate):
1138         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
1139         (gst_real_pad_init), (gst_real_pad_set_property),
1140         (gst_real_pad_get_property), (gst_pad_set_active),
1141         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
1142         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
1143         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
1144         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
1145         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1146         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
1147         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
1148         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1149         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
1150         (gst_pad_stop_task):
1151         * gst/gstpad.h:
1152         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
1153         (gst_queue_loop), (gst_queue_src_activate):
1154         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
1155         (gst_task_get_state):
1156         * gst/gsttask.h:
1157         * gst/schedulers/threadscheduler.c:
1158         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
1159         Implement gst_pad_pause/start/stop_task(), take STREAM lock
1160         in task function.
1161         Remove ACTIVE pad flag, use FLUSHING everywhere
1162         Added _pad_chain(), _pad_get_range() to call chain/getrange 
1163         functions.
1164         Add locks around IS_FLUSHING when reading.
1165         Take STREAM lock in chain(), get_range() functions so plugins
1166         don't need to take it anymore.
1167         
1168
1169
1170 2005-05-25  Wim Taymans  <wim@fluendo.com>
1171
1172         * tools/gst-launch.c: (event_loop):
1173         Unref message after using its contents instead of
1174         before.
1175
1176 2005-05-24  Wim Taymans  <wim@fluendo.com>
1177
1178         * docs/design/draft-ghostpads.txt:
1179         * docs/design/draft-push-pull.txt:
1180         * docs/design/draft-query.txt:
1181         * docs/design/part-overview.txt:
1182         Docs updates, added general overview doc.
1183
1184 2005-05-21  David Schleef  <ds@schleef.org>
1185
1186         * docs/gst/tmpl/old/GstBin.sgml:
1187         * docs/gst/tmpl/old/GstBuffer.sgml:
1188         * docs/gst/tmpl/old/GstCaps.sgml:
1189         * docs/gst/tmpl/old/GstClock.sgml:
1190         * docs/gst/tmpl/old/GstCompat.sgml:
1191         * docs/gst/tmpl/old/GstData.sgml:
1192         * docs/gst/tmpl/old/GstElement.sgml:
1193         * docs/gst/tmpl/old/GstEvent.sgml:
1194         * docs/gst/tmpl/old/GstIndex.sgml:
1195         * docs/gst/tmpl/old/GstStructure.sgml:
1196         * docs/gst/tmpl/old/GstTag.sgml:
1197         * docs/gst/tmpl/old/cothreads.sgml:
1198         * docs/gst/tmpl/old/cothreads_compat.sgml:
1199         * docs/gst/tmpl/old/gettext.sgml:
1200         * docs/gst/tmpl/old/gobject2gtk.sgml:
1201         * docs/gst/tmpl/old/grammar.tab.sgml:
1202         * docs/gst/tmpl/old/gst-i18n-app.sgml:
1203         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
1204         * docs/gst/tmpl/old/gst_private.sgml:
1205         * docs/gst/tmpl/old/gstaggregator.sgml:
1206         * docs/gst/tmpl/old/gstarch.sgml:
1207         * docs/gst/tmpl/old/gstatomic_impl.sgml:
1208         * docs/gst/tmpl/old/gstbufferstore.sgml:
1209         * docs/gst/tmpl/old/gstdata_private.sgml:
1210         * docs/gst/tmpl/old/gstdisksink.sgml:
1211         * docs/gst/tmpl/old/gstdisksrc.sgml:
1212         * docs/gst/tmpl/old/gstelementfactory.sgml:
1213         * docs/gst/tmpl/old/gstextratypes.sgml:
1214         * docs/gst/tmpl/old/gstfakesink.sgml:
1215         * docs/gst/tmpl/old/gstfakesrc.sgml:
1216         * docs/gst/tmpl/old/gstfdsink.sgml:
1217         * docs/gst/tmpl/old/gstfdsrc.sgml:
1218         * docs/gst/tmpl/old/gstfilesink.sgml:
1219         * docs/gst/tmpl/old/gstfilesrc.sgml:
1220         * docs/gst/tmpl/old/gsthttpsrc.sgml:
1221         * docs/gst/tmpl/old/gstidentity.sgml:
1222         * docs/gst/tmpl/old/gstindexfactory.sgml:
1223         * docs/gst/tmpl/old/gstmarshal.sgml:
1224         * docs/gst/tmpl/old/gstmd5sink.sgml:
1225         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
1226         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
1227         * docs/gst/tmpl/old/gstpadtemplate.sgml:
1228         * docs/gst/tmpl/old/gstpipefilter.sgml:
1229         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
1230         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
1231         * docs/gst/tmpl/old/gstshaper.sgml:
1232         * docs/gst/tmpl/old/gstspider.sgml:
1233         * docs/gst/tmpl/old/gstspideridentity.sgml:
1234         * docs/gst/tmpl/old/gststatistics.sgml:
1235         * docs/gst/tmpl/old/gsttee.sgml:
1236         * docs/gst/tmpl/old/gsttimecache.sgml:
1237         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
1238         * docs/gst/tmpl/old/gstxmlregistry.sgml:
1239         * docs/gst/tmpl/old/gthread-cothreads.sgml:
1240         * docs/gst/tmpl/old/types.sgml:
1241           I didn't intend to add these or check them in.
1242
1243 2005-05-19  David Schleef  <ds@schleef.org>
1244
1245         * configure.ac: Use -no-common everywhere.  In a sane world, it
1246           would be the default in libtool, because without it, you can't
1247           build DLLs on Windows.
1248         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
1249         * docs/gst/gstreamer-sections.txt:
1250         * docs/gst/tmpl/gstcpu.sgml:
1251         * docs/gst/tmpl/gstdata.sgml:
1252         * docs/gst/tmpl/gstthread.sgml:
1253
1254 2005-05-19  David Schleef  <ds@schleef.org>
1255
1256         * gst/gstminiobject.c: (gst_value_set_mini_object),
1257         (gst_value_take_mini_object), (gst_value_get_mini_object):
1258         * gst/gstminiobject.h: Add GValue set/get functions.
1259
1260 2005-05-19  Wim Taymans  <wim@fluendo.com>
1261
1262         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
1263         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
1264         (gst_subbuffer_init), (gst_buffer_is_span_fast):
1265         * gst/gstbuffer.h:
1266         * gst/gstbus.c: (gst_bus_post):
1267         * gst/gstelement.c: (gst_element_get_random_pad):
1268         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
1269         Make subbufer unref the parent in finalize.
1270         some more debugging info.
1271
1272
1273 2005-05-19  Wim Taymans  <wim@fluendo.com>
1274
1275         * gst/base/gstbasesink.c: (gst_basesink_class_init),
1276         (gst_basesink_init), (gst_basesink_finalize),
1277         (gst_basesink_activate), (gst_basesink_change_state):
1278         Don't free preroll queue too early.
1279
1280 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1281
1282         * gst/Makefile.am:
1283         * gst/ROADMAP:
1284           Hi, I'm outdated. Please shoot me.
1285
1286 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1287
1288         * gst/gstpipeline.c: (gst_pipeline_send_event):
1289           Do not access variables after they have been deleted.
1290
1291 2005-05-19  Wim Taymans  <wim@fluendo.com>
1292
1293         * tools/gst-inspect.c: (print_plugin_features):
1294         A plugin feature does unfortunatly not use the
1295         object name yet...
1296
1297 2005-05-18  Wim Taymans  <wim@fluendo.com>
1298
1299         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
1300         Port _span() functions to new subbuffers.
1301
1302 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1303
1304         * gst/gstbin.c: (gst_bin_add_func):
1305           Fix clock settery in bins when adding kids after the clock has
1306           been selected.
1307
1308 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1309
1310         * gst/elements/gstidentity.c: (gst_identity_class_init):
1311           Workaround until signals support GstMiniObject.
1312
1313 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
1314
1315         * gst/gstbuffer.c:
1316         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
1317
1318 2005-05-18  Wim Taymans  <wim@fluendo.com>
1319
1320         * gst/base/Makefile.am:
1321         * gst/base/gstadapter.c: (gst_adapter_base_init),
1322         (gst_adapter_class_init), (gst_adapter_init),
1323         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
1324         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
1325         (gst_adapter_flush), (gst_adapter_available),
1326         (gst_adapter_available_fast):
1327         * gst/base/gstadapter.h:
1328         Ported and added adapter to the base classes.
1329
1330 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1331
1332         * gst/gst.c:
1333         * gst/gstmessage.c:
1334           Make sure the class is reffed/unreffed once before threads can be
1335           used.  Fixes #304551.
1336
1337 2005-05-17  Wim Taymans  <wim@fluendo.com>
1338
1339         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
1340         (gst_basesink_chain_unlocked), (gst_basesink_activate):
1341         * gst/gstminiobject.c: (gst_mini_object_get_type),
1342         (gst_mini_object_free):
1343         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
1344         (gst_pad_push), (gst_pad_push_event):
1345         * gst/gstqueue.c: (gst_queue_change_state):
1346         Don't queue buffers in basesink when we are flushing.
1347         Unref buffer when flushing in basesink.
1348         Flush queue when going to READY
1349         Unref buffer when _push() returns an error.
1350         Don't free MiniObject instance when refcount is incremented
1351         in _finalize() so that we can recover objects.
1352
1353 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1354
1355         * docs/manual/advanced-schedulers.xml:
1356         * docs/manual/appendix-checklist.xml:
1357         * docs/pwg/advanced-clock.xml:
1358         * docs/pwg/advanced-interfaces.xml:
1359         * docs/pwg/advanced-request.xml:
1360         * docs/pwg/advanced-types.xml:
1361         * docs/pwg/intro-preface.xml:
1362         * examples/plugins/example.c: (gst_example_get_type),
1363         (gst_example_class_init), (gst_example_chain),
1364         (gst_example_set_property), (gst_example_get_property),
1365         (gst_example_change_state), (plugin_init):
1366         * examples/plugins/example.h:
1367           small doc fixes
1368
1369 2005-05-17  Wim Taymans  <wim@fluendo.com>
1370
1371         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
1372         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
1373         * gst/gstqueue.c: (gst_queue_change_state):
1374         Clear queue when going to READY.
1375         Remove IN_SETCAPS flag too.
1376
1377 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
1378
1379         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
1380           Remove implicit cast from gboolean to GstElementStateReturn;
1381           make sure we still return failure in paused => ready case if
1382           the parent class fails to change state and our own stop 
1383           vfunc succeeds.
1384
1385 2005-05-17  Wim Taymans  <wim@fluendo.com>
1386
1387         * tools/gst-launch.c: (event_loop):
1388         Message was unreffed too soon.
1389
1390 2005-05-16  Andy Wingo  <wingo@pobox.com>
1391
1392         * gst/gstbin.c (sink_iterator_filter): Err... um...
1393
1394         * check/gst/gstbin.c (test_ghost_pads): New test for the
1395         ghosting-if-elements-not-in-same-bin behavior.
1396
1397 2005-05-16  David Schleef  <ds@schleef.org>
1398
1399         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
1400         accessing refcount directly.
1401
1402 2005-05-15  David Schleef  <ds@schleef.org>
1403
1404         * check/Makefile.am: remove GstData checks
1405         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
1406         * gst/Makefile.am: add miniobject, remove data
1407         * gst/gst.h: add miniobject, remove data
1408         * gst/gstdata.c: remove
1409         * gst/gstdata.h: remove
1410         * gst/gstdata_private.h: remove
1411         * gst/gsttypes.h: remove GstEvent and GstMessage
1412         * gst/gstelement.c: (gst_element_post_message): fix for API changes
1413         * gst/gstmarshal.list: change BOXED -> OBJECT
1414
1415         Implement GstMiniObject.
1416         * gst/gstminiobject.c:
1417         * gst/gstminiobject.h:
1418
1419         Modify to be subclasses of GstMiniObject.
1420         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
1421         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
1422         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
1423         (gst_subbuffer_get_type), (gst_subbuffer_init),
1424         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
1425         (gst_buffer_span):
1426         * gst/gstbuffer.h:
1427         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
1428         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
1429         (_gst_event_copy), (gst_event_new):
1430         * gst/gstevent.h:
1431         * gst/gstmessage.c: (_gst_message_initialize),
1432         (gst_message_get_type), (gst_message_class_init),
1433         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
1434         (gst_message_new), (gst_message_new_error),
1435         (gst_message_new_warning), (gst_message_new_tag),
1436         (gst_message_new_state_changed), (gst_message_new_application):
1437         * gst/gstmessage.h:
1438         * gst/gstprobe.c: (gst_probe_perform),
1439         (gst_probe_dispatcher_dispatch):
1440         * gst/gstprobe.h:
1441         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
1442         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
1443         (_gst_query_copy), (gst_query_new):
1444
1445         Update elements for GstData -> GstMiniObject changes
1446         * gst/gstquery.h:
1447         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
1448         (gst_queue_chain), (gst_queue_loop):
1449         * gst/elements/gstbufferstore.c:
1450         (gst_buffer_store_add_buffer_func),
1451         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
1452         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1453         (gst_fakesink_render):
1454         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
1455         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
1456         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
1457         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
1458         (gst_filesrc_create_read):
1459         * gst/elements/gstidentity.c: (gst_identity_class_init):
1460         * gst/elements/gsttypefindelement.c:
1461         (gst_type_find_element_src_event), (free_entry_buffers),
1462         (gst_type_find_element_handle_event):
1463         * libs/gst/dataprotocol/dataprotocol.c:
1464         (gst_dp_header_from_buffer):
1465         * libs/gst/dataprotocol/dataprotocol.h:
1466         * libs/gst/dataprotocol/dp-private.h:
1467
1468 2005-05-15  David Schleef  <ds@schleef.org>
1469
1470         * gst/elements/gstelements.c: Don't include headers that were
1471         just removed.
1472
1473 2005-05-15  David Schleef  <ds@schleef.org>
1474
1475         * gst/elements/Makefile.am: Remove some elements that don't
1476         need to be in the core (or even exist at all).
1477         * gst/elements/gstaggregator.c:
1478         * gst/elements/gstaggregator.h:
1479         * gst/elements/gstmd5sink.c:
1480         * gst/elements/gstmd5sink.h:
1481         * gst/elements/gstmultifilesrc.c:
1482         * gst/elements/gstmultifilesrc.h:
1483         * gst/elements/gstpipefilter.c:
1484         * gst/elements/gstpipefilter.h:
1485         * gst/elements/gstshaper.c:
1486         * gst/elements/gstshaper.h:
1487         * gst/elements/gststatistics.c:
1488         * gst/elements/gststatistics.h:
1489         * po/POTFILES.in: Remove above files.
1490
1491 2005-05-14  Andy Wingo  <wingo@pobox.com>
1492
1493         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
1494         so as to get the refs right.
1495         (sink_iterator_filter): New function, wraps bin_element_is_sink,
1496         unreffing objects that don't pass the filter.
1497
1498         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
1499         gst_element_set_bus.
1500         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
1501         normal cases, this will destroy the bus.
1502
1503         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
1504         object.
1505
1506         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
1507         has no sinks.
1508
1509 2005-05-13  Andy Wingo  <wingo@pobox.com>
1510
1511         * gst/gstutils.c (gst_element_link_pads): Instead of calling
1512         gst_pad_link, call pad_link_maybe_ghosting,
1513         (pad_link_maybe_ghosting): Links pads, making sure that the
1514         elements being linked are in the same bin.
1515         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
1516         Helpers for pad_link_maybe_ghosting.
1517
1518 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
1519
1520         * configure.ac:
1521           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
1522
1523 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
1524
1525         * docs/design/part-element-source.txt:
1526           Mention GstPushSrc
1527
1528 2005-05-12  Wim Taymans  <wim@fluendo.com>
1529
1530         * gst/base/gstbasesink.c: (gst_basesink_init),
1531         (gst_basesink_activate):
1532         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
1533         (gst_basesrc_is_seekable):
1534         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
1535         (bin_element_is_sink), (gst_bin_change_state):
1536         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
1537         * gst/gstelement.h:
1538         Identify sinks by their flag to avoid overly complicated
1539         checks (fow now).
1540         Do state changes even for elements not reachable from the
1541         sinks.
1542         BaseSink is a sink now :)
1543         Some more debugging info in the basesrc.
1544
1545
1546 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1547
1548         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
1549           Implement _query on a bin, similar to _send_event.
1550
1551 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
1552
1553         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
1554           Discont event offset format should be GST_FORMAT_BYTES,
1555           not GST_FORMAT_TIME.
1556
1557 2005-05-12  Wim Taymans  <wim@fluendo.com>
1558
1559         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
1560         Same fix as Ronald's but without the signal. 
1561
1562 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1563
1564         * gst/gstutils.c: (gst_element_query_position):
1565           No, an element is not a pad.
1566
1567 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1568
1569         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
1570         (gst_bin_get_state):
1571           If a child is removed from a bin while we remove the child from
1572           the bin and while we're retrieving its state, signal this to the
1573           get_state function so we abort the wait (instead of waiting for
1574           a timeout) and can immediately re-iterate over all other elements.
1575
1576 2005-05-12  Wim Taymans  <wim@fluendo.com>
1577
1578         * gst/base/Makefile.am:
1579         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
1580         (gst_basesrc_start):
1581         * gst/base/gstbasesrc.h:
1582         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
1583         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
1584         (gst_pushsrc_init), (gst_pushsrc_create):
1585         * gst/base/gstpushsrc.h:
1586         Added is_seekable to BaseSrc
1587         Added simple PushSrc.
1588
1589 2005-05-11  Wim Taymans  <wim@fluendo.com>
1590
1591         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
1592         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1593         (gst_element_link_pads), (gst_element_query_position),
1594         (gst_element_query_convert), (intersect_caps_func),
1595         (gst_pad_query_position), (gst_pad_query_convert):
1596         Fix refcounting in utils function.
1597         No point in trying to activate a pad when it's added, it could
1598         be added from the state change function and then we deadlock, the
1599         element has to decide what to do.
1600
1601 2005-05-10  Andy Wingo  <wingo@pobox.com>
1602
1603         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
1604         *all* the arguments.
1605
1606         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
1607         stream lock if it's a FLUSH_DONE; normal flushes don't get the
1608         lock (according to the docs -- if this is wrong change the docs).
1609
1610         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
1611         flush messages in the NULL state.
1612
1613         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
1614         message immediately and return.
1615         (gst_bus_set_flushing): New function. If a bus is flushing, it
1616         flushes out any queued messages and immediately unrefs new
1617         messages. This is so when an element goes to NULL, all of the
1618         unhandled messages coming from it can be freed, and their
1619         references to the element dropped. In other words: message source
1620         ref considered harmful :P
1621
1622         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
1623         we're finished with it.
1624
1625         * gst/gstmessage.c (gst_message_new_state_changed): 
1626
1627 2005-05-10  Wim Taymans  <wim@fluendo.com>
1628
1629         * gst/gstvalue.c: (gst_value_compare_flags),
1630         (gst_value_serialize_flags), (gst_value_deserialize_flags),
1631         (_gst_value_initialize):
1632         Added flags serialize/deserialize/compare code.
1633
1634 2005-05-09  Andy Wingo  <wingo@pobox.com>
1635
1636         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
1637         Intersect the peer's caps with our caps.
1638
1639 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1640
1641         * gst/base/gsttypefindhelper.c: (helper_find_peek):
1642         * gst/elements/gsttypefindelement.c: (find_peek):
1643           Handle negative offsets better. Fixes decodebin.
1644
1645 2005-05-09  Wim Taymans  <wim@fluendo.com>
1646
1647         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
1648         (gst_base_transform_event):
1649         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
1650         Implement accept_caps.
1651         Fix silly lock/unlock mismatch in base class.
1652
1653 2005-05-09  Wim Taymans  <wim@fluendo.com>
1654
1655         * docs/design/draft-push-pull.txt:
1656         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
1657         * gst/elements/gstfilesink.c: (gst_filesink_init),
1658         (gst_filesink_query):
1659         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
1660         (gst_type_find_handle_src_query), (find_element_get_length):
1661         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
1662         * gst/gstelement.h:
1663         * gst/gstmessage.c:
1664         * gst/gstmessage.h:
1665         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
1666         (gst_real_pad_get_caps_unlocked),
1667         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
1668         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1669         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
1670         (gst_real_pad_dispose), (gst_real_pad_finalize),
1671         (gst_pad_load_and_link), (gst_pad_save_thyself),
1672         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
1673         (gst_pad_check_pull_range), (gst_pad_pull_range),
1674         (gst_pad_template_get_type), (gst_pad_template_class_init),
1675         (gst_pad_template_init), (gst_pad_template_dispose),
1676         (name_is_valid), (gst_static_pad_template_get),
1677         (gst_pad_template_new), (gst_static_pad_template_get_caps),
1678         (gst_pad_template_get_caps), (gst_pad_set_element_private),
1679         (gst_pad_get_element_private), (gst_pad_start_task),
1680         (gst_pad_pause_task), (gst_pad_stop_task),
1681         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
1682         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
1683         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
1684         (gst_ghost_pad_new):
1685         * gst/gstpad.h:
1686         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
1687         (gst_query_new_position), (gst_query_set_position),
1688         (gst_query_parse_position), (gst_query_new_convert),
1689         (gst_query_set_convert), (gst_query_parse_convert):
1690         * gst/gstquery.h:
1691         * gst/gstqueryutils.c:
1692         * gst/gstqueryutils.h:
1693         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
1694         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
1695         (gst_queue_handle_src_query):
1696         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1697         (gst_element_query_position), (gst_element_query_convert),
1698         (intersect_caps_func), (gst_pad_query_position),
1699         (gst_pad_query_convert):
1700         * gst/gstutils.h:
1701         * tools/gst-inspect.c: (print_pad_info):
1702         * tools/gst-xmlinspect.c: (print_element_info):
1703         Remove old query functions. Ported old code.
1704         Added position/convert helper functions to gstutils.
1705         Reordered gstpad.c code, grouping relevant things.
1706         Remove gst_message_new(), always need to speficy a specific
1707         message.
1708
1709
1710 2005-05-09  Andy Wingo  <wingo@pobox.com>
1711
1712         * gst/gstiterator.h: Add some includes.
1713
1714         * gst/gstqueryutils.h: Include more headers.
1715
1716         * gst/gstpad.h:
1717         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
1718         some uses of gst_pad_query.
1719
1720         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
1721         NULL out parameters.
1722         (gst_query_new_position): New proc, allocates a new position
1723         query.
1724
1725         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
1726         gstqueryutils.c to the build.
1727
1728         * gst/gststructure.c (gst_structure_set_valist): Implement with
1729         the generic G_VALUE_COLLECT.
1730         
1731 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
1732
1733         * gst/Makefile.am: (gst_headers):
1734         Added gstqueryutils.h to the list of headers to install, that was
1735         a 'nachty' move wingo :)
1736
1737 2005-05-06  Andy Wingo  <wingo@pobox.com>
1738
1739         * gst/gstquery.h
1740         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
1741         GstData, init a memchunk.
1742         (standard_definitions): Add a few query types, deprecate a few.
1743         (gst_query_get_type): New proc.
1744         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
1745         implementation.
1746         (gst_query_new_application, gst_query_get_structure): New public
1747         procs.
1748
1749         * docs/design/draft-query.txt: Removed LINKS from the query types,
1750         because all the rest can be dispatched to other pads -- seemed
1751         ugly to have a query that couldn't be dispatched. internal_links
1752         is fine as a pad method.
1753
1754         * gst/gstpad.h: Add query2 as a pad method, add the new functions
1755         in gstpad.c, but maintain binary compatibility for the moment.
1756         Will fix before 0.9 is out.
1757
1758         * gst/gstqueryutils.c: 
1759         * gst/gstqueryutils.h: New files, implement 3 methods for each
1760         query type: parse_query, parse_response, and set. Probably need an
1761         allocator as well.
1762
1763         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
1764
1765         * gst/elements/gstfilesink.c (gst_filesink_query2):
1766         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
1767         query_types, and formats methods.
1768
1769         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
1770         (gst_pad_set_query2_function): New functions.
1771         (gst_real_pad_init): Set query2_default as the default query2
1772         function. Basically just dispatches to internally linked pads.
1773
1774         Needs review!
1775         
1776         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
1777         without using the atomic operations. Only one thread can possibly
1778         be accessing the data at this point. Changed so as to avoid
1779         gst_atomic operations.
1780
1781 2005-05-06  Wim Taymans  <wim@fluendo.com>
1782
1783         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
1784         Also set caps if we use the fallback buffer alloc.
1785
1786 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
1787
1788         * docs/gst/Makefile.am:
1789         * docs/gst/gstreamer-docs.sgml:
1790         * docs/gst/gstreamer-sections.txt:
1791         * docs/gst/tmpl/gstatomic.sgml:
1792         * docs/gst/tmpl/gstmemchunk.sgml:
1793         * testsuite/elements/struct_i386.h:
1794         * win32/GStreamer.vcproj:
1795         * win32/Makefile:
1796           Purge GstAtomic stuff from docs and win32 makefiles as well
1797
1798 2005-05-06  Wim Taymans  <wim@fluendo.com>
1799
1800         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
1801         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
1802         * gst/gstpad.c: (gst_pad_peer_get_caps):
1803         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
1804         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
1805         (gst_queue_src_activate), (gst_queue_change_state):
1806         * gst/gstqueue.h:
1807         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1808         (intersect_caps_func):
1809         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
1810         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
1811         Some fixes for the peer_get_caps() change.
1812
1813 2005-05-06  Wim Taymans  <wim@fluendo.com>
1814
1815         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1816         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
1817         (gst_basesink_activate):
1818         Actually do something with error codes returned from the push
1819         functions.
1820
1821 2005-05-06  Wim Taymans  <wim@fluendo.com>
1822
1823         * docs/design/part-element-sink.txt:
1824         * docs/design/part-element-source.txt:
1825         * gst/base/gstbasesink.c: (gst_basesink_class_init),
1826         (gst_basesink_event), (gst_basesink_activate):
1827         * gst/base/gstbasesink.h:
1828         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
1829         (gst_basesrc_activate):
1830         * gst/base/gstbasesrc.h:
1831         * gst/gstelement.c: (gst_element_pads_activate):
1832         Some more documentation.
1833         Fixed scheduling decision in _pads_activate().
1834
1835 2005-05-05  Andy Wingo  <wingo@pobox.com>
1836
1837         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
1838         the test suite.
1839
1840 2005-05-05  Wim Taymans  <wim@fluendo.com>
1841
1842         * gst/base/Makefile.am:
1843         * gst/base/gstbasesink.h:
1844         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1845         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
1846         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
1847         (gst_collectpads_class_init), (gst_collectpads_init),
1848         (gst_collectpads_finalize), (gst_collectpads_new),
1849         (gst_collectpads_set_function), (gst_collectpads_add_pad),
1850         (find_pad), (gst_collectpads_remove_pad),
1851         (gst_collectpads_is_active), (gst_collectpads_collect),
1852         (gst_collectpads_collect_range), (gst_collectpads_start),
1853         (gst_collectpads_stop), (gst_collectpads_peek),
1854         (gst_collectpads_pop), (gst_collectpads_available),
1855         (gst_collectpads_read), (gst_collectpads_flush),
1856         (gst_collectpads_chain):
1857         * gst/base/gstcollectpads.h:
1858         * gst/elements/Makefile.am:
1859         * gst/elements/gstelements.c:
1860         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1861         (gst_fakesink_get_times), (gst_fakesink_event),
1862         (gst_fakesink_preroll), (gst_fakesink_render):
1863         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1864         (gst_filesink_init), (gst_filesink_set_location),
1865         (gst_filesink_open_file), (gst_filesink_close_file),
1866         (gst_filesink_pad_query), (gst_filesink_event),
1867         (gst_filesink_render), (gst_filesink_change_state):
1868         * gst/elements/gstfilesink.h:
1869         Added object to help in making collect pad based elements.
1870         Ported filesink.
1871         Make event function in sink baseclass return gboolean.
1872
1873 2005-05-05  Wim Taymans  <wim@fluendo.com>
1874
1875         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
1876         (gst_bin_get_by_name):
1877         * gst/gstbuffer.h:
1878         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
1879         (gst_clock_finalize):
1880         * gst/gstdata.c: (gst_data_replace):
1881         * gst/gstdata.h:
1882         * gst/gstelement.c: (gst_element_request_pad),
1883         (gst_element_pads_activate):
1884         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
1885         (gst_object_unref):
1886         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1887         (gst_pad_set_checkgetrange_function),
1888         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
1889         (gst_pad_check_pull_range), (gst_pad_pull_range),
1890         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1891         (gst_pad_pause_task), (gst_pad_stop_task):
1892         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1893         (gst_element_request_pad), (gst_pad_proxy_getcaps):
1894         Fix name lookup in GstBin.
1895         Added _data_replace() function and _buffer_replace()
1896         Use finalize method to clean up clock.
1897         Fix refcounting on request pads.
1898         Fix pad schedule mode error.
1899         Some more object refcounting debug info,
1900
1901
1902 2005-05-04  Andy Wingo <wingo@pobox.com>
1903
1904         * check/Makefile.am:
1905         * docs/gst/tmpl/gstatomic.sgml:
1906         * docs/gst/tmpl/gstplugin.sgml:
1907         * gst/base/gstbasesink.c: (gst_basesink_activate):
1908         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
1909         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
1910         (gst_basesrc_query), (gst_basesrc_set_property),
1911         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
1912         (gst_basesrc_activate):
1913         * gst/base/gstbasesrc.h:
1914         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
1915         (gst_base_transform_src_activate):
1916         * gst/elements/gstelements.c:
1917         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1918         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1919         * gst/elements/gsttee.c: (gst_tee_sink_activate):
1920         * gst/elements/gsttypefindelement.c: (find_element_get_length),
1921         (gst_type_find_element_checkgetrange),
1922         (gst_type_find_element_activate):
1923         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
1924         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
1925         (gst_caps_load_thyself):
1926         * gst/gstelement.c: (gst_element_pads_activate),
1927         (gst_element_save_thyself), (gst_element_restore_thyself):
1928         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
1929         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
1930         * gst/gstpad.h:
1931         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
1932         (gst_xml_parse_file), (gst_xml_parse_memory),
1933         (gst_xml_get_element), (gst_xml_make_element):
1934         * gst/indexers/gstfileindex.c: (gst_file_index_load),
1935         (_file_index_id_save_xml), (gst_file_index_commit):
1936         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
1937         (read_enum), (load_pad_template), (load_feature), (load_plugin),
1938         (load_paths):
1939         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
1940         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
1941         * tools/gst-complete.c: (main):
1942         * tools/gst-compprep.c: (main):
1943         * tools/gst-inspect.c: (print_element_properties_info):
1944         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
1945         * tools/gst-xmlinspect.c: (print_element_properties):
1946         GCC 4 fixen.
1947         
1948 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
1949
1950         * gst/gstplugin.c: (gst_plugin_check_module),
1951         (gst_plugin_check_file), (gst_plugin_load_file):
1952             apply patch from #172526 to make register work on MacOSX
1953
1954 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1955
1956         * docs/gst/tmpl/gstconfig.sgml:
1957         * gst/gstconfig.h.in:
1958           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
1959         * testsuite/debug/printf_extension.c: (main):
1960           Do not use GST_PTR_FORMAT on pointers to types with
1961           sizeof < sizeof(gpointer).  Fixes test on 64-bit
1962         * testsuite/elements/property.h:
1963           use correct printf format
1964
1965 2005-05-02  Wim Taymans  <wim@fluendo.com>
1966
1967         * docs/design/draft-push-pull.txt:
1968         * docs/design/draft-query.txt:
1969         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
1970         (gst_basesrc_start):
1971         Added draft for new query API.
1972         Added draft for better selecting scheduling methods.
1973         Make basesrc ignore length if the subclass does not support
1974         it.
1975
1976 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1977
1978         * gst/Makefile.am:
1979           possible fixes for automake-1.5 - _LIBADD is reserved
1980
1981 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1982
1983         * docs/faq/Makefile.am:
1984         * docs/manual/Makefile.am:
1985         * docs/manuals.mak:
1986         * docs/pwg/Makefile.am:
1987         * gst/Makefile.am:
1988           possible fixes for automake-1.5
1989
1990 2005-04-28  Wim Taymans  <wim@fluendo.com>
1991
1992         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1993         (gst_basesink_pad_getcaps), (gst_basesink_init),
1994         (gst_basesink_do_sync):
1995         * gst/gstclock.c: (gst_clock_entry_new):
1996         * gst/gstevent.c: (gst_event_discont_get_value):
1997         * gst/gstpipeline.c: (pipeline_bus_handler),
1998         (gst_pipeline_change_state):
1999         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
2000         Better debugging of clocking info.
2001         Allow NULL values when getting discont values.
2002
2003 2005-04-27  Wim Taymans  <wim@fluendo.com>
2004
2005         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
2006         * check/gst/gstpad.c: (gst_pad_suite):
2007         Increase timeout for checks.
2008
2009 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2010
2011         * check/Makefile.am:
2012           fix the broken rule for cleanup.  Apparently this rule is
2013           only needed on FC2, so maybe this warrants further autotool
2014           inspection.
2015
2016 2005-04-26  Wim Taymans  <wim@fluendo.com>
2017
2018         * gst/gsttrashstack.h:
2019         Ooohh. a nasty one! After having a failed pop() from the stack,
2020         it's possible that the stack is empty. In that case, don't
2021         follow the NULL pointer.
2022
2023 2005-04-25  Wim Taymans  <wim@fluendo.com>
2024
2025         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2026         (gst_pad_set_checkgetrange_function),
2027         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
2028         (gst_pad_check_pull_range), (gst_pad_pull_range),
2029         (gst_static_pad_template_get_caps), (gst_pad_start_task),
2030         (gst_pad_pause_task), (gst_pad_stop_task):
2031         * gst/gstplugin.c: (gst_plugin_load):
2032         * gst/gstplugin.h:
2033         Remove gst_library_load as it does more harm than good with
2034         the new g_module flags.
2035         Revert bogus caps template check in pad linking, pad caps
2036         are important when linking not the template, which is more
2037         general than the current caps.
2038
2039 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2040
2041         * gst/autoplug/.cvsignore:
2042         * gst/autoplug/Makefile.am:
2043         * gst/autoplug/gstsearchfuncs.c:
2044         * gst/autoplug/gstsearchfuncs.h:
2045         * gst/autoplug/gstspider.c:
2046         * gst/autoplug/gstspider.h:
2047         * gst/autoplug/gstspideridentity.c:
2048         * gst/autoplug/gstspideridentity.h:
2049         * gst/autoplug/spidertest.c:
2050           Die, spider, die.
2051
2052 2005-04-25  Wim Taymans  <wim@fluendo.com>
2053
2054         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2055         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
2056         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
2057         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
2058         * gst/gstpad.h:
2059         Added stubs for unimplemented functions. 
2060
2061 2005-04-24  David Schleef  <ds@schleef.org>
2062
2063         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
2064         please fix.
2065
2066 2005-04-24  David Schleef  <ds@schleef.org>
2067
2068         Convert everything from GstAtomicInt to g_atomic_int_*, and
2069         remove gstatomic.
2070         * gst/Makefile.am:
2071         * gst/gstatomic.c:
2072         * gst/gstatomic.h:
2073         * gst/gstatomic_impl.h:
2074         * gst/gstbuffer.c:
2075         * gst/gstcaps.c:
2076         * gst/gstcaps.h:
2077         * gst/gstclock.c:
2078         * gst/gstclock.h:
2079         * gst/gstdata.c:
2080         * gst/gstdata.h:
2081         * gst/gstdata_private.h:
2082         * gst/gstevent.c:
2083         * gst/gstinfo.c:
2084         * gst/gstinfo.h:
2085         * gst/gstmessage.c:
2086         * gst/gstobject.c:
2087         * gst/gstobject.h:
2088         * gst/gststructure.c:
2089         * gst/gststructure.h:
2090         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
2091         * gst/gstutils.h:
2092
2093 2005-04-24  David Schleef  <ds@schleef.org>
2094
2095         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
2096         make the regressions tests work.  Remove some code that is no
2097         longer true.
2098         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
2099         Disable warning for pads without templates.
2100
2101 2005-04-24  David Schleef  <ds@schleef.org>
2102
2103         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
2104         functions that handle filtered links.
2105         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
2106         removed functions.
2107         * gst/gstutils.c: Fix/remove utility functions that handle
2108         filtered caps.
2109         * gst/gstutils.h:
2110         * gst/gstvalue.c: Add serialization/deserialization of caps
2111         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
2112         requires fixing so that the filter caps notation creates
2113         a capsfilter element and sets the filter_caps property.  I
2114         think everyone probably wants to keep the shorthand notation.
2115         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
2116         * docs/gst/tmpl/gstpad.sgml:
2117
2118         * gst/elements/gstelements.c: Register capsfilter element.
2119         * gst/Makefile.am: fix spacing
2120         * docs/random/ds/0.9-suggested-changes: random
2121
2122 2005-04-23  David Schleef  <ds@schleef.org>
2123
2124         * gst/elements/Makefile.am:
2125         * gst/elements/gstcapsfilter.c: New element that acts like an
2126         identity, but filters caps.  Will eventually replace filtered
2127         caps in pad linking.
2128         * gst/gstutils.c: (gst_element_create_all_pads): New function
2129         to create all the ALWAYS pads that are registered with an
2130         element class.  This functionality should eventually be
2131         merged in with GstElement initialization.
2132         * gst/gstutils.h:
2133         * testsuite/trigger/README: part of trigger test code that should
2134         have been checked in a long time ago.
2135
2136 2005-04-23  David Schleef  <ds@schleef.org>
2137
2138         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
2139         needed with new versions of libtool (nobody will confirm this),
2140         and hard to carry around.
2141         * gst/autoplug/Makefile.am:
2142         * gst/base/Makefile.am:
2143         * gst/elements/Makefile.am:
2144         * gst/indexers/Makefile.am:
2145         * gst/schedulers/Makefile.am:
2146         * libs/gst/bytestream/Makefile.am:
2147         * libs/gst/control/Makefile.am:
2148         * libs/gst/dataprotocol/Makefile.am:
2149         * libs/gst/getbits/Makefile.am:
2150
2151 2005-04-21  Wim Taymans  <wim@fluendo.com>
2152
2153         * docs/design/draft-push-pull.txt:
2154         * docs/design/part-MT-refcounting.txt:
2155         * docs/design/part-TODO.txt:
2156         * docs/design/part-caps.txt:
2157         * docs/design/part-events.txt:
2158         * docs/design/part-gstbus.txt:
2159         * docs/design/part-gstpipeline.txt:
2160         * docs/design/part-messages.txt:
2161         * docs/design/part-push-pull.txt:
2162         * docs/design/part-query.txt:
2163         Some more docs.
2164
2165 2005-04-21  Wim Taymans  <wim@fluendo.com>
2166
2167         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
2168         (gst_message_new), (gst_message_new_error),
2169         (gst_message_new_warning), (gst_message_new_tag),
2170         (gst_message_new_state_changed), (gst_message_new_application),
2171         (gst_message_get_structure):
2172         * gst/gstmessage.h:
2173         * gst/gststructure.c: (gst_structure_set_parent_refcount),
2174         (gst_structure_copy_conditional):
2175         Use parent refcount in GstMessage to ensure GstStructure
2176         consistency.
2177         Cleaned up headers a bit.
2178         
2179
2180 2005-04-20  Wim Taymans  <wim@fluendo.com>
2181
2182         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2183         (gst_basesink_pad_getcaps), (gst_basesink_init),
2184         (gst_basesink_chain_unlocked):
2185         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
2186         (gst_type_find_helper):
2187         * gst/elements/gsttypefindelement.c:
2188         (gst_type_find_element_have_type), (gst_type_find_element_init),
2189         (stop_typefinding), (gst_type_find_element_handle_event),
2190         (find_suggest), (gst_type_find_element_chain),
2191         (gst_type_find_element_checkgetrange),
2192         (gst_type_find_element_getrange), (do_typefind),
2193         (gst_type_find_element_activate):
2194         * gst/gstbuffer.c: (_gst_buffer_sub_free),
2195         (gst_buffer_default_free), (gst_buffer_default_copy),
2196         (gst_buffer_set_caps):
2197         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
2198         (gst_caps_replace):
2199         * gst/gstmessage.c: (gst_message_new),
2200         (gst_message_new_state_changed):
2201         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2202         (gst_pad_set_checkgetrange_function),
2203         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
2204         (gst_pad_set_caps), (gst_pad_check_pull_range),
2205         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
2206         * gst/gstpad.h:
2207         * gst/gsttypefind.c: (gst_type_find_register):
2208         Make gst_caps_replace() work like other _replace() functions.
2209         Use _caps_replace() where possible.
2210         Make sure _message_new() initialises its field.
2211         Add gst_static_pad_template_get_caps()
2212
2213
2214 2005-04-18  Andy Wingo  <wingo@pobox.com>
2215
2216         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
2217         on the peer, not the pad. I think that was a typo. Pass an extra
2218         arg to see if random access is possible. Activate the pads as
2219         PULL_RANGE if possible.
2220
2221         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
2222
2223         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
2224         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
2225         to PROP_....
2226
2227 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2228
2229         * docs/faq/using.xml:
2230           Add note on gstreamer-properties (#154996).
2231
2232 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2233
2234         * docs/random/bbb/optional-properties:
2235           Some analysis on optional properties.
2236
2237 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2238
2239         * docs/gst/tmpl/gstelementfactory.sgml:
2240         * gst/gstelement.h:
2241         * gst/gstelementfactory.c: (gst_element_factory_init),
2242         (gst_element_factory_cleanup), (gst_element_register),
2243         (__gst_element_factory_add_static_pad_template),
2244         (gst_element_factory_get_static_pad_templates),
2245         (gst_element_factory_can_src_caps),
2246         (gst_element_factory_can_sink_caps):
2247         * gst/registries/Makefile.am:
2248         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
2249         (gst_xml_registry_class_init), (gst_xml_registry_init),
2250         (gst_xml_registry_new), (gst_xml_registry_set_property),
2251         (gst_xml_registry_get_property), (get_time), (make_dir),
2252         (gst_xml_registry_get_perms_func),
2253         (plugin_times_older_than_recurse), (plugin_times_older_than),
2254         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
2255         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
2256         (add_to_char_array), (read_string), (read_uint), (read_enum),
2257         (load_pad_template), (load_feature), (load_plugin), (load_paths),
2258         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
2259         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
2260         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
2261         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
2262         (gst_xml_registry_rebuild):
2263         * gst/registries/gstlibxmlregistry.h:
2264         * tools/gst-compprep.c: (main):
2265         * tools/gst-inspect.c: (print_pad_templates_info):
2266         * tools/gst-xmlinspect.c: (print_element_info):
2267           Use libxml2 for registry parsing, use staticpadtemplates in
2268           elementfactories. Makes gst_init() +/- 10x faster.
2269
2270 2005-04-12  Wim Taymans  <wim@fluendo.com>
2271
2272         * gst/base/Makefile.am:
2273         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2274         (gst_basesink_pad_getcaps), (gst_basesink_init),
2275         (gst_basesink_event), (gst_basesink_change_state):
2276         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2277         (gst_basesrc_init), (gst_basesrc_query),
2278         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
2279         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
2280         (gst_basesrc_check_get_range), (gst_basesrc_loop),
2281         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
2282         (gst_basesrc_stop), (gst_basesrc_activate),
2283         (gst_basesrc_change_state):
2284         * gst/base/gsttypefindhelper.c: (helper_find_peek),
2285         (helper_find_suggest), (gst_type_find_helper):
2286         * gst/base/gsttypefindhelper.h:
2287         * gst/elements/Makefile.am:
2288         * gst/elements/gstelements.c:
2289         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2290         (gst_fakesink_get_times), (gst_fakesink_event),
2291         (gst_fakesink_preroll), (gst_fakesink_render):
2292         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2293         (gst_fakesrc_init), (gst_fakesrc_event_handler),
2294         (gst_fakesrc_get_property), (gst_fakesrc_create),
2295         (gst_fakesrc_start), (gst_fakesrc_stop):
2296         * gst/elements/gstfakesrc.h:
2297         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
2298         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
2299         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
2300         (gst_filesrc_create_read), (gst_filesrc_create),
2301         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
2302         (gst_filesrc_start):
2303         * gst/elements/gsttypefindelement.c:
2304         (gst_type_find_element_have_type), (gst_type_find_element_init),
2305         (start_typefinding), (stop_typefinding), (push_buffer_store),
2306         (gst_type_find_element_handle_event),
2307         (gst_type_find_element_chain),
2308         (gst_type_find_element_checkgetrange),
2309         (gst_type_find_element_getrange), (do_typefind),
2310         (gst_type_find_element_activate),
2311         (gst_type_find_element_change_state):
2312         * gst/elements/gsttypefindelement.h:
2313         * gst/gstpipeline.c: (pipeline_bus_handler):
2314         Added typefind helper.
2315         Small preroll fix in the base sink.
2316         Disable typefind code in basesrc.
2317         Crude port of typefindelement.
2318         Fakesrc cleanups.
2319
2320
2321 2005-04-11  Wim Taymans  <wim@fluendo.com>
2322
2323         * check/gst/gstbus.c: (gstbus_suite):
2324         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
2325         * check/gstcheck.h:
2326           Fix up the timeout so that the test does not fail.
2327
2328 2005-04-06  Wim Taymans  <wim@fluendo.com>
2329
2330         * gst/base/README:
2331         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2332         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
2333         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
2334         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
2335         (gst_basesrc_check_get_range), (gst_basesrc_loop),
2336         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
2337         (gst_basesrc_stop), (gst_basesrc_activate),
2338         (gst_basesrc_change_state), (basesrc_find_peek),
2339         (basesrc_find_suggest), (gst_basesrc_type_find):
2340         * gst/base/gstbasesrc.h:
2341         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
2342         (gst_filesrc_class_init), (gst_filesrc_init),
2343         (gst_filesrc_finalize), (gst_filesrc_set_location),
2344         (gst_filesrc_set_property), (gst_filesrc_get_property),
2345         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
2346         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
2347         (gst_filesrc_create_read), (gst_filesrc_create),
2348         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
2349         * gst/elements/gstfilesrc.h:
2350         * gst/gstelement.c: (gst_element_get_state_func),
2351         (gst_element_lost_state), (gst_element_pads_activate):
2352         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2353         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
2354         (gst_pad_pull_range):
2355         * gst/gstpad.h:
2356         More work on the generic source base class, implement seeking,
2357         query.
2358         Make filesrc extend the base source class.
2359         Added gst_pad_set_checkgetrange_function to GstPad.
2360
2361 2005-04-06  Andy Wingo  <wingo@pobox.com>
2362
2363         * pkgconfig/gstreamer-base.pc.in:
2364         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
2365
2366         * pkgconfig/Makefile.am:
2367         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
2368
2369 2005-04-04  Wim Taymans  <wim@fluendo.com>
2370
2371         * gst/base/Makefile.am:
2372         * gst/base/README:
2373         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2374         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
2375         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
2376         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
2377         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2378         (gst_basesrc_base_init), (gst_basesrc_class_init),
2379         (gst_basesrc_init), (gst_basesrc_get_formats),
2380         (gst_basesrc_get_query_types), (gst_basesrc_query),
2381         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
2382         (gst_basesrc_set_property), (gst_basesrc_get_property),
2383         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
2384         (gst_basesrc_loop), (gst_basesrc_activate),
2385         (gst_basesrc_change_state):
2386         * gst/base/gstbasesrc.h:
2387         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
2388         (gst_fakesrc_class_init), (gst_fakesrc_init),
2389         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
2390         (gst_fakesrc_get_property), (gst_fakesrc_create):
2391         * gst/elements/gstfakesrc.h:
2392         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
2393         (gst_filesrc_open_file), (gst_filesrc_loop),
2394         (gst_filesrc_activate), (filesrc_find_peek),
2395         (gst_filesrc_type_find):
2396         Made base source class, make fakesrc extend it.
2397         Add comments to basesink class.
2398         Some filesrc cleanup.
2399
2400 2005-03-31  David Schleef  <ds@schleef.org>
2401
2402         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
2403         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
2404         expected to link against libgstreamer.
2405         * gst/base/Makefile.am: link against libgstreamer
2406         * gst/elements/Makefile.am: same
2407
2408 2005-03-31  Andy Wingo  <wingo@pobox.com>
2409
2410         * tests/instantiate/Makefile.am:
2411         * tests/instantiate/caps.c: Add test to test speed of caps copy
2412         and free.
2413
2414         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
2415         GMemChunk to be fair.
2416
2417         * gst/gsttrashstack.h: Remove warning about using the fallback
2418         trash stack implementation, it's still faster than malloc.
2419
2420 2005-03-30  Andy Wingo  <wingo@pobox.com>
2421
2422         * tests/complexity.c: Add a copyright.
2423
2424 2005-03-31  Wim Taymans  <wim@fluendo.com>
2425
2426         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
2427         (gst_base_transform_class_init), (gst_base_transform_init),
2428         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
2429         (gst_base_transform_get_property),
2430         (gst_base_transform_sink_activate),
2431         (gst_base_transform_src_activate),
2432         (gst_base_transform_change_state):
2433         * gst/base/gstbasetransform.h:
2434         * gst/elements/gstidentity.c: (gst_identity_class_init),
2435         (gst_identity_event), (gst_identity_check_perfect),
2436         (gst_identity_transform), (gst_identity_start),
2437         (gst_identity_stop):
2438         Added start/stop methods to transform base class so subclasses 
2439         don't need to deal with state changes even.
2440
2441 2005-03-31  Wim Taymans  <wim@fluendo.com>
2442
2443         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
2444         (gst_event_new_discontinuous), (gst_event_discont_get_value):
2445         * gst/gstevent.h:
2446         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2447         (gst_pad_pull_range):
2448         Added rate to the discont event to prepare for variable speed
2449         and reverse playback.
2450
2451 2005-03-29  David Schleef  <ds@schleef.org>
2452
2453         * configure.ac:
2454         * testsuite/trigger/Makefile.am:
2455         * testsuite/trigger/trigger.c: A little example program to show
2456         how trigger-based elements can work.
2457
2458 2005-03-29  Wim Taymans  <wim@fluendo.com>
2459
2460         * gst/base/Makefile.am:
2461         * gst/base/README:
2462         * gst/base/gstbasesink.c: (gst_basesink_get_type),
2463         (gst_basesink_base_init), (gst_basesink_class_init),
2464         (gst_basesink_pad_getcaps), (gst_basesink_init),
2465         (gst_basesink_activate), (gst_basesink_change_state):
2466         * gst/base/gstbasesink.h:
2467         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
2468         (gst_base_transform_base_init), (gst_base_transform_finalize),
2469         (gst_base_transform_class_init), (gst_base_transform_init),
2470         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
2471         (gst_base_transform_event), (gst_base_transform_getrange),
2472         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
2473         (gst_base_transform_set_property),
2474         (gst_base_transform_get_property),
2475         (gst_base_transform_sink_activate),
2476         (gst_base_transform_src_activate),
2477         (gst_base_transform_change_state):
2478         * gst/base/gstbasetransform.h:
2479         * gst/elements/gstidentity.c: (gst_identity_finalize),
2480         (gst_identity_class_init), (gst_identity_init),
2481         (gst_identity_event), (gst_identity_check_perfect),
2482         (gst_identity_transform), (gst_identity_set_property),
2483         (gst_identity_get_property), (gst_identity_change_state):
2484         * gst/elements/gstidentity.h:
2485         * gst/gstelement.c: (gst_element_get_state_func),
2486         (gst_element_lost_state), (gst_element_pads_activate):
2487         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2488         (gst_pad_check_pull_range), (gst_pad_pull_range):
2489         * gst/gstpad.h:
2490         Simplify pad activation.
2491         Added function to check if pull_range can be performed.
2492         Error out when pulling inactive or flushing pads.
2493         Removed const from refcounted types as it does not make sense.
2494         Simplify pad templates in basesink
2495         Added base class for simple 1-to-1 transforms.
2496         Make identity subclass the base transform.
2497
2498 2005-03-29  Andy Wingo  <wingo@pobox.com>
2499
2500         * docs/libs/gstreamer-libs-overrides.txt: 
2501         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
2502         really don't understand what's going on, but like whatever. I want
2503         green buildbot!
2504
2505         * docs/gst/Makefile.am:
2506         * docs/libs/Makefile.am: Dist the overrides files.
2507
2508         * check/Makefile.am (clean-local): Remove .libs directories.
2509
2510         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
2511         elements to EXTRA_DIST, so po/ files are happy.
2512
2513         * po/POTFILES.in: Er, remove it here.
2514
2515         * po/POTFILES: Remove gstspider.c.
2516
2517         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
2518
2519         * docs/libs/gstreamer-libs-docs.sgml: 
2520         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
2521         bytestream.
2522
2523         * tests/complexity.c (main): Set the length of the preroll queue
2524         on the sinks to prevent a lockup.
2525
2526         * libs/gst/dataprotocol/Makefile.am: 
2527         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
2528         the same as the one in check/gst-libs/gdp.c.
2529
2530         * po/, docs/gst/: Commit automatic changes to docs and po files.
2531
2532         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
2533         the versioned libgstbase.
2534
2535         * check/Makefile.am: Depend on an unversioned gst-register, seems
2536         to make autoconf happier.
2537
2538         * gst/base/Makefile.am: Make libgstbase a versioned lib.
2539
2540 2005-03-28  Wim Taymans  <wim@fluendo.com>
2541
2542         * configure.ac:
2543         * docs/design/part-gstelement.txt:
2544         * docs/design/part-negotiation.txt:
2545         * docs/design/part-preroll.txt:
2546         * docs/design/part-scheduling.txt:
2547         * docs/design/part-states.txt:
2548         * gst/Makefile.am:
2549         * gst/base/Makefile.am:
2550         * gst/base/README:
2551         * gst/base/gstbasesink.c: (gst_basesink_get_template),
2552         (gst_basesink_base_init), (gst_basesink_class_init),
2553         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
2554         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
2555         (gst_basesink_set_pad_functions),
2556         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
2557         (gst_basesink_set_property), (gst_basesink_get_property),
2558         (gst_base_sink_get_template), (gst_base_sink_get_caps),
2559         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
2560         (gst_basesink_preroll_queue_push),
2561         (gst_basesink_preroll_queue_empty),
2562         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
2563         (gst_basesink_event), (gst_basesink_get_times),
2564         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
2565         (gst_basesink_chain_unlocked), (gst_basesink_chain),
2566         (gst_basesink_loop), (gst_basesink_activate),
2567         (gst_basesink_change_state):
2568         * gst/base/gstbasesink.h:
2569         * gst/elements/Makefile.am:
2570         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
2571         (gst_fakesink_class_init), (gst_fakesink_init),
2572         (gst_fakesink_set_property), (gst_fakesink_get_property),
2573         (gst_fakesink_get_times), (gst_fakesink_event),
2574         (gst_fakesink_preroll), (gst_fakesink_render),
2575         (gst_fakesink_change_state):
2576         * gst/elements/gstfakesink.h:
2577         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
2578         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
2579         * gst/gstelement.c: (gst_element_add_pad),
2580         (gst_element_get_state_func), (gst_element_abort_state),
2581         (gst_element_commit_state), (gst_element_lost_state),
2582         (gst_element_set_state), (gst_element_pads_activate):
2583         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
2584         * gst/gstpipeline.c: (gst_pipeline_send_event),
2585         (gst_pipeline_change_state):
2586         Added state change code.
2587         Added/updated docs.
2588         Added sink base class, make fakesink extend the base class.
2589         Small cleanups in GstPipeline.
2590
2591 2005-03-26  David Schleef  <ds@schleef.org>
2592
2593         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
2594         is broken and should be implemented in a different library.
2595         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
2596         * gst/gst.h: remove gstcpu.h
2597         * gst/gstcpu.c: remove
2598         * gst/gstcpu.h: remove
2599         * gst/Makefile.am.future: Remove this file.  It's ancient.
2600
2601 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2602
2603         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
2604         (gst_bin_send_event):
2605           Add default event/set_manager handlers. The set_manager handler
2606           takes care that the manager is distributed over kids that were
2607           already in the bin before the manager was set. The event handler
2608           is a utility virtual function that sends the event over all sinks,
2609           so that gst_element_send_event (bin, event); has the expected
2610           behaviour.
2611         * gst/gstpad.c: (gst_pad_event_default):
2612           Re-install default event handling for discontinuities, so that
2613           seeking works without requiring hacks in applications or extra
2614           code in sinks.
2615         * gst/gstpipeline.c: (gst_pipeline_class_init),
2616         (gst_pipeline_send_event):
2617           Half hack, half utility: set a pipeline to PAUSED for seek events,
2618           since that is the only way we can guarantee a/v sync. Means that
2619           you can do gst_element_seek (pipeline, method, pos); on a pipeline
2620           and it "just works".
2621
2622 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2623
2624         * gst/gstpipeline.c: (gst_pipeline_use_clock):
2625           Lock/unlock mismatch.
2626
2627 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
2628
2629         * docs/faq/gst-uninstalled:
2630           add gst-plugins-base
2631         * docs/gst/Makefile.am:
2632           don't error out until docs are fixed
2633         * docs/gst/gstreamer.types:
2634           remove thread
2635
2636 2005-03-22  Wim Taymans  <wim@fluendo.com>
2637
2638         * check/Makefile.am:
2639         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
2640         * gst/gststructure.c: (gst_structure_set_valist),
2641         (gst_structure_copy_conditional):
2642         Activated more tests.
2643         Added message test.
2644         Added G_TYPE_POINTER to GstStructure.
2645         
2646
2647 2005-03-22  Wim Taymans  <wim@fluendo.com>
2648
2649         * docs/design/part-TODO.txt:
2650         * docs/design/part-events.txt:
2651         * docs/design/part-gstbin.txt:
2652         * docs/design/part-gstbus.txt:
2653         * docs/design/part-gstpipeline.txt:
2654         * docs/design/part-messages.txt:
2655         * gst/gstbus.c:
2656         * gst/gstmessage.c:
2657         Docs updates
2658
2659 2005-03-21  Wim Taymans  <wim@fluendo.com>
2660
2661         * gst/gstbus.c: (gst_bus_post):
2662         Fix copy-and-paste error.
2663
2664 2005-03-21  Wim Taymans  <wim@fluendo.com>
2665
2666         * check/Makefile.am:
2667         * gst/Makefile.am:
2668         * gst/elements/Makefile.am:
2669         * gst/elements/gstelements.c:
2670         * gst/elements/gstfakesink.c: (gst_fakesink_init),
2671         (gst_fakesink_event), (gst_fakesink_chain):
2672         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2673         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
2674         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
2675         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
2676         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
2677         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
2678         (gst_fakesrc_loop), (gst_fakesrc_activate),
2679         (gst_fakesrc_change_state):
2680         * gst/elements/gstfakesrc.h:
2681         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
2682         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
2683         (gst_filesrc_open_file), (gst_filesrc_loop),
2684         (gst_filesrc_activate), (gst_filesrc_change_state),
2685         (filesrc_find_peek), (filesrc_find_suggest),
2686         (gst_filesrc_type_find):
2687         * gst/elements/gstidentity.c: (gst_identity_finalize),
2688         (gst_identity_class_init), (gst_identity_init),
2689         (gst_identity_proxy_getcaps), (identity_queue_push),
2690         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
2691         (gst_identity_getrange), (gst_identity_chain),
2692         (gst_identity_sink_loop), (gst_identity_src_loop),
2693         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
2694         (gst_identity_set_property), (gst_identity_get_property),
2695         (gst_identity_change_state):
2696         * gst/elements/gstidentity.h:
2697         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
2698         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
2699         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
2700         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
2701         (gst_tee_sink_activate):
2702         * gst/elements/gsttee.h:
2703         * gst/gst.c: (gst_register_core_elements), (init_post):
2704         * gst/gst.h:
2705         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
2706         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
2707         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
2708         (gst_bin_change_state):
2709         * gst/gstbin.h:
2710         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
2711         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
2712         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
2713         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
2714         (gst_bus_set_sync_handler), (gst_bus_create_watch),
2715         (bus_watch_callback), (bus_watch_destroy),
2716         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
2717         (poll_timeout), (gst_bus_poll):
2718         * gst/gstbus.h:
2719         * gst/gstcaps.h:
2720         * gst/gstdata.h:
2721         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
2722         (gst_element_post_message), (gst_element_message_full),
2723         (gst_element_get_state_func), (gst_element_get_state),
2724         (gst_element_abort_state), (gst_element_commit_state),
2725         (gst_element_lost_state), (gst_element_set_state),
2726         (gst_element_pads_activate), (gst_element_change_state),
2727         (gst_element_dispose), (gst_element_set_manager_func),
2728         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
2729         (gst_element_set_manager), (gst_element_get_manager),
2730         (gst_element_set_bus), (gst_element_get_bus),
2731         (gst_element_set_scheduler), (gst_element_get_scheduler):
2732         * gst/gstelement.h:
2733         * gst/gstevent.c: (gst_event_new_segment_seek),
2734         (gst_event_new_flush):
2735         * gst/gstevent.h:
2736         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
2737         (_gst_message_free), (gst_message_get_type), (gst_message_new),
2738         (gst_message_new_eos), (gst_message_new_error),
2739         (gst_message_new_warning), (gst_message_new_tag),
2740         (gst_message_new_state_changed), (gst_message_new_application),
2741         (gst_message_get_structure), (gst_message_parse_tag),
2742         (gst_message_parse_state_changed), (gst_message_parse_error),
2743         (gst_message_parse_warning):
2744         * gst/gstmessage.h:
2745         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
2746         (gst_real_pad_set_property), (gst_pad_set_active),
2747         (gst_pad_is_active), (gst_pad_set_blocked_async),
2748         (gst_pad_set_blocked), (gst_pad_is_blocked),
2749         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
2750         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
2751         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
2752         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
2753         (gst_pad_link_filtered), (gst_pad_relink_filtered),
2754         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
2755         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
2756         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
2757         (gst_pad_set_caps), (gst_pad_configure_sink),
2758         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
2759         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
2760         (gst_real_pad_dispose), (gst_real_pad_finalize),
2761         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
2762         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2763         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
2764         * gst/gstpad.h:
2765         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
2766         (pipeline_bus_handler), (gst_pipeline_change_state),
2767         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
2768         * gst/gstpipeline.h:
2769         * gst/gstprobe.h:
2770         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
2771         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
2772         (gst_queue_link_src), (gst_queue_bufferalloc),
2773         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
2774         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
2775         (gst_queue_loop), (gst_queue_handle_src_event),
2776         (gst_queue_handle_src_query), (gst_queue_src_activate),
2777         (gst_queue_change_state):
2778         * gst/gstqueue.h:
2779         * gst/gstscheduler.c: (gst_scheduler_init),
2780         (gst_scheduler_dispose), (gst_scheduler_create_task),
2781         (gst_scheduler_factory_create):
2782         * gst/gstscheduler.h:
2783         * gst/gststructure.c: (gst_structure_get_type),
2784         (gst_structure_copy_conditional):
2785         * gst/gststructure.h:
2786         * gst/gsttaginterface.h:
2787         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
2788         (gst_task_init), (gst_task_dispose), (gst_task_create),
2789         (gst_task_get_state), (gst_task_start), (gst_task_stop),
2790         (gst_task_pause):
2791         * gst/gsttask.h:
2792         * gst/gstthread.c:
2793         * gst/gstthread.h:
2794         * gst/gsttypes.h:
2795         * gst/schedulers/Makefile.am:
2796         * gst/schedulers/cothreads_compat.h:
2797         * gst/schedulers/entryscheduler.c:
2798         * gst/schedulers/faircothreads.c:
2799         * gst/schedulers/faircothreads.h:
2800         * gst/schedulers/fairscheduler.c:
2801         * gst/schedulers/gstbasicscheduler.c:
2802         * gst/schedulers/gstoptimalscheduler.c:
2803         * gst/schedulers/gthread-cothreads.h:
2804         * gst/schedulers/threadscheduler.c:
2805         (gst_thread_scheduler_task_get_type),
2806         (gst_thread_scheduler_task_class_init),
2807         (gst_thread_scheduler_task_init),
2808         (gst_thread_scheduler_task_start),
2809         (gst_thread_scheduler_task_stop),
2810         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
2811         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2812         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
2813         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
2814         (plugin_init):
2815         * libs/gst/Makefile.am:
2816         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
2817         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
2818         (gst_file_pad_parent_set):
2819         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
2820         (gst_dp_event_from_packet):
2821         * tests/complexity.c: (main):
2822         * tests/mass_elements.c: (main):
2823         * testsuite/states/locked.c: (message_received), (main):
2824         * testsuite/states/parent.c: (main):
2825         * tools/gst-inspect.c: (print_element_flag_info),
2826         (print_implementation_info), (print_pad_info):
2827         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
2828         (main):
2829         * tools/gst-md5sum.c: (event_loop), (main):
2830         * tools/gst-typefind.c: (main):
2831         * tools/gst-xmlinspect.c: (print_element_info):
2832         Next big merge.
2833         Added GstBus for mainloop integration.
2834         Added GstMessage for sending notifications on the bus.
2835         Added GstTask as an abstraction for pipeline entry points.
2836         Removed GstThread.
2837         Removed Schedulers.
2838         Simplified GstQueue for multithreaded core.
2839         Made _link threadsafe, removed old capsnego.
2840         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
2841         Added pad blocking functions.
2842         Reworked scheduling functions in GstPad to prepare for
2843         scheduling updates soon.
2844         Moved events out of data stream.
2845         Simplified GstEvent types.
2846         Added return values to push/pull.
2847         Removed clocking from GstElement.
2848         Added prototypes for state change function for next merge.
2849         Removed iterate from bins and state change management.
2850         Fixed some elements, disabled others for now.
2851         Fixed -inspect and -launch.
2852         Added check for GstBus.
2853
2854 2005-03-10  Wim Taymans  <wim@fluendo.com>
2855
2856         * docs/design/part-MT-refcounting.txt:
2857         * docs/design/part-clocks.txt:
2858         * docs/design/part-gstelement.txt:
2859         * docs/design/part-gstobject.txt:
2860         * docs/design/part-standards.txt:
2861         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2862         (gst_bin_remove_func), (gst_bin_remove):
2863         * gst/gstbin.h:
2864         * gst/gstbuffer.c:
2865         * gst/gstcaps.h:
2866         * testsuite/clock/clock1.c: (main):
2867         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
2868         (main):
2869         * testsuite/dlopen/loadgst.c: (do_test):
2870         * testsuite/refcounting/bin.c: (add_remove_test1),
2871         (add_remove_test2), (main):
2872         * testsuite/refcounting/element.c: (main):
2873         * testsuite/refcounting/element_pad.c: (main):
2874         * testsuite/refcounting/pad.c: (main):
2875         * tools/gst-launch.c: (sigint_handler_sighandler):
2876         * tools/gst-typefind.c: (main):
2877         Doc updates.
2878         Added doc about clock.
2879         removed gst_bin_iterate_recurse_up(), marked methods
2880         for removal.
2881         Fix more testsuites.
2882
2883 2005-03-09  Wim Taymans  <wim@fluendo.com>
2884
2885         * gst/gstpad.c: (gst_pad_get_direction),
2886         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
2887         (gst_pad_collect_valist):
2888         * testsuite/bins/interface.c: (main):
2889         * testsuite/caps/audioscale.c: (test_caps):
2890         * testsuite/caps/caps.c: (test1), (test2), (test3):
2891         * testsuite/caps/deserialize.c: (main):
2892         * testsuite/caps/enumcaps.c: (main):
2893         * testsuite/caps/filtercaps.c: (main):
2894         * testsuite/caps/intersect2.c: (main):
2895         * testsuite/caps/random.c: (main):
2896         * testsuite/caps/renegotiate.c: (my_fixate), (main):
2897         * testsuite/caps/sets.c: (check_caps):
2898         * testsuite/caps/simplify.c: (check_caps), (main):
2899         * testsuite/caps/subtract.c: (check_caps):
2900         Fix _pad_get_direction wrt ghostpads.
2901         Fix caps testsuite.
2902
2903 2005-03-09  Wim Taymans  <wim@fluendo.com>
2904
2905         * check/Makefile.am:
2906         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
2907         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
2908         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
2909         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
2910         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
2911         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
2912         (gst_bin_remove), (gst_bin_iterate_recurse_up),
2913         (bin_element_is_sink), (gst_bin_iterate_sinks),
2914         (gst_bin_iterate_all_by_interface):
2915         * gst/gstbin.h:
2916         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
2917         (gst_element_change_state), (gst_element_dispose),
2918         (gst_element_finalize), (gst_element_set_loop_function):
2919         * gst/gstelement.h:
2920         * gst/gstiterator.c: (find_custom_fold_func):
2921         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2922         (gst_pad_collectv), (gst_pad_collect_valist),
2923         (gst_pad_template_new):
2924         * gst/gstpipeline.c: (gst_pipeline_class_init),
2925         (gst_pipeline_dispose), (gst_pipeline_set_property),
2926         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
2927         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
2928         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
2929         * gst/gstutils.h:
2930         * gst/schedulers/entryscheduler.c:
2931         * gst/schedulers/gstbasicscheduler.c:
2932         (gst_basic_scheduler_cothreaded_chain),
2933         (gst_basic_scheduler_chain_add_element):
2934         * testsuite/bins/interface.c: (main):
2935         Added GstBin test.
2936         Added GstSystemClock test.
2937         Implemented clock distribution code in GstBin.
2938         Implemented iterate sinks method for future use.
2939         Rearranged gstelement.h
2940         Fix GstIterator comparison bug.
2941         Moved some code to GstPipeline, mostly clocking related.
2942
2943 2005-03-09  Wim Taymans  <wim@fluendo.com>
2944
2945         * configure.ac:
2946         * gst/gst_private.h:
2947         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2948         (gst_bin_remove_func), (gst_bin_remove),
2949         (gst_bin_get_by_name_recurse_up):
2950         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
2951         (gst_clock_id_compare_func), (gst_clock_id_wait),
2952         (gst_clock_id_wait_async), (gst_clock_init),
2953         (gst_clock_adjust_unlocked), (gst_clock_get_time):
2954         * gst/gstelement.h:
2955         * gst/gstinfo.c: (_gst_debug_init):
2956         * gst/gstobject.h:
2957         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2958         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
2959         * gst/gstpad.h:
2960         Bump version number, we're now 0.9.0
2961         Add future debugging category.
2962         Fix NULL _unref() in _get_by_name_recurse_up
2963         Rearrange gstpad.h.
2964         Update some docs.
2965
2966 2005-03-08  Wim Taymans  <wim@fluendo.com>
2967
2968         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
2969         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
2970         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2971         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
2972         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
2973         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
2974         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
2975         * gst/elements/gstidentity.c: (gst_identity_class_init):
2976         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
2977         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
2978         * gst/elements/gstshaper.c: (gst_shaper_class_init):
2979         * gst/elements/gststatistics.c: (gst_statistics_class_init):
2980         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
2981         (gst_tee_link):
2982         * gst/gstelement.c: (gst_element_class_init),
2983         (gst_element_base_class_init), (gst_element_init),
2984         (gst_element_get_random_pad), (gst_element_wait_state_change),
2985         (gst_element_change_state), (gst_element_dispose),
2986         (gst_element_finalize), (gst_element_set_loop_function):
2987         * gst/gstelement.h:
2988         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
2989         * gst/gstthread.c: (gst_thread_class_init),
2990         (gst_thread_release_children_locks), (gst_thread_change_state):
2991         * gst/schedulers/gstbasicscheduler.c:
2992         (gst_basic_scheduler_loopfunc_wrapper),
2993         (gst_basic_scheduler_chain_wrapper),
2994         (gst_basic_scheduler_src_wrapper),
2995         (gst_basic_scheduler_remove_element):
2996         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
2997         Remove threadsafe properties. Fix elements because GObject
2998         complains when installing a property before declaring a
2999         set/get_property handler.
3000         Rearrange gstelement.h file, use STATE macros for state locks.
3001         Free mutexes in the finalize method instead of dispose.
3002
3003 2005-03-08  Wim Taymans  <wim@fluendo.com>
3004
3005         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3006         * gst/gstthread.c: (gst_thread_release_children_locks):
3007         Added parentage check.
3008         Fix build og GstThread again.
3009
3010 2005-03-08  Wim Taymans  <wim@fluendo.com>
3011
3012         * docs/design/part-MT-refcounting.txt:
3013         * docs/design/part-conventions.txt:
3014         * docs/design/part-gstobject.txt:
3015         * docs/design/part-relations.txt:
3016         * docs/design/part-standards.txt:
3017         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
3018         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
3019         (gst_bin_get_by_name), (gst_bin_get_by_interface),
3020         (gst_bin_iterate_all_by_interface):
3021         * gst/gstbuffer.h:
3022         * gst/gstclock.h:
3023         * gst/gstelement.c: (gst_element_class_init),
3024         (gst_element_change_state), (gst_element_set_loop_function):
3025         * gst/gstelement.h:
3026         * gst/gstiterator.c:
3027         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
3028         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
3029         (gst_object_dispatch_properties_changed), (gst_object_set_name),
3030         (gst_object_set_parent), (gst_object_unparent),
3031         (gst_object_check_uniqueness):
3032         * gst/gstobject.h:
3033         Docs updates, clean up some headers.
3034
3035 2005-03-07  Wim Taymans  <wim@fluendo.com>
3036
3037         * check/.cvsignore:
3038         * check/Makefile.am:
3039         * check/gst-libs/.cvsignore:
3040         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
3041         * check/gst/.cvsignore:
3042         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
3043         (START_TEST), (gstbus_suite), (main):
3044         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
3045         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
3046         (gst_data_suite), (main):
3047         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
3048         (add_fold_func), (gstiterator_suite), (main):
3049         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
3050         (thread_name_object), (thread_name_object_default),
3051         (gst_object_name_compare), (gst_object_suite), (main):
3052         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
3053         (gst_pad_suite), (main):
3054         * check/gstcheck.c: (gst_check_log_message_func),
3055         (gst_check_log_critical_func), (gst_check_init):
3056         * check/gstcheck.h:
3057         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
3058         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
3059         Added checks.
3060
3061 2005-03-07  Wim Taymans  <wim@fluendo.com>
3062
3063         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
3064         (gst_list_iterator_next), (gst_list_iterator_resync),
3065         (gst_list_iterator_free), (gst_iterator_new_list),
3066         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
3067         (gst_iterator_free), (gst_iterator_push), (filter_next),
3068         (filter_resync), (filter_uninit), (filter_free),
3069         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
3070         (gst_iterator_foreach), (find_custom_fold_func),
3071         (gst_iterator_find_custom):
3072         * gst/gstiterator.h:
3073         Added missing files.
3074
3075 2005-03-07  Wim Taymans  <wim@fluendo.com>
3076
3077         * Makefile.am:
3078         * configure.ac:
3079         * docs/design/part-MT-refcounting.txt:
3080         * docs/design/part-conventions.txt:
3081         * docs/design/part-gstobject.txt:
3082         * docs/design/part-relations.txt:
3083         * examples/mixer/mixer.c: (main):
3084         * examples/thread/thread.c: (eos), (main):
3085         * gst/Makefile.am:
3086         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
3087         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
3088         (gst_spider_plug_from_srcpad):
3089         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
3090         (gst_spider_identity_change_state),
3091         (gst_spider_identity_sink_loop_type_finding):
3092         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
3093         * gst/elements/gstidentity.c: (gst_identity_init):
3094         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
3095         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
3096         * gst/elements/gsttypefindelement.c: (free_entry):
3097         * gst/gst.c:
3098         * gst/gst.h:
3099         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
3100         (gst_bin_set_clock_func), (gst_bin_auto_clock),
3101         (gst_bin_set_index), (gst_bin_set_element_sched),
3102         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
3103         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
3104         (gst_bin_iterate_elements), (iterate_child_recurse),
3105         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
3106         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
3107         (compare_interface), (gst_bin_get_by_interface),
3108         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
3109         * gst/gstbin.h:
3110         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
3111         (gst_buffer_default_free), (gst_buffer_default_copy),
3112         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
3113         (gst_buffer_create_sub):
3114         * gst/gstbuffer.h:
3115         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
3116         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
3117         (gst_caps_unref), (gst_static_caps_get),
3118         (gst_caps_remove_and_get_structure), (gst_caps_append),
3119         (gst_caps_append_structure), (gst_caps_remove_structure),
3120         (gst_caps_copy_nth), (gst_caps_set_simple),
3121         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
3122         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
3123         (gst_caps_structure_intersect_field), (gst_caps_intersect),
3124         (gst_caps_structure_subtract_field), (gst_caps_subtract),
3125         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
3126         (gst_caps_structure_figure_out_union),
3127         (gst_caps_switch_structures), (gst_caps_do_simplify),
3128         (gst_caps_replace), (gst_caps_from_string),
3129         (gst_caps_copy_conditional):
3130         * gst/gstcaps.h:
3131         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
3132         (_gst_clock_id_free), (gst_clock_id_unref),
3133         (gst_clock_id_compare_func), (gst_clock_id_wait),
3134         (gst_clock_id_wait_async), (gst_clock_class_init),
3135         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
3136         (gst_clock_get_time), (gst_clock_set_time_adjust),
3137         (gst_clock_set_property), (gst_clock_get_property):
3138         * gst/gstclock.h:
3139         * gst/gstcompat.h:
3140         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
3141         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
3142         * gst/gstdata.h:
3143         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
3144         (gst_element_requires_clock), (gst_element_provides_clock),
3145         (gst_element_set_clock), (gst_element_clock_wait),
3146         (gst_element_wait), (gst_element_set_time_delay),
3147         (gst_element_is_indexable), (gst_element_add_pad),
3148         (gst_element_add_ghost_pad), (gst_element_remove_pad),
3149         (pad_compare_name), (gst_element_get_static_pad),
3150         (gst_element_request_pad), (gst_element_get_request_pad),
3151         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
3152         (gst_element_class_get_pad_template_list),
3153         (gst_element_class_get_pad_template), (gst_element_error_func),
3154         (gst_element_get_random_pad), (gst_element_get_event_masks),
3155         (gst_element_send_event), (gst_element_seek),
3156         (gst_element_get_query_types), (gst_element_query),
3157         (gst_element_get_formats), (gst_element_convert),
3158         (gst_element_is_locked_state), (gst_element_set_locked_state),
3159         (gst_element_sync_state_with_parent), (gst_element_change_state),
3160         (gst_element_finalize), (gst_element_yield),
3161         (gst_element_interrupt), (gst_element_set_scheduler),
3162         (gst_element_get_scheduler), (gst_element_set_loop_function):
3163         * gst/gstelement.h:
3164         * gst/gstevent.h:
3165         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
3166         (gst_format_get_by_nick), (gst_format_get_details),
3167         (gst_format_iterate_definitions):
3168         * gst/gstformat.h:
3169         * gst/gstindex.c: (gst_index_gtype_resolver):
3170         * gst/gstinfo.c:
3171         * gst/gstinfo.h:
3172         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
3173         (gst_mem_chunk_free):
3174         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
3175         (gst_object_ref), (gst_object_unref), (gst_object_sink),
3176         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
3177         (gst_object_dispatch_properties_changed),
3178         (gst_object_set_name_default), (gst_object_set_name),
3179         (gst_object_get_name), (gst_object_set_name_prefix),
3180         (gst_object_get_name_prefix), (gst_object_set_parent),
3181         (gst_object_get_parent), (gst_object_unparent),
3182         (gst_object_check_uniqueness), (gst_object_save_thyself),
3183         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
3184         (gst_object_set_property), (gst_object_get_property),
3185         (gst_object_get_path_string):
3186         * gst/gstobject.h:
3187         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
3188         (gst_real_pad_init), (gst_real_pad_get_property),
3189         (gst_pad_custom_new), (gst_pad_get_direction),
3190         (gst_pad_set_active), (gst_pad_is_active),
3191         (gst_pad_set_event_function), (gst_pad_is_linked),
3192         (gst_pad_link_free), (gst_pad_link_intersect),
3193         (gst_pad_link_fixate), (gst_pad_set_caps),
3194         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
3195         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
3196         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
3197         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
3198         (gst_pad_get_caps), (gst_pad_peer_get_caps),
3199         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
3200         (gst_pad_realize), (gst_pad_get_allowed_caps),
3201         (gst_real_pad_dispose), (gst_real_pad_finalize),
3202         (gst_pad_collectv), (gst_pad_collect_valist),
3203         (gst_pad_template_dispose), (gst_pad_template_new),
3204         (gst_pad_get_internal_links):
3205         * gst/gstpad.h:
3206         * gst/gstpipeline.c: (gst_pipeline_dispose),
3207         (gst_pipeline_change_state):
3208         * gst/gstpipeline.h:
3209         * gst/gstplugin.c:
3210         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
3211         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
3212         * gst/gstpluginfeature.h:
3213         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3214         * gst/gstquery.c: (_gst_query_type_initialize),
3215         (gst_query_type_register), (gst_query_type_get_by_nick),
3216         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
3217         * gst/gstquery.h:
3218         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
3219         * gst/gstscheduler.c: (gst_scheduler_add_element),
3220         (gst_scheduler_factory_create):
3221         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3222         (gst_structure_free), (gst_structure_set_name),
3223         (gst_structure_id_set_value), (gst_structure_set_value),
3224         (gst_structure_set_valist), (gst_structure_remove_field),
3225         (gst_structure_remove_fields),
3226         (gst_structure_remove_fields_valist),
3227         (gst_structure_remove_all_fields), (gst_structure_foreach),
3228         (gst_structure_map_in_place),
3229         (gst_caps_structure_fixate_field_nearest_int),
3230         (gst_caps_structure_fixate_field_nearest_double):
3231         * gst/gststructure.h:
3232         * gst/gstsystemclock.c: (gst_system_clock_class_init),
3233         (gst_system_clock_init), (gst_system_clock_dispose),
3234         (gst_system_clock_async_thread),
3235         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
3236         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
3237         * gst/gstsystemclock.h:
3238         * gst/gsttag.c: (gst_tag_list_add_value_internal),
3239         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
3240         * gst/gsttaginterface.c:
3241         * gst/gstthread.c: (gst_thread_dispose),
3242         (gst_thread_release_children_locks), (gst_thread_change_state),
3243         (gst_thread_main_loop):
3244         * gst/gsttrashstack.h:
3245         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
3246         * gst/gsttypes.h:
3247         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3248         (gst_element_request_pad), (gst_element_get_pad_from_template),
3249         (gst_element_request_compatible_pad),
3250         (gst_element_get_compatible_pad_filtered),
3251         (gst_element_get_compatible_pad), (gst_element_state_get_name),
3252         (gst_element_link_pads_filtered), (gst_element_link_filtered),
3253         (gst_element_link_many), (gst_element_link),
3254         (gst_element_link_pads), (gst_element_unlink_pads),
3255         (gst_element_unlink_many), (gst_element_unlink),
3256         (gst_pad_can_link_filtered), (gst_pad_can_link),
3257         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
3258         (gst_object_default_error), (gst_bin_add_many),
3259         (gst_bin_remove_many), (gst_element_populate_std_props),
3260         (gst_element_class_install_std_props), (gst_buffer_merge),
3261         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
3262         (link_fold_func), (gst_pad_proxy_setcaps):
3263         * gst/gstutils.h:
3264         * gst/gstvalue.c: (gst_value_deserialize_string):
3265         * gst/parse/grammar.y:
3266         * gst/schedulers/gstbasicscheduler.c:
3267         (gst_basic_scheduler_cothreaded_chain),
3268         (gst_basic_scheduler_chain_recursive_add),
3269         (gst_basic_scheduler_pad_link):
3270         * gst/schedulers/gstoptimalscheduler.c:
3271         (get_group_schedule_function),
3272         (gst_opt_scheduler_state_transition),
3273         (gst_opt_scheduler_add_element), (element_get_reachables_func):
3274         * libs/gst/bytestream/bytestream.c:
3275         * libs/gst/dataprotocol/dataprotocol.c:
3276         (gst_dp_header_from_buffer):
3277         * po/nb.po:
3278         * po/ru.po:
3279         * tests/threadstate/threadstate2.c: (eos):
3280         * tools/gst-compprep.c: (main):
3281         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
3282         (print_pad_info), (print_children_info):
3283         * tools/gst-launch.c: (idle_func), (main):
3284         * tools/gst-md5sum.c: (idle_func), (main):
3285         * tools/gst-xmlinspect.c: (print_element_info):
3286         First THREADED backport attempt, focusing on adding locks and
3287         making sure the API is threadsafe. Needs more work. More docs
3288         follow this week.
3289
3290 2005-02-24  Andy Wingo  <wingo@pobox.com>
3291
3292         * tests/bench-complexity.scm:
3293         * tests/complexity.gnuplot: New files, good for running complexity
3294         benchmarks.
3295
3296         * tests/Makefile.am:
3297         * tests/complexity.c: New test, sets up N elements, at each level
3298         teeing into M streams per element. Eeeenteresting.
3299
3300         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
3301         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
3302         running bench-mass_elements.scm.
3303
3304         * tests/bench-mass_elements.scm: New script, runs mass_elements
3305         for various numbers of identities, outputting the results to a
3306         file. Requires guile 1.6. Just for testing.
3307
3308 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3309
3310         * gst/schedulers/fairscheduler.c:
3311           compile with debug disabled
3312
3313 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
3314
3315         * configure.ac:
3316           hunting season on 0.9 is now OPEN
3317
3318 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
3319
3320         * docs/libs/tmpl/gstcontrol.sgml:
3321         * docs/libs/tmpl/gstdparam.sgml:
3322         * docs/libs/tmpl/gstdplinint.sgml:
3323         * docs/libs/tmpl/gstdpman.sgml:
3324         * docs/libs/tmpl/gstdpsmooth.sgml:
3325         * docs/libs/tmpl/gstunitconvert.sgml:
3326           more docs for the state of dparams
3327
3328 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3329
3330         * gst/gstelementfactory.c: (gst_element_factory_create):
3331         * gst/gstobject.c: (gst_object_init),
3332         (gst_object_set_name_default), (gst_object_set_name):
3333           name objects by default, not in gst_element_factory_create. Allows
3334           using elements created with g_object_new. (fixes #167283)
3335
3336 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3337
3338         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
3339           make the time that debugging functions print relative to when
3340           gst_init was called
3341
3342 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
3343
3344         * gst/gsttaginterface.c:
3345           Fix inline docs: tag setter vararg functions are NULL-terminated,
3346           GST_TAG_INVALID doesn't exist any more.
3347
3348 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
3349
3350         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
3351         Allocate the 1 byte more memory that was forgotten!!!!!
3352         fixes memory corruption on 64bit platforms
3353
3354 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
3355
3356         * docs/pwg/building-pads.xml:
3357         * docs/pwg/intro-basics.xml:
3358           fixed a few typos, relabeled introductionary list of types
3359         * docs/random/ensonic/dparams.txt:
3360           more notes abut dparam changes
3361         * libs/gst/control/dparam.c: (gst_dparam_attach):
3362         * libs/gst/control/dparammanager.c:
3363         * libs/gst/control/dparammanager.h:
3364           - many comments and notes on dparam implementation
3365           - new dparams are were not initialized to the default value
3366             from param spec
3367
3368 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
3369
3370         submitted by: Peter Astakhov
3371
3372         * po/LINGUAS:
3373         * po/ru.po:
3374           adding Russian translation
3375
3376 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
3377
3378         * configure.ac:
3379         * docs/gst/Makefile.am:
3380         * docs/libs/Makefile.am:
3381           make sure popt is added to gtk-doc flags.  Fixes #147782.
3382
3383 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
3384
3385         * docs/faq/using.xml:
3386           Fix typo in FAQ (artssink => artsdsink)
3387
3388 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3389
3390         * tools/gst-launch.1.in:
3391           Fix typo (#166699).
3392
3393 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
3394
3395         * docs/faq/using.xml:
3396           Add -v argument to fakesrc/fakesink gst-launch line,
3397           so that the promised output will actually show up.
3398
3399 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3400
3401         * gst/gstthread.c: (gst_thread_change_state):
3402           Implement state-change error handling (#166073).
3403
3404 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3405
3406         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
3407           Release interrupt after handling (#166250).
3408
3409 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3410
3411         * configure.ac:
3412           back to HEAD
3413
3414 === release 0.8.9 ===
3415
3416 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3417
3418         * NEWS:
3419         * RELEASE:
3420         * configure.ac:
3421           releasing 0.8.9, "Like Eating Glass"
3422
3423 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3424
3425         submitted by: Clytie Siddall
3426
3427         * po/vi.po: Added Vietnamese translation
3428
3429 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
3430
3431         patch by: Tim Philipp-Müller
3432
3433         * configure.ac:
3434         * gst/gstpad.c:
3435           unref data when probe function returns FALSE.  Fixes #166362
3436
3437 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3438
3439         * gst/gst.c: (gst_init_get_popt_table):
3440           Fix typo (#166269).
3441
3442 2005-02-04  Andy Wingo  <wingo@pobox.com>
3443
3444         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
3445         the debugging on whether the caps are compatible.
3446
3447 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3448
3449         * docs/manual/basics-elements.xml:
3450           Fix two typos.
3451
3452 2005-02-02  Wim Taymans  <wim@fluendo.com>
3453
3454         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
3455         (schedule_chain), (get_invalid_call), (chain_invalid_call),
3456         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
3457         Remove some FIXMEs after analysing and commenting why they
3458         are not issues.
3459
3460 2005-02-02  Wim Taymans  <wim@fluendo.com>
3461
3462         * gst/schedulers/gstoptimalscheduler.c:
3463         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
3464         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
3465         (get_invalid_call), (chain_invalid_call),
3466         (get_group_schedule_function), (loop_group_schedule_function),
3467         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
3468         (gst_opt_scheduler_state_transition),
3469         (gst_opt_scheduler_add_element),
3470         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
3471         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
3472         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
3473         (gst_opt_scheduler_show):
3474         Added lock to protect scheduler data structures.
3475
3476 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3477
3478         * testsuite/threads/threadi.c: (cb_data):
3479           Fix buglet in test.
3480
3481 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3482
3483         * testsuite/threads/Makefile.am:
3484         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
3485           On Wim's request, split the test in three separately-compiled
3486           tests that each test a very specific bug. Two of them still fail,
3487           will create bugs for those. threadi.c indicates why they fail.
3488
3489 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3490
3491         * gst/schedulers/gstoptimalscheduler.c:
3492         (get_group_schedule_function):
3493           Try to work with the threading mess that queue_link is.
3494
3495 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3496
3497         * gst/gstbin.c: (gst_bin_remove_func):
3498           Explicitely make an element release locks in a group when being
3499           remove from a bin.
3500         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
3501           If there's no scheduler, always return immediately (similar to
3502           gst_element_interrupt).
3503
3504 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3505
3506         * gst/gstbin.c: (gst_bin_child_state_change_func):
3507           Remove a piece of code that could never be reached.
3508         * docs/gst/gstreamer-sections.txt:
3509         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
3510         (gst_pad_call_get_function):
3511         * gst/gstpad.h:
3512         * testsuite/pad/Makefile.am:
3513           Fix #150546, enable tests.
3514
3515 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3516
3517         * docs/pwg/advanced-types.xml:
3518           Fix description for buffer-frames=0.
3519         * docs/gst/tmpl/gstbin.sgml:
3520         * gst/gstbin.c: (gst_bin_child_state_change_func),
3521         (gst_bin_change_state), (gst_bin_change_state_norecurse):
3522         * gst/gstbin.h:
3523         * testsuite/threads/Makefile.am:
3524         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
3525         (cb_state), (cb_play), (main):
3526           Fix non-recursive state changes to *really* change the state
3527           of the object, and not just call parent_class->state_change.
3528           Fix a lot of lockups caused by this. Fixes #132775. Add test
3529           for the problem. Also enable test to show #142588 (fixed).
3530         * gst/gstthread.c: (gst_thread_change_state),
3531         (gst_thread_child_state_change):
3532           Don't exit the thread if we go to NULL and are inside thread
3533           context. Instead, return control to the main thread context
3534           and exit from there.
3535         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
3536           Don't unset virtual functions, since those may still be used.
3537           That's not necessarily correct, but suffices for now.
3538         * configure.ac:
3539         * testsuite/Makefile.am:
3540         * testsuite/pad/Makefile.am:
3541         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
3542         (gst_test_sink_base_init), (gst_test_sink_chain),
3543         (gst_test_sink_init), (main):
3544         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
3545         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
3546         (main):
3547         * testsuite/pad/link.c: (gst_test_element_class_init),
3548         (gst_test_element_base_init), (gst_test_src_get),
3549         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
3550         (gst_test_filter_loop), (gst_test_filter_init),
3551         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
3552         (cb_error), (main):
3553           Add tests to show #150546. Pass, but should fail (currently
3554           disabled from the testsuite).
3555         * gst/gstscheduler.c: (gst_scheduler_dispose):
3556           Dereference child schedulers on dispose (#94464).
3557         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
3558           Fix typo.
3559         * testsuite/threads/thread.c: (main):
3560           Add more debug.
3561
3562 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3563
3564         * gst/gstpad.c: (gst_pad_push):
3565           Oops, revert previous commit, broke testsuite...
3566
3567 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3568
3569         * gst/gstpad.c: (gst_pad_push):
3570           Add check that the pad on which the push is performed is not a
3571           get-based pad (#150546).
3572
3573 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3574
3575         * gst/elements/gsttypefindelement.c:
3576         (gst_type_find_element_handle_event):
3577           Fix buffer pushing if stream EOSes during typefinding.
3578
3579 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
3580
3581         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3582
3583         * gst/gstvalue.c: (gst_string_wrap):
3584           Allow NULL-strings as argument (#165365).
3585
3586 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
3587
3588         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3589
3590         * gst/schedulers/faircothreads.c:
3591         (gst_fair_scheduler_cothread_queue_show):
3592           Fix build without debug enabled.
3593
3594 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
3595
3596         * docs/gst/gstreamer-sections.txt:
3597         * docs/libs/gstreamer-libs-docs.sgml:
3598         * docs/libs/gstreamer-libs-sections.txt:
3599         * docs/libs/tmpl/gstcontrol.sgml:
3600         * docs/libs/tmpl/gstdparam.sgml:
3601         * docs/libs/tmpl/gstdplinint.sgml:
3602         * docs/libs/tmpl/gstdpman.sgml:
3603         * docs/libs/tmpl/gstdpsmooth.sgml:
3604         * docs/libs/tmpl/gstputbits.sgml:
3605         * docs/libs/tmpl/gstunitconvert.sgml:
3606         * libs/gst/control/dparam.c:
3607         * libs/gst/control/dparam.h:
3608         * libs/gst/control/dparammanager.c:
3609         (gst_dpman_add_required_dparam_callback),
3610         (gst_dpman_add_required_dparam_direct),
3611         (gst_dpman_add_required_dparam_array),
3612         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
3613         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
3614         (gst_dpman_get_manager)
3615           restructured DParam docs
3616
3617 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
3618
3619         * gst-element-check.m4:
3620           Only check for gst-inspect if we haven't already
3621           found it in previous element check runs
3622
3623 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
3624
3625         * docs/gst/Makefile.am:
3626         * docs/libs/Makefile.am:
3627           fixed install rules to treat style.css as optional
3628
3629 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
3630
3631         * docs/gst/Makefile.am:
3632         * docs/libs/Makefile.am:
3633           install style.css along with docs
3634         * docs/gst/tmpl/gstbin.sgml:
3635         * docs/gst/tmpl/gstclock.sgml:
3636         * docs/gst/tmpl/gstdata.sgml:
3637         * docs/gst/tmpl/gstelement.sgml:
3638         * gst/gstbin.h:
3639         * gst/gstelement.c: (gst_element_class_init):
3640         * gst/gstelement.h:
3641           fixing incomplete docs
3642
3643 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
3644
3645         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
3646           Don't unref seek event twice when fflush() fails
3647           
3648 2005-01-22  David Schleef  <ds@schleef.org>
3649
3650         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
3651
3652 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
3653
3654         * docs/gst/Makefile.am:
3655         * docs/libs/Makefile.am:
3656           added params for deprecation guards
3657         * gst/gst.c:
3658         * gst/gst.h:
3659         * gst/gsterror.c: (_gst_resource_errors_init),
3660         (_gst_stream_errors_init):
3661         * gst/gsterror.h:
3662           documented some more enums
3663
3664 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
3665         * gst/autoplug/gstspideridentity.c:
3666         Cosmetic fix - spider_find_peek should be static
3667         * gst/parse/parse.l:
3668         Applying fix for #164261
3669
3670 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
3671
3672         * docs/gst/gstreamer-sections.txt:
3673         * docs/gst/tmpl/gstplugin.sgml:
3674         * docs/libs/gstreamer-libs-sections.txt:
3675         * docs/libs/tmpl/gstcontrol.sgml:
3676         * gst/gstbuffer.h:
3677         * gst/gsttag.h:
3678         * gst/gstvalue.c:
3679           added docs for the TAG defines
3680
3681 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3682
3683         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
3684           Only unref entry if there is an entry.
3685
3686 2005-01-17  Wim Taymans  <wim@fluendo.com>
3687
3688         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3689         (remove_from_group), (schedule_group), (normalize_group),
3690         (gst_opt_scheduler_iterate):
3691         Also ref/unref decoupled elements before iterating the
3692         group since they are not added to the list of elements.
3693
3694 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3695
3696         * docs/manual/highlevel-components.xml:
3697           Add subtitle/streamselection as new features to playbin.
3698
3699 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3700
3701         * docs/manual/manual.xml:
3702           Re-enable dataaccess docs (oops).
3703
3704 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3705
3706         * docs/pwg/advanced-types.xml:
3707         * docs/random/mimetypes:
3708           Add documentation on libsndfile types (#163309), by Steve Baker
3709           <steve@stevebaker.org>.
3710         * gst/gstelement.c: (gst_element_release_request_pad):
3711           If an element has no explicit function, just remove the pad.
3712
3713 2005-01-17  Luca Ognibene  <luogni@tin.it>
3714
3715         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3716
3717         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
3718           Fix memleak (#163801).
3719
3720 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3721
3722         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
3723           I think this is actually more correct...
3724
3725 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3726
3727         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3728           Another workaround for memory access while destroyed in callback.
3729           Please, someone with refcount knowledge, have a look at this.
3730
3731 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3732
3733         * docs/faq/faq.xml:
3734         * docs/faq/legal.xml:
3735           move the legal Q&A here
3736
3737 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3738
3739         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
3740         (gst_tee_request_new_pad):
3741           Fix negotiation.
3742
3743 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3744
3745         * docs/random/omega/caps2:
3746         * testsuite/caps/caps_strings:
3747           replace framerate aproximations by their real value
3748           (24000/1001, 30000/1001, 60000/1001)
3749           Partially fixes bug #164049
3750
3751 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3752
3753         * docs/gst/Makefile.am:
3754           don't fail on the stupid GstPoptOption
3755
3756 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3757
3758         * gst/gstpad.h:
3759         * gst/gstprobe.c:
3760           allow probes to work on ghost pads by realizing the pad
3761           probe debugging
3762
3763 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3764
3765         * docs/gst/gstreamer-sections.txt:
3766         * docs/gst/tmpl/gstpad.sgml:
3767         * gst/gstpad.c: (gst_pad_set_active_recursive):
3768         * gst/gstpad.h:
3769           Add gst_pad_set_active_recursive().
3770
3771 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
3772
3773         * docs/random/release:
3774           updates
3775         * gst/gst_private.h:
3776         * gst/gstinfo.c:
3777         * gst/gstobject.c:
3778           move deep_notify logging to a new category
3779         * gst/gstprobe.c:
3780         * gst/gstprobe.h:
3781           add stuff so bindings can wrap probes
3782
3783 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3784
3785         * gst/gstplugin.c: (gst_plugin_load):
3786           Fix plugin loading if plugin/lib was already loaded. Fixes
3787           #163383
3788
3789 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
3790
3791         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3792
3793         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
3794           Protect plugin loading by a mutex so it's threadsafe. Fixes
3795           #163234.
3796
3797 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3798
3799         * gst/gstevent.c: (_gst_event_copy):
3800           Reference source object when copying events, since it'll be
3801           dereferenced on event dereferencing as well.
3802
3803 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3804
3805         * docs/gst/gstreamer-sections.txt:
3806         * docs/gst/tmpl/gstevent.sgml:
3807         * gst/gstevent.c: (gst_event_new_filler_stamped),
3808         (gst_event_filler_get_duration):
3809         * gst/gstevent.h:
3810           Add two new functions for filler events (which are used to
3811           synchronize streams if one of them is not having any data
3812           for a while) without interrupting the actual data-stream.
3813           Basically a no-op.
3814         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3815         (gst_queue_link_sink), (gst_queue_link_src),
3816         (gst_queue_change_state):
3817           Allow for renegotiation while filled. Required for stream
3818           switching while playing.
3819
3820 2005-01-08  Benjamin Otte  <otte@gnome.org>
3821
3822         * gst/gstelement.c: (gst_element_link_many):
3823           fix up g_return_if_fail's
3824         * po/LINGUAS:
3825         * po/de.po:
3826           add German translation, that was somehow not included
3827
3828 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3829
3830         * docs/random/mimetypes:
3831           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
3832           do not add them to riff-lib as they are not common
3833
3834 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3835
3836         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3837           Check for existence of probe after performing the probe before
3838           re-accessing it to prevent segfaults caused by removal of the
3839           probe in the callback.
3840
3841 2005-01-05  David Schleef  <ds@schleef.org>
3842
3843         * testsuite/registry/Makefile.am:
3844         * testsuite/registry/gst-print-formats.c:
3845         (print_pad_templates_info), (print_element_list),
3846         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
3847         (g_list_uniqify), (get_pad_templates_info),
3848         (get_element_mime_list), (print_mime_list), (main): A little
3849         program that looks through the registry to find elements of
3850         a given type.  Not particularly interesting as a test, except
3851         that there's no other test covering the same area.
3852
3853 2005-01-05  David Schleef  <ds@schleef.org>
3854
3855         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
3856         (fault_handler_sigaction), (fault_spin),
3857         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
3858         in signal.h-type signal handlers by not calling forbidden functions,
3859         including gst_element_set_state().
3860
3861 2005-01-05  David Schleef  <ds@schleef.org>
3862
3863         * gst/gstvalue.h: Mark _gst_reserved[] as private
3864
3865 2005-01-05  David Schleef  <ds@schleef.org>
3866
3867         * gst/gstvalue.c: Fix doc build problem.
3868
3869 2005-01-05  David Schleef  <ds@schleef.org>
3870
3871         * gst/gstvalue.c: Add some documentation
3872
3873 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
3874
3875         * docs/README:
3876           another shell oneliner for empty return value docs
3877         * gst/gstcaps.c:
3878         * gst/gstvalue.c:
3879         * libs/gst/control/dparam.c:
3880           more doc fixes (parameters and return values)
3881
3882 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
3883
3884         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3885
3886         * gst/gstregistry.h:
3887         * gst/registries/gstxmlregistry.c:
3888           Fix macro's for Mingw (fixes #162276).
3889
3890 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
3891
3892         * docs/README:
3893           quick shell oneliner to find undocumented members
3894         * docs/gst/tmpl/gstplugin.sgml:
3895         * docs/gst/tmpl/gstscheduler.sgml:
3896         * docs/gst/tmpl/gstthread.sgml:
3897           more enumtypes cleanup
3898         * gst/gsterror.h:
3899           activated documentation comments, now someone needs to document
3900           the enums :(
3901
3902 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3903
3904         * docs/manual/manual.xml:
3905           Add dataaccess part (doh!).
3906
3907 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3908
3909         * docs/manual/advanced-autoplugging.xml:
3910           Fix typo (intiate -> initiate).
3911
3912 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3913
3914         * docs/random/bbb/streamselection:
3915           Add some notes on how to handle multi-subtitle/-audio streams.
3916
3917 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
3918
3919         * docs/gst/gstreamer-docs.sgml:
3920         * docs/gst/gstreamer-sections.txt:
3921         * docs/gst/tmpl/gstenumtypes.sgml:
3922         * docs/gst/tmpl/gsterror.sgml:
3923         * docs/gst/tmpl/gstevent.sgml:
3924         * docs/gst/tmpl/gstpad.sgml:
3925         * docs/gst/tmpl/gstpadtemplate.sgml:
3926         * docs/gst/tmpl/gstthread.sgml:
3927           removed gstenumtypes section from docs and put all the enums into
3928           their sections
3929
3930 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3931
3932         * gst/gstplugin.c:
3933           document gst_library_load a bit more (riff special case + return
3934           value if already loaded)
3935         * testsuite/bytestream/filepadsink.c:
3936           plugin name is 'gstbytestream', not 'bytestream'
3937
3938 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3939
3940         * docs/random/bbb/subtitles:
3941           Add some first mind rumblings on proper subtitle support.
3942
3943 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3944
3945         * po/ca.po:
3946         * po/sv.po:
3947           updated translations
3948
3949 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3950
3951         * docs/manual/advanced-dataaccess.xml:
3952           Add section on how to use fakesrc/fakesink/identity in your
3953           application, plus section on how to embed plugins. Also mention
3954           probes.
3955         * docs/manual/appendix-checklist.xml:
3956         * docs/manual/appendix-debugging.xml:
3957         * docs/manual/appendix-gnome.xml:
3958         * docs/manual/appendix-integration.xml:
3959           Debug -> checklist, GNOME -> integration, add sections on Linux,
3960           KDE integration and add other things useful for application
3961           development.
3962         * docs/manual/manual.xml:
3963           Remove some fixmes, update some file pointers.
3964         * docs/pwg/appendix-checklist.xml:
3965           Fix typo.
3966         * docs/pwg/building-boiler.xml:
3967           Remove ugly header and add commented fixme.
3968         * docs/pwg/pwg.xml:
3969           Add fixme.
3970         * examples/manual/Makefile.am:
3971           Add example for added docs.
3972
3973 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3974
3975         * configure.ac:
3976           back to HEAD
3977
3978 === release 0.8.8 ===
3979
3980 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3981
3982         * NEWS:
3983         * RELEASE:
3984         * configure.ac:
3985           Releasing 0.8.8, "I'll Take Care Of You"
3986
3987 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3988
3989         * configure.ac:
3990           second prerelease
3991
3992 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3993
3994         patch by: Wim Taymans
3995
3996         * gst/gstbin.c:
3997           Fix for #159852 - make iterate emission threadsafe
3998
3999 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
4000
4001         * docs/faq/cvs.xml:
4002           notes about new fdo account request
4003
4004 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
4005
4006         * docs/gst/gstreamer-docs.sgml:
4007         * docs/gst/tmpl/gstenumtypes.sgml:
4008         * docs/gst/tmpl/gstplugin.sgml:
4009         * docs/libs/gstreamer-libs-docs.sgml:
4010           Added missing short docs. Added ids for navigation.
4011
4012 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4013
4014         * docs/manual/advanced-autoplugging.xml:
4015         * docs/manual/advanced-schedulers.xml:
4016         * docs/manual/advanced-threads.xml:
4017           Rewrites. Remove cothreads, go a bit into opt specifically,
4018           document threads and their gotchas, and do some technical stuff
4019           on autoplugging plus add some working examples. Fixes #157395.
4020         * examples/manual/Makefile.am:
4021           Add typefind/autoplugger example (one that actually works).
4022           Remove queue example since it's a duplicate of the thread one.
4023
4024 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4025
4026         * gst/gstvalue.c: (gst_value_deserialize_string):
4027           use deprecated g_value_set_string_take_ownership to keep compatible
4028           with glib 2.2
4029
4030 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4031
4032         * gst/gstvalue.c: (gst_value_deserialize_string):
4033           revert last patch, only dom a g_utf8_validate now before accepting
4034           the string - caps parsing strips " from strings so we can't rely on
4035           them
4036         * testsuite/caps/value_serialize.c: (test_string_deserialization):
4037           disable a test that tested the above and comment it
4038
4039 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
4040
4041         Patch reviewed by David Schleef  <ds@schleef.org>
4042
4043         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
4044         bug #153882)
4045         * win32/gstenumtypes.h: same
4046
4047 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4048
4049         * gst/gstpad.c: (gst_pad_query):
4050           Do query on realized pad, similar to how convert/send_event handle
4051           this. Also makes sense, since this pad belongs to the function to
4052           which this query will be sent. Fixes #158163.
4053
4054 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
4055
4056         * docs/manual/appendix-programs.xml: fix pipeline to actually work
4057
4058 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
4059
4060         * docs/faq/general.xml: fix pipeline to actually work
4061
4062 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4063
4064         * gst/gstvalue.c: (gst_value_deserialize_string):
4065           check that a simple string that gets deserialized does not contain
4066           invalid characters
4067         * testsuite/caps/value_serialize.c: (test_string_deserialization):
4068           remove a test that tested a wring behaviour
4069
4070 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
4071
4072         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4073
4074         * docs/manual/intro-motivation.xml:
4075           Fix typos.
4076
4077 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
4078
4079         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4080
4081         * docs/gst/tmpl/gstprobe.sgml:
4082           Fix documentation of probe callback - it is supposed to return
4083           FALSE, not TRUE, to remove data from the stream (#159087).
4084
4085 2004-12-16  Daniel Gazard  <dany42@free.fr>
4086
4087         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4088
4089         * gst/gstelementfactory.c: (gst_element_factory_create):
4090           Fix compile failure if compiling without libxml2 support (#149936).
4091
4092 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4093
4094         * docs/manual/advanced-autoplugging.xml:
4095         * docs/manual/highlevel-components.xml:
4096           Move spider from autoplugging to components. Autoplugging is for
4097           internals, not for solutions. ;-).
4098
4099 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4100
4101         * docs/random/ds/0.9-suggested-changes:
4102           Make note on device/location/uri property names.
4103
4104 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4105
4106         * docs/manual/advanced-autoplugging.xml:
4107         * docs/manual/advanced-clocks.xml:
4108         * docs/manual/advanced-interfaces.xml:
4109         * docs/manual/advanced-metadata.xml:
4110         * docs/manual/advanced-position.xml:
4111         * docs/manual/advanced-schedulers.xml:
4112         * docs/manual/advanced-threads.xml:
4113         * docs/manual/appendix-gnome.xml:
4114         * docs/manual/appendix-programs.xml:
4115         * docs/manual/appendix-quotes.xml:
4116         * docs/manual/autoplugging.xml:
4117         * docs/manual/basics-bins.xml:
4118         * docs/manual/basics-data.xml:
4119         * docs/manual/basics-elements.xml:
4120         * docs/manual/basics-helloworld.xml:
4121         * docs/manual/basics-init.xml:
4122         * docs/manual/basics-pads.xml:
4123         * docs/manual/basics-plugins.xml:
4124         * docs/manual/bins-api.xml:
4125         * docs/manual/bins.xml:
4126         * docs/manual/buffers-api.xml:
4127         * docs/manual/buffers.xml:
4128         * docs/manual/clocks.xml:
4129         * docs/manual/components.xml:
4130         * docs/manual/cothreads.xml:
4131         * docs/manual/debugging.xml:
4132         * docs/manual/dparams-app.xml:
4133         * docs/manual/dynamic.xml:
4134         * docs/manual/elements-api.xml:
4135         * docs/manual/elements.xml:
4136         * docs/manual/factories.xml:
4137         * docs/manual/gnome.xml:
4138         * docs/manual/goals.xml:
4139         * docs/manual/helloworld.xml:
4140         * docs/manual/helloworld2.xml:
4141         * docs/manual/highlevel-components.xml:
4142         * docs/manual/highlevel-xml.xml:
4143         * docs/manual/init-api.xml:
4144         * docs/manual/intro-basics.xml:
4145         * docs/manual/intro-motivation.xml:
4146         * docs/manual/intro-preface.xml:
4147         * docs/manual/intro.xml:
4148         * docs/manual/links-api.xml:
4149         * docs/manual/links.xml:
4150         * docs/manual/manual.xml:
4151         * docs/manual/motivation.xml:
4152         * docs/manual/pads-api.xml:
4153         * docs/manual/pads.xml:
4154         * docs/manual/plugins-api.xml:
4155         * docs/manual/plugins.xml:
4156         * docs/manual/programs.xml:
4157         * docs/manual/queues.xml:
4158         * docs/manual/quotes.xml:
4159         * docs/manual/schedulers.xml:
4160         * docs/manual/states-api.xml:
4161         * docs/manual/states.xml:
4162         * docs/manual/threads.xml:
4163         * docs/manual/typedetection.xml:
4164         * docs/manual/win32.xml:
4165         * docs/manual/xml.xml:
4166           Try 2. This time, include a short preface as a "general
4167           introduction", also add code blocks around all code samples
4168           so they get compiled. We still need a way to tell readers
4169           the filename of the code sample. In some cases, don't show
4170           all code in the documentation, but do include it in the generated
4171           code. This allows for focussing on specific bits in the docs,
4172           while still having a full test application available.
4173         * examples/manual/Makefile.am:
4174           Fix up examples for new ADM. Add several of the new examples that
4175           were either added or were missing from the build system.
4176         * examples/manual/extract.pl:
4177           Allow nameless blocks.
4178
4179 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4180
4181         * docs/manual/elements-api.xml:
4182         * docs/manual/helloworld.xml:
4183         * examples/manual/extract.pl:
4184           fix last example.  Add example of adding code blocks that are not
4185           shown in docbook output.
4186
4187 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4188
4189         * docs/manual/dynamic.xml:
4190         * docs/manual/elements-api.xml:
4191         * docs/manual/gnome.xml:
4192         * docs/manual/helloworld2.xml:
4193         * docs/manual/init-api.xml:
4194         * docs/manual/queues.xml:
4195         * docs/manual/threads.xml:
4196         * docs/manual/xml.xml:
4197         * examples/manual/extract.pl:
4198           Make it possible to extract example code from separate blocks.
4199           Should make Ronald happy.
4200
4201 2004-12-15  Wim Taymans  <wim@fluendo.com>
4202
4203         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4204         (remove_from_group), (group_elements_set_visited),
4205         (normalize_group), (gst_opt_scheduler_iterate):
4206         Fix bug where a flag was not updated on a decoupled entry point 
4207         because we were just checking the group element list and decoupled
4208         elements are not in that list..
4209
4210 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4211
4212         * docs/manual/advanced-autoplugging.xml:
4213         * docs/manual/advanced-clocks.xml:
4214         * docs/manual/advanced-dparams.xml:
4215         * docs/manual/advanced-interfaces.xml:
4216         * docs/manual/advanced-metadata.xml:
4217         * docs/manual/advanced-position.xml:
4218         * docs/manual/advanced-schedulers.xml:
4219         * docs/manual/advanced-threads.xml:
4220         * docs/manual/appendix-debugging.xml:
4221         * docs/manual/appendix-gnome.xml:
4222         * docs/manual/appendix-programs.xml:
4223         * docs/manual/appendix-quotes.xml:
4224         * docs/manual/appendix-win32.xml:
4225         * docs/manual/autoplugging.xml:
4226         * docs/manual/basics-bins.xml:
4227         * docs/manual/basics-data.xml:
4228         * docs/manual/basics-elements.xml:
4229         * docs/manual/basics-helloworld.xml:
4230         * docs/manual/basics-init.xml:
4231         * docs/manual/basics-pads.xml:
4232         * docs/manual/basics-plugins.xml:
4233         * docs/manual/bins-api.xml:
4234         * docs/manual/bins.xml:
4235         * docs/manual/buffers-api.xml:
4236         * docs/manual/buffers.xml:
4237         * docs/manual/clocks.xml:
4238         * docs/manual/components.xml:
4239         * docs/manual/cothreads.xml:
4240         * docs/manual/debugging.xml:
4241         * docs/manual/dparams-app.xml:
4242         * docs/manual/dynamic.xml:
4243         * docs/manual/elements-api.xml:
4244         * docs/manual/elements.xml:
4245         * docs/manual/factories.xml:
4246         * docs/manual/gnome.xml:
4247         * docs/manual/goals.xml:
4248         * docs/manual/helloworld.xml:
4249         * docs/manual/helloworld2.xml:
4250         * docs/manual/highlevel-components.xml:
4251         * docs/manual/highlevel-xml.xml:
4252         * docs/manual/init-api.xml:
4253         * docs/manual/intro-motivation.xml:
4254         * docs/manual/intro-preface.xml:
4255         * docs/manual/intro.xml:
4256         * docs/manual/links-api.xml:
4257         * docs/manual/links.xml:
4258         * docs/manual/manual.xml:
4259         * docs/manual/motivation.xml:
4260         * docs/manual/pads-api.xml:
4261         * docs/manual/pads.xml:
4262         * docs/manual/plugins-api.xml:
4263         * docs/manual/plugins.xml:
4264         * docs/manual/programs.xml:
4265         * docs/manual/queues.xml:
4266         * docs/manual/quotes.xml:
4267         * docs/manual/schedulers.xml:
4268         * docs/manual/states-api.xml:
4269         * docs/manual/states.xml:
4270         * docs/manual/threads.xml:
4271         * docs/manual/typedetection.xml:
4272         * docs/manual/win32.xml:
4273         * docs/manual/xml.xml:
4274           First try at rewriting the ADM. Needs lotsamore work, but some
4275           parts might already be somewhat useful.
4276         * docs/pwg/advanced-interfaces.xml:
4277           Remove properties interface, it never actually existed (except for
4278           on my HD...).
4279
4280 2004-12-13  David Schleef  <ds@schleef.org>
4281
4282         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
4283         be NULL (bug #160220).
4284
4285 2004-12-13  David Schleef  <ds@schleef.org>
4286
4287         * configure.ac: remove all mmx stuff, because it's not used.
4288         * docs/random/ds/0.9-suggested-changes: additional notes
4289         * include/Makefile.am: we don't use these anymore
4290         * include/mmx.h: remove
4291         * include/sse.h: remove
4292
4293 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4294
4295         * docs/random/mimetypes:
4296           Add FOURCC code for h264 codec (VSSH)
4297           Add alternate FOURCC codes for h263 related codecs
4298
4299 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
4300
4301         * docs/manual/programs.xml:
4302           Added more gst-launch examples.
4303
4304 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4305
4306         * gst/gstqueue.c: (gst_queue_handle_src_query):
4307           Check for availability again.
4308
4309 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4310
4311         * gst/gstcaps.c: (gst_caps_compare_structures):
4312           Simple caps go first. This has the nice side-effect of fixing an
4313           obscure warning.
4314
4315 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4316
4317         * gst/gstversion.h.in:
4318           Protect header.
4319
4320 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4321
4322         * gst/schedulers/gstoptimalscheduler.c:
4323         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
4324         (gst_opt_scheduler_get_wrapper):
4325           When we're recursing into a chain run, only run the directly
4326           related group, not all queued ones. This will fix a possible
4327           deadlock in chains with more than two groups.
4328
4329 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4330
4331         * autogen.sh:
4332           remove patch if autopoint fails
4333
4334 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4335
4336         * docs/gst/gstreamer-sections.txt:
4337           Document Thomas' addition, fix build, make Luis the sheriff happy.
4338
4339 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4340
4341         * gst/gstplugin.c:
4342         * gst/gstplugin.h:
4343           add accessor for version field
4344
4345 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4346
4347         submitted by: Luca Ferretti <elle.uca@infinito.it>
4348
4349         * po/LINGUAS:
4350         * po/it.po:
4351           New tranlation added: Italian
4352
4353 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4354
4355         * gst/gstpad.c: (gst_pad_is_negotiated),
4356         (gst_pad_get_negotiated_caps):
4357           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
4358           it doesn't actually check the contents), so be sure to hand it
4359           a RealPad else we'll crash.
4360
4361 2004-12-03  Wim Taymans  <wim@fluendo.com>
4362
4363         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4364         (gst_queue_link), (gst_queue_handle_src_query):
4365         Reverted to 1.110 until this makes the testsuite and various
4366         apps work.
4367
4368 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
4369
4370         * docs/upload.mak: fix included CVS conflict strings
4371
4372 2004-12-01  William Jon McCann  <mccann@jhu.edu>
4373
4374         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4375
4376         * gst/gstelement.c: (gst_element_error_full):
4377           Use g_error_new_literal because error text may have
4378           percentage signs in it. Fixes #160019.
4379
4380 2004-12-01  Benjamin Otte  <otte@gnome.org>
4381
4382         * gst/elements/gstbufferstore.c:
4383         (gst_buffer_store_add_buffer_func):
4384           don't try to make subbuffers bigger than they can be. (fixes
4385           #159970)
4386
4387 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4388
4389         * docs/gst/gstreamer-sections.txt:
4390         * docs/gst/tmpl/gstvalue.sgml:
4391           Add new function to docs to fix build.
4392
4393 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4394
4395         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
4396         * gst/gstpad.c: (_gst_pad_default_fixate_value),
4397         (_gst_pad_default_fixate_foreach):
4398         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
4399         * gst/gstvalue.h:
4400           Deprecate _type_is_fixed, use _value_is_fixed instead, since
4401           in some cases (arrays), the fixedness depends on the content.
4402         * gst/gstqueue.c: (gst_queue_handle_src_query):
4403           Check for availability before doing something.
4404
4405 2004-11-29  Wim Taymans  <wim@fluendo.com>
4406
4407         * testsuite/threads/Makefile.am:
4408         * testsuite/threads/signals.c: (gst_test_get_type),
4409         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
4410         (gst_test_set_property), (gst_test_get_property),
4411         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
4412         (gst_test_do_prop), (run_thread), (main):
4413         Added a bunch of testcases that show threadsafety bugs in glib.
4414
4415 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
4416
4417         * docs/manual/programs.xml:
4418           Added a first batch of gst-launch examples, as provided by Ronald
4419           and others from the devel-mlist
4420
4421 2004-11-28  Benjamin Otte  <otte@gnome.org>
4422
4423         * gst/gstelement.c: (gst_element_negotiate_pads):
4424           simplify
4425         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
4426         (gst_value_serialize_string), (gst_value_deserialize_string):
4427           add unwrapping of previously wrapped strings. Fix bug in wrapping
4428           while at it.
4429         * testsuite/caps/value_serialize.c: (test1),
4430         (test_string_serialization), (test_string_deserialization), (main):
4431           add tests for string (de)serialization
4432
4433 2004-11-26  Wim Taymans  <wim@fluendo.com>
4434
4435         * testsuite/threads/159566.c: (object_deep_notify), (main):
4436         * testsuite/threads/Makefile.am:
4437         Added testsuite to show bug #159566
4438
4439 2004-11-25  Wim Taymans  <wim@fluendo.com>
4440
4441         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
4442         (gst_thread_child_state_change), (gst_thread_main_loop):
4443         Ref the thread object in the GThread mainloop. Break out of the
4444         thread mainloop if it holds the last ref. This properly exits
4445         the threads when disposing the thread from its own context. It
4446         also avoids possible deadlocks in the dispose function.
4447
4448 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
4449
4450         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
4451         it is necessary to wait.
4452
4453 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4454
4455         * docs/pwg/building-boiler.xml:
4456           Make description somewhat clearer.
4457
4458 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4459
4460         * docs/upload.mak:
4461           Apparently docs changed location on FDO's server.
4462
4463 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4464
4465         * docs/pwg/appendix-checklist.xml:
4466           Add some random notes on things to check when writing an element.
4467           This list can be extended as people see fit.
4468
4469 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
4470
4471         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
4472         (gst_queue_link_src): Allow for renegotiating the caps of the sink
4473         pad. The queue will now wait until it is empty and forward the new
4474         caps to the source.
4475         * gst/gstbin.c (gst_bin_set_element_sched)
4476         (gst_bin_unset_element_sched): Make sure that all elements and
4477         links are registered and unregistered with the scheduler exactly
4478         once. This elaborates on a fix by Benjamin Otte, but
4479         guarantees that decoupled elements are also registered.
4480
4481 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4482
4483         * docs/manual/quotes.xml:
4484           add a quote
4485         * configure.ac:
4486         * gst/gst.c:
4487         * gst/gstinfo.c:
4488           add LIBDIR and move init message higher up so it's at the start
4489
4490 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
4491
4492         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
4493         * gstreamer.spec.in: add fair
4494
4495 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4496
4497         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4498         * gst/elements/gstidentity.c: (gst_identity_class_init):
4499           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
4500           <teuf@gnome.org> (#157263).
4501         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
4502         (gst_type_find_handle_src_query):
4503           Subtract size of internally stored data from position queries.
4504
4505 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
4506
4507         * gst/schedulers/fairscheduler.c:
4508         * gst/schedulers/faircothreads.c:
4509         * gst/schedulers/faircothreads.h:
4510         New cothread based scheduler: Fair scheduler.
4511         * gst/schedulers/gthread-cothreads.h: 
4512         Add the standard #if around the whole file.
4513         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
4514         compilation of the functions defined in this file. This is
4515         necessary to be able to use this file as a normal header.
4516         * gst/schedulers/Makefile.am: Add compiling support for fair
4517         scheduler.
4518         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
4519         scheduler cothreads layer from documentation generation.
4520
4521 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4522
4523         * gst/autoplug/gstspideridentity.c:
4524         (gst_spider_identity_sink_loop_type_finding):
4525           Don't crash if that function is not implemented.
4526
4527 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4528
4529         * docs/pwg/advanced-types.xml:
4530           Another typo.
4531
4532 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4533
4534         * docs/pwg/intro-preface.xml:
4535           Hm, ok, so the brackets weren't really useful...
4536         * docs/pwg/other-ntoone.xml:
4537           Fix embarassing typo.
4538
4539 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4540
4541         * docs/pwg/intro-preface.xml:
4542           Rewrite preface.
4543
4544 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4545
4546         * docs/pwg/advanced-scheduling.xml:
4547         * docs/pwg/advanced-tagging.xml:
4548         * docs/pwg/advanced-types.xml:
4549         * docs/pwg/building-boiler.xml:
4550         * docs/pwg/building-chainfn.xml:
4551         * docs/pwg/building-signals.xml:
4552         * docs/pwg/building-state.xml:
4553         * docs/pwg/building-testapp.xml:
4554         * docs/pwg/intro-basics.xml:
4555         * docs/pwg/other-manager.xml:
4556         * docs/pwg/other-source.xml:
4557           Typo fixes.
4558         * docs/pwg/other-manager.xml:
4559           Add some first content. No example code yet.
4560         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4561           Remove double newlines.
4562
4563 2004-11-04  Wim Taymans  <wim@fluendo.com>
4564
4565         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4566         (remove_from_group), (normalize_group), (group_migrate_connected),
4567         (gst_opt_scheduler_iterate):
4568         * testsuite/schedulers/.cvsignore:
4569         * testsuite/schedulers/Makefile.am:
4570         * testsuite/schedulers/queue_link.c: (main):
4571         Added testcase for scheduler segfault.
4572         Fix scheduler segfault when removing a decoupled
4573         entry point as the last element from a group.
4574
4575 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4576
4577         * gst/gstmarshal.list: add missing marshaller, fixes build
4578
4579 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4580
4581         * docs/random/signal: added notes about using BOXED for GstBuffer
4582         signal marshallers, not POINTER
4583
4584 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4585
4586         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4587         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
4588         POINTER=>BOXED changes to marshal GstBuffers
4589
4590 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4591
4592         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
4593         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
4594
4595 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
4596
4597         * docs/gst/gstreamer-sections.txt:
4598         * docs/gst/tmpl/gstcaps.sgml:
4599         * docs/gst/tmpl/gsterror.sgml:
4600         * docs/gst/tmpl/gstinfo.sgml:
4601         * docs/gst/tmpl/gstmacros.sgml:
4602         * docs/gst/tmpl/gstutils.sgml:
4603         * docs/random/ensonic/interfaces.txt:
4604         * gst/gstinfo.h:
4605           added some more docs, removed two obsolete defines
4606
4607 2004-11-02  Kjartan Maraas <as at gnome.org>
4608
4609         reviewed by: Wim Taymans, Ronald Bultje.
4610
4611         * gst/cothreads.c: (cothread_create):
4612         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
4613         (gst_bin_child_state_change_func):
4614         * gst/gstbuffer.c: (gst_buffer_span):
4615         * gst/gstelement.c: (gst_element_get_index),
4616         (gst_element_get_event_masks), (gst_element_get_query_types),
4617         (gst_element_get_formats):
4618         * gst/gsterror.c: (_gst_core_errors_init),
4619         (_gst_library_errors_init), (_gst_resource_errors_init),
4620         (_gst_stream_errors_init):
4621         * gst/gstobject.c: (gst_object_default_deep_notify):
4622         * gst/gstpad.c: (gst_pad_get_event_masks),
4623         (gst_pad_get_internal_links_default):
4624         * gst/gstplugin.c: (gst_plugin_register_func),
4625         (gst_plugin_get_module):
4626         * gst/gststructure.c: (gst_structure_get_string),
4627         (gst_structure_get_abbrs), (gst_structure_from_abbr),
4628         (gst_structure_to_abbr):
4629         * gst/gstutils.c: (gst_print_element_args):
4630         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4631         (setup_group_scheduler), (gst_opt_scheduler_iterate):
4632         Aplied part of patch #157127: Cleanup of issues reported by 
4633         sparse.
4634         Also do not try to use cothreads when there is no cothread
4635         context yet.
4636
4637 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
4638
4639         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4640         (gst_opt_scheduler_iterate):
4641         Applied patch #154061. Running a pipeline in which an element 
4642         calls GST_ELEMENT_ERROR in the chain function, the opt 
4643         scheduler doesn't unref the chain so it never gets freed.
4644
4645 2004-11-02  Wim Taymans  <wim@fluendo.com>
4646
4647         * gst/gststructure.c: (gst_structure_get_abbrs),
4648         (gst_structure_from_abbr), (gst_structure_to_abbr):
4649         Remove that ugly if-then thing in the code that converts
4650         between strings and types.
4651
4652 2004-11-02  Wim Taymans  <wim@fluendo.com>
4653
4654         * gst/gstscheduler.c: (gst_scheduler_add_element),
4655         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
4656         Aplied clock distribution patch, this should fix bug
4657         #148787.
4658
4659 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
4660
4661         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
4662
4663         * po/LINGUAS:
4664         * po/nb.po:
4665           Added Norwegian Bokmaal translation
4666
4667 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4668
4669         * tools/gst-inspect.c: (print_signal_info):
4670           print signal arguments as pointers if they are
4671
4672 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
4673
4674         * docs/pwg/building-boiler.xml:
4675           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
4676
4677 2004-10-19  Wim Taymans  <wim at fluendo dot com>
4678
4679         * gst/parse/parse.l:
4680         * testsuite/parse/parse1.c: (main):
4681         Since parse can do 'element name=a:b' make 'a:b.' work as
4682         well. 
4683         Added testcase to verify fix.
4684
4685 2004-10-19  Wim Taymans  <wim at fluendo dot com>
4686
4687         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
4688         Use the realpad when printing the direction.
4689         Add extra \n when printing extensions of typefind factories.
4690
4691 2004-10-13  David Schleef  <ds@schleef.org>
4692
4693         * examples/manual/Makefile.am: $< isn't portable in Makefile
4694         rules.
4695
4696 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
4697
4698         * docs/gst/tmpl/gstobject.sgml:
4699         * docs/gst/tmpl/gstplugin.sgml:
4700         * docs/gst/tmpl/gstpluginfeature.sgml:
4701         * docs/gst/tmpl/gstregistry.sgml:
4702         * docs/gst/tmpl/gstversion.sgml:
4703         * gst/gstbin.c:
4704           more api documentation
4705         * gst/gstplugin.c: (gst_plugin_register_func),
4706         (gst_plugin_check_file), (gst_plugin_load_file):
4707           better error signaling and logging
4708
4709 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4710
4711         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
4712           Subtract current queue contents from position queries.
4713
4714 2004-10-11  Johan Dahlin  <johan@gnome.org>
4715
4716         * gst/gsturi.c (gst_uri_get_location): unescape string
4717         (gst_uri_construct): escape string.
4718
4719 2004-10-11  Benjamin Otte  <otte@gnome.org>
4720
4721         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
4722         (gst_pad_try_set_caps_nonfixed):
4723           allow renegotiation of unconnected pads (as inside spider). Simply
4724           return OK if unconnected - mimic try_set_caps there.
4725
4726 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4727
4728         * gst/gstbin.c: (gst_bin_sync_children_state):
4729           Add missing break.
4730
4731 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4732
4733         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
4734         Set element to EOS before sending EOS event
4735
4736 2004-10-08  Wim Taymans  <wim at fluendo dot com>
4737
4738         * gst/elements/gsttypefindelement.c:
4739         (gst_type_find_element_handle_event):
4740         Handle EOS events when doing the transition from
4741         typefind to data passing. This should fix the
4742         infinite loops in short files.
4743
4744 2004-10-07  Wim Taymans  <wim at fluendo dot com>
4745
4746         * gst/gstthread.c: (gst_thread_change_state),
4747         (gst_thread_child_state_change):
4748         Make sure no iteration happens while performing
4749         the state change as it could mess up the internal
4750         consistency of the thread state.
4751
4752 2004-10-07  Wim Taymans  <wim at fluendo dot com>
4753
4754         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
4755         (gst_thread_change_state), (gst_thread_child_state_change):
4756         Do not try to grab the iterate lock in the state change method
4757         when we are in the same thread as the iterate or else we
4758         could deadlock. Some other cleanups.
4759
4760 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4761
4762         * configure.ac:
4763           bump nano to cvs
4764
4765 === release 0.8.7 ===
4766
4767 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4768
4769         * configure.ac:
4770         * NEWS:
4771         * RELEASE:
4772         * configure.ac:
4773           releasing 0.8.7, "A Cruise"
4774
4775 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4776
4777         * docs/random/mimetypes:
4778         Add an entry for Sony ATRAC3 audio format with mime-type
4779         used by rmdemux et riff-read
4780
4781 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4782
4783         * gst/elements/gsttypefindelement.c: (stop_typefinding):
4784         Push the buffer store instead of clearing it in case that
4785         the stream is not seekable.
4786
4787 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4788
4789         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
4790         (gst_thread_main_loop):
4791         Lock the iteration and the state change so that automatic
4792         negotiation and fixation does not happen at the same time
4793         as the in stream negotiation.
4794
4795 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4796
4797         * configure.ac:
4798           bump nano to cvs
4799
4800 === release 0.8.6 ===
4801
4802 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4803
4804         * configure.ac:
4805         * NEWS:
4806         * RELEASE:
4807         * configure.ac:
4808           releasing 0.8.6, "Narc"
4809
4810 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4811
4812         * configure.ac:
4813           prerel bump
4814
4815 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4816
4817         patch by: Steve Lhomme
4818
4819         * gst/elements/gstfakesrc.c:
4820         * gst/elements/gstidentity.c:
4821         * gst/gstthread.c:
4822           Fix for #153881
4823
4824 2004-10-01  Wim Taymans  <wim at fluendo dot com>
4825
4826         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
4827         Fix threadsafety of the crc checking function.
4828
4829 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4830
4831         patch by: Ronald Bultje
4832
4833         * gst/elements/gsttypefindelement.c: (stop_typefinding),
4834         (gst_type_find_element_handle_event),
4835         (gst_type_find_element_chain):
4836         * gst/elements/gsttypefindelement.h:
4837          #153657.
4838          Filter out discont event from seekable sources when typefind
4839          asks them to seek.  Fixes typefind with demuxers for
4840          avi, asf and matroska.
4841
4842 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4843
4844         * docs/gst/gstreamer-sections.txt:
4845         * gst/gstcaps.c:
4846         * gst/gstcaps.h:
4847         * gst/gstpad.c:
4848           Revert preferred caps: (#147789)
4849
4850 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
4851
4852         * win32/dirent.c:
4853           fix a memory leak
4854
4855 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4856
4857         * configure.ac:
4858           bump for prerelease
4859
4860 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4861
4862         * docs/Makefile.am:
4863         * docs/manual/elements-api.xml:
4864           restructure so that common stuff is shown first
4865         * docs/manual/init-api.xml:
4866           convert to examples
4867         * docs/manual/manual.xml:
4868         * docs/manuals.mak:
4869         * docs/url.entities:
4870           link to API on the website, possibly override later in build
4871         * examples/manual/.cvsignore:
4872           ignore more
4873         * examples/manual/Makefile.am:
4874           add more examples
4875         * examples/manual/extract.pl:
4876           error out on failure
4877
4878 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4879
4880         * docs/gst/tmpl/gstthread.sgml:
4881         * docs/manual/init-api.xml:
4882         * examples/manual/Makefile.am:
4883           convert two code bits to examples
4884
4885 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4886
4887         * gst/gstelement.c: (gst_element_change_state):
4888           Well, actually, I was about to remove this insane assert when
4889           I noticed Wim already did that. A warning is nice so we can
4890           fix actual ugs (using --g-fatal-warnings and backtraces), so
4891           I added that instead.
4892
4893 2004-09-06  Wim Taymans  <wim@fluendo.com>
4894
4895         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
4896         (gst_element_threadsafe_properties_post_run),
4897         (gst_element_set_state), (gst_element_change_state):
4898         Added extra refcounting around various places. 
4899
4900 2004-09-06  Wim Taymans  <wim@fluendo.com>
4901
4902         * gst/gstpad.c: (gst_pad_link_call_link_functions):
4903         Fix debug info.
4904
4905 2004-09-06  Wim Taymans  <wim@fluendo.com>
4906
4907         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4908         (remove_from_group):
4909         Some more debug info.
4910
4911 2004-09-03  Wim Taymans  <wim@fluendo.com>
4912
4913         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4914         (gst_fakesrc_init), (gst_fakesrc_set_clock),
4915         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4916         (gst_fakesrc_get), (gst_fakesrc_change_state):
4917         * gst/elements/gstfakesrc.h:
4918         * gst/elements/gstidentity.c: (gst_identity_class_init),
4919         (gst_identity_init), (gst_identity_chain),
4920         (gst_identity_set_property), (gst_identity_get_property),
4921         (gst_identity_change_state):
4922         * gst/elements/gstidentity.h:
4923         Added datarate properties to limit the datarate.
4924
4925 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4926
4927         * gst/autoplug/gstspider.c: (plugin_init):
4928           don't set a rank. We don't want to autoplug by inserting spiders.
4929
4930 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4931
4932         * gst/autoplug/gstspider.c: (gst_spider_class_init),
4933         (gst_spider_identity_plug):
4934           add a template for spider's sink
4935         * gst/gst.c: (gst_register_core_elements):
4936           queue's rank should be NULL, we don't want spider to add it.
4937
4938 2004-08-18  David Schleef  <ds@schleef.org>
4939
4940         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
4941         * docs/libs/Makefile.am: same
4942         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
4943         * docs/random/ds/0.9-planning: random additions
4944         * docs/random/ds/0.9-suggested-changes: same
4945         * gst/gstxml.h: remove vestigal GstXMLNs definition
4946
4947         Preferred caps: (#147789)
4948         * docs/gst/gstreamer-sections.txt: Add symbols
4949         * docs/gst/tmpl/gstcaps.sgml: Add symbols
4950         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
4951         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
4952         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
4953         (gst_caps_get_preferred), (gst_caps_set_preferred),
4954         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
4955         (gst_caps_use_preferred): Handle caps preferences
4956         * gst/gstcaps.h: Add caps preferences
4957         * gst/gstpad.c: (gst_pad_link_get_preferred),
4958         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
4959         (gst_pad_renegotiate), (gst_pad_guess_preferred),
4960         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
4961         negotiation.
4962
4963 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4964
4965         * gst/autoplug/gstspideridentity.c:
4966         (gst_spider_identity_request_new_pad):
4967         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
4968         (gst_aggregator_init):
4969         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4970         (gst_fakesink_init):
4971         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4972         (gst_fakesrc_init):
4973         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
4974         (gst_fdsink_init):
4975         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
4976         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
4977         (gst_filesink_init):
4978         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4979         (gst_filesrc_init):
4980         * gst/elements/gstidentity.c: (gst_identity_base_init),
4981         (gst_identity_init):
4982         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
4983         (gst_multifilesrc_init):
4984         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
4985         (gst_pipefilter_init):
4986         * gst/elements/gststatistics.c: (gst_statistics_base_init),
4987         (gst_statistics_init):
4988         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
4989         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
4990           s/gst_pad_new/&_from_template/
4991           register pad templates in the base_init function
4992           add static pad template definitions
4993
4994 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4995
4996         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
4997         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
4998         * testsuite/refcounting/pad.c: (main):
4999         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
5000           s/gst_pad_new/&_from_template/
5001           prepare deprecation of gst_pad_new
5002
5003 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
5004
5005         patch by: Luca Ognibene <skaboy81@virgilio.it>
5006
5007         * gst/gstcaps.c:
5008         * gst/gstelement.c:
5009         * gst/gstpad.c:
5010         * gst/gstxml.c:
5011           fix memleaks.  Fixes #150001
5012
5013 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5014
5015         * docs/random/ds/0.9-suggested-changes:
5016           add notes - mostly about pad templates
5017
5018 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
5019
5020         * win32/GStreamer.vcproj:
5021           temporary locale files are .gmo not .mo
5022
5023 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5024
5025         * configure.ac: bump nano to cvs
5026
5027 === release 0.8.5 ===
5028
5029 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5030
5031         * configure.ac:
5032           releasing 0.8.5, "Stuttgart"
5033         * NEWS:
5034         * RELEASE:
5035         * configure.ac:
5036         * docs/random/release:
5037           updates for release
5038
5039 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5040
5041         patch by: Wim Taymans (wim@fluendo.com)
5042
5043         * gst/gstbuffer.c:
5044         * gst/gstindex.h:
5045         * libs/gst/dataprotocol/dataprotocol.c:
5046           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
5047
5048 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5049
5050         * Makefile.am:
5051         * win32/MANIFEST:
5052           add win32 dir to the build.  Fixes #149981.
5053
5054 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5055
5056         * configure.ac:
5057           bump libtool versioning
5058         * gst/gststructure.c:
5059           mark function as static
5060         * po/af.po:
5061         * po/az.po:
5062         * po/ca.po:
5063         * po/cs.po:
5064         * po/en_GB.po:
5065         * po/fr.po:
5066         * po/nl.po:
5067         * po/sq.po:
5068         * po/sr.po:
5069         * po/sv.po:
5070         * po/tr.po:
5071         * po/uk.po:
5072           translations update
5073         * win32/README.txt:
5074           trademark protection
5075
5076 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5077
5078         * configure.ac:
5079           fix GST_ORIGIN
5080           set GST_PACKAGE to source, and distinguish between release and other
5081         * tools/gst-inspect.c:
5082           print out plugin an element factory is part of so we see this info
5083
5084 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5085
5086         * docs/gst/gstreamer-sections.txt:
5087         * docs/gst/tmpl/gstbuffer.sgml:
5088         * docs/gst/tmpl/gstschedulerfactory.sgml:
5089           reorder docs a little, make GstBuffer's more sensible.
5090         * gst/gstbuffer.h:
5091           API: added GST_BUFFER_FLAG_DELTA_UNIT
5092         * gst/gstscheduler.c:
5093           comment API addition
5094
5095 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5096
5097         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
5098           work with non-regular files that can be mmapped (like /dev/zero)
5099         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
5100           get rid of typefinds that require a seek when we can't seek instead
5101           of trying them over and over again
5102         * tools/gst-launch.c: (idle_func), (error_cb), (main):
5103           return non-zero failure value when the pipeline was interrupted or
5104           an error occurred
5105
5106 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5107
5108         * win32/config.h:
5109         * win32/GStreamer.vcproj:
5110           compile and install the locales
5111
5112 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5113
5114         * gst/gstvalue.c:
5115           fix a possible memory leak under Windows
5116
5117 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5118
5119         * win32/GStreamer.vcproj:
5120           fix a memory leak that occured under Windows
5121         * win32/gstreamer.def:
5122           add gst_scheduler_register
5123
5124 2004-08-11  Benjamin Otte  <otte@gnome.org>
5125
5126         * docs/gst/gstreamer-sections.txt:
5127         * gst/gstscheduler.c: (gst_scheduler_register):
5128         * gst/gstscheduler.h:
5129           API:
5130           add gst_scheduler_register shortcut similar to gst_element_register
5131         * gst/schedulers/entryscheduler.c: (plugin_init):
5132         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
5133         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
5134           use it
5135
5136 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
5137
5138         * gst/gstvalue.h:
5139           fix a memory leak that occured under Windows
5140
5141 2004-08-10  Colin Walters  <walters@redhat.com>
5142
5143         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
5144         Don't use O_EXCL to open temporary registry.  It will prevent
5145         registry creation if a temporary one already exists, which
5146         is unnecessary.
5147
5148 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5149
5150         * docs/gst/gstreamer-sections.txt:
5151         * docs/gst/tmpl/gstvalue.sgml:
5152           remove some valuable stuff from the documentation due to the use of GST_EXPORT
5153
5154 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5155
5156         * win32/gstbytestream.vcproj:
5157         * win32/gstelements.vcproj:
5158         * win32/gstgetbits.vcproj:
5159         * win32/gst-inspect.vcproj:
5160         * win32/gst-launch.vcproj:
5161         * win32/gstoptimalscheduler.vcproj:
5162         * win32/GStreamer.vcproj:
5163         * win32/gst-register.vcproj:
5164         * win32/gstspider.vcproj:
5165           update the include and lib dirs to fit standard libraries as
5166           described in the Win32 manual
5167
5168 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5169
5170         * win32/config.h:
5171         * win32/gstversion.h:
5172           enable NLS again, push the version number for the coming 0.8.5 release
5173
5174 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5175
5176         * gst/gstvalue.h:
5177           export gst_type_XXX for windows DLLs
5178
5179 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5180
5181         * docs/faq/gst-uninstalled:
5182           fix PKG_CONFIG_PATH and PYTHONPATH
5183         * gst/schedulers/Makefile.am:
5184           cleanup
5185         * libs/gst/bytestream/bytestream.c:
5186           remove newline
5187         * po/LINGUAS:
5188         * po/sq.po:
5189           adding Albanian translation (Laurent Dhima)
5190         * po/cs.po:
5191           updated
5192
5193 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5194
5195         * po/ca.po:
5196         * po/sv.po:
5197           updated translations
5198
5199 2004-08-04  Benjamin Otte  <otte@gnome.org>
5200
5201         * tests/mass_elements.c: (main):
5202           allow specifying src and sink element explicitly, so I can test
5203           videotestsrc instead of fakesrc
5204
5205 2004-08-04  Benjamin Otte  <otte@gnome.org>
5206
5207         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
5208         (gst_structure_id_empty_new), (gst_structure_empty_new),
5209         (gst_structure_copy):
5210           add gst_structure_id_empty_new_with_size to allow preallocating
5211           value array sizes. Use this in gst_structure_copy to get rid of
5212           reallocs.
5213           don't do quark=>string=>quark when copying structures
5214
5215 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
5216
5217         * docs/manual/win32.xml:
5218         * win32/README.txt:
5219           update documentation with the clean version of dependencies
5220
5221 2004-08-03  Benjamin Otte  <otte@gnome.org>
5222
5223         * gst/schedulers/entryscheduler.c:
5224         (gst_entry_scheduler_remove_element):
5225           fix for GST_DISABLE_DEBUG
5226         * tools/gst-launch.c: (print_tag):
5227           fixes for G_DISABLE_ASSERT
5228
5229 2004-08-03  Benjamin Otte  <otte@gnome.org>
5230
5231         * gst/gst.c: (gst_register_core_elements):
5232           fix for G_DISABLE_ASSERT
5233         * gst/gstinfo.c: (__gst_in_valgrind):
5234           add for GST_DISABLE_DEBUG
5235
5236 2004-08-03  Benjamin Otte  <otte@gnome.org>
5237
5238         * gst/parse/parse.l:
5239           fix for G_DISABLE_ASSERT
5240
5241 2004-08-03  Wim Taymans  <wim@fluendo.com>
5242
5243         * gst/gstbin.c: (gst_bin_get_type),
5244         (gst_bin_child_state_change_func):
5245         * gst/gstthread.c: (gst_thread_change_state):
5246         Backported some debug logging from a reverted patch
5247         Don't try to destroy the thread twice. Added some more
5248         debugging in GstThread. Unlock and signal even if we
5249         are in the thread context.
5250
5251 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5252
5253         * po/uk.po:
5254           updated translation
5255
5256 2004-07-30  David Schleef  <ds@schleef.org>
5257
5258         * gst/gstatomic_impl.h: Enable atomic code for x86_64
5259
5260 2004-07-29  David Schleef  <ds@schleef.org>
5261
5262         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
5263         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
5264
5265 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
5266
5267         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
5268         (gst_bin_add_func), (gst_bin_remove_func),
5269         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
5270         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
5271         (gst_bin_change_state_norecurse), (gst_bin_dispose),
5272         (gst_bin_sync_children_state):
5273         * gst/gstbin.h:
5274         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
5275         (gst_thread_change_state):
5276         * testsuite/states/Makefile.am:
5277           revert state change patches as agreed so we can rework them
5278           gradually
5279
5280 2004-07-29  Benjamin Otte  <otte@gnome.org>
5281
5282         * libs/gst/control/Makefile.am:
5283           link to libgstreamer (fixes Debian bug 262019, see
5284           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
5285
5286 2004-07-29  Wim Taymans  <wim@fluendo.com>
5287
5288         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
5289         (check_from_fraction_convert), (transform_test), (main):
5290         Make the test less pedantic about float roundoff errors.
5291
5292 2004-07-29  Benjamin Otte  <otte@gnome.org>
5293
5294         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
5295         (gst_filesrc_srcpad_event):
5296           make seek events to before start/after end of file not fail, but
5297           seek to start/end instead
5298         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
5299           add more output
5300
5301 2004-07-29  Benjamin Otte  <otte@gnome.org>
5302
5303         * gst/gstpad.c: (gst_pad_set_explicit_caps):
5304           check that caps are fixed
5305         * gst/gstpad.c: (gst_pad_template_new):
5306           don't try to simplify caps, costs too much time on gst_init
5307         * gst/gstplugin.c: (gst_plugin_add_feature):
5308           G_ERROR if features are added twice
5309         * gst/gsttypefind.c: (gst_type_find_register):
5310         * gst/gstelementfactory.c: (gst_element_register):
5311           don't add features twice
5312         * docs/random/ds/0.9-suggested-changes:
5313           add note about possible gst_init optimization
5314
5315 2004-07-28  David Schleef  <ds@schleef.org>
5316
5317         * testsuite/elements/Makefile.am:
5318         * testsuite/elements/struct_i386.h:
5319         * testsuite/elements/struct_size.c: (main):  A little test
5320         to keep distcheck from working if someone changes a structure
5321         size accidentally.
5322
5323 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5324
5325         * docs/libs/Makefile.am:
5326         * docs/libs/gstreamer-libs-docs.sgml:
5327         * docs/libs/gstreamer-libs-sections.txt:
5328         * docs/libs/tmpl/gstbytestream.sgml:
5329         * docs/libs/tmpl/gstcontrol.sgml:
5330         * docs/libs/tmpl/gstdataprotocol.sgml:
5331         * docs/libs/tmpl/gstgetbits.sgml:
5332         * libs/gst/bytestream/Makefile.am:
5333         * libs/gst/bytestream/bytestream.c:
5334         * libs/gst/bytestream/bytestream.h:
5335         * libs/gst/control/Makefile.am:
5336         * libs/gst/dataprotocol/Makefile.am:
5337         * libs/gst/getbits/Makefile.am:
5338         * libs/gst/getbits/getbits.h:
5339           various doc and style fixes, adding bytestream to libs docs.
5340
5341 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5342
5343         * docs/gst/gstreamer-docs.sgml:
5344         * docs/libs/Makefile.am:
5345         * docs/libs/gstreamer-libs-docs.sgml:
5346         * docs/libs/gstreamer-libs-sections.txt:
5347         * libs/gst/control/dparam.c:
5348           more doc fixes.  gst-libs docs now build the same way as gst.
5349
5350 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5351
5352         * configure.ac:
5353         * testsuite/Makefile.am:
5354         * testsuite/bins/Makefile.am:
5355         * testsuite/caps/Makefile.am:
5356         * testsuite/cleanup/Makefile.am:
5357         * testsuite/clock/Makefile.am:
5358         * testsuite/debug/Makefile.am:
5359         * testsuite/dlopen/Makefile.am:
5360         * testsuite/dynparams/Makefile.am:
5361         * testsuite/elements/.cvsignore:
5362         * testsuite/elements/Makefile.am:
5363         * testsuite/enumcaps/Makefile.am:
5364         * testsuite/enumcaps/enumcaps.c:
5365         * testsuite/ghostpads/Makefile.am:
5366         * testsuite/indexers/Makefile.am:
5367         * testsuite/negotiation/Makefile.am:
5368         * testsuite/parse/Makefile.am:
5369         * testsuite/plugin/Makefile.am:
5370         * testsuite/refcounting/Makefile.am:
5371         * testsuite/schedulers/.cvsignore:
5372         * testsuite/states/Makefile.am:
5373         * testsuite/tags/Makefile.am:
5374         * testsuite/threads/Makefile.am:
5375           fold enumcaps into caps dir
5376           clean up Makefile.am's for testsuite
5377
5378 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5379
5380         * docs/gst/Makefile.am:
5381         * docs/libs/Makefile.am:
5382           clean up docs build.  Fixes needless rebuilding of template files.
5383
5384 2004-07-28  Wim Taymans  <wim@fluendo.com>
5385
5386         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
5387         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
5388         Make sure that a bin state change tries to keep the children
5389         in sync. 
5390         Added debug logging to the thread.
5391
5392 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
5393
5394         * win32/GStreamer.vcproj:
5395         * win32/gstreamer.def:
5396           more exports for the plugins
5397
5398 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
5399
5400         * win32/gstgetbits.vcproj:
5401         * win32/gstgetbits.def:
5402         * win32/msvc71.sln:
5403           add support for the getbits plugin
5404
5405 2004-07-27  Wim Taymans  <wim@fluendo.com>
5406
5407         * gst/gstvalue.c: (gst_value_transform_double_fraction),
5408         (gst_value_transform_fraction_double), (_gst_value_initialize):
5409         * testsuite/caps/Makefile.am:
5410         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
5411         (check_from_fraction_convert), (transform_test), (main):
5412         Added transform functions between double and fraction.
5413         Added testcase to verify transforms
5414
5415 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5416
5417         * win32/GStreamer.vcproj:
5418           rename GStreamer-0.8.lib to libgstreamer.lib
5419
5420 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5421
5422         * win32/gstelements.vcproj:
5423         * win32/gstoptimalscheduler.vcproj:
5424           fixes for the Release build
5425
5426 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5427
5428         * win32/config.h:
5429           update the version number
5430
5431 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5432
5433         * win32/GStreamer.vcproj:
5434           add gstinterface to the build
5435
5436 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5437
5438         * win32/gstreamer.def:
5439           add many definitions needed by plugins,
5440           GST_CAT_DEFAULT only available in the Debug build ?
5441
5442 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5443
5444         * gst/gstelement.c: (gst_element_set_eos_recursive):
5445           various whitespace fixes.
5446           doc fix, fixes #148497
5447
5448 2004-07-25  Benjamin Otte  <otte@gnome.org>
5449
5450         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
5451           don't delay links on the sink elements, it causes unnegotiated
5452           links.
5453         * gst/elements/gsttypefindelement.c:
5454         (gst_type_find_element_base_init):
5455           add our padtemplates, we indeed do have some.
5456         * gst/elements/gsttypefindelement.c:
5457         (gst_type_find_element_handle_event),
5458         (gst_type_find_element_chain):
5459           don't push data when typefinding failed.
5460         * gst/gstpad.c: (gst_pad_link_fixate):
5461           check that no fixate function returns empty caps.
5462         * gst/gstpad.c: (gst_pad_push):
5463           check that the link is negotiated before data gets pushed.
5464         * tools/gst-register.c: (main):
5465           don't assert (fixes #148283)
5466
5467 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5468
5469         * docs/gst/gstreamer-sections.txt:
5470         * docs/gst/tmpl/gstconfig.sgml:
5471           add GST_PLUGIN_EXPORT definition
5472
5473 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5474
5475         * gst/gstplugin.h:
5476         * gst/gstconfig.h.in:
5477         * win32/gstconfig.h:
5478         * win32/gstelements.def:
5479         * win32/gstelements.vcproj:
5480         * win32/gstoptimalscheduler.def:
5481         * win32/gstoptimalscheduler.vcproj:
5482         * win32/gstspider.def:
5483         * win32/gstspider.vcproj:
5484           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
5485
5486 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5487
5488         * docs/gst/gstreamer-sections.txt:
5489           remove GST_CAT_DEFAULT because the type has changed
5490
5491 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5492
5493         * win32/gstbytestream.vcproj:
5494         * win32/gstelements.vcproj:
5495         * win32/gst-inspect.vcproj:
5496         * win32/gst-launch.vcproj:
5497         * win32/gstoptimalscheduler.vcproj:
5498         * win32/GStreamer.vcproj:
5499         * win32/gst-register.vcproj:
5500         * win32/gstspider.vcproj:
5501         * win32/msvc71.sln:
5502           Copy the files where needed after building, The testsuite will be
5503           built separately
5504
5505 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5506
5507         * win32/config.h:
5508         * win32/README.txt:
5509         * docs/manual/win32.xml:
5510         Fixed the plugin and GStreamer location
5511
5512 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5513
5514         * win32/gstreamer.def:
5515         More exports for the plugins
5516
5517 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5518
5519         * gst/gstinfo.h:
5520         Marc was right, we need to export literally GST_CAT_DEFAULT
5521
5522 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5523
5524         * win32/config.h:
5525         NLS crashes in gettext, disabled until this is solved
5526
5527 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5528
5529         * win32/gst-inspect.vcproj:
5530         * win32/gst-launch.vcproj:
5531         Should use NLS when available
5532
5533 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5534
5535         * gst/registries/gstxmlregistry.c:
5536         removing the file doesn't seem to be a good idea on Linux
5537
5538 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5539
5540         * gst/registries/gstxmlregistry.c:
5541         Remove the registry before renaming the tempfile (needed for Windows)
5542
5543 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5544
5545         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
5546         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
5547         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
5548         * gst/elements/gstmultifilesrc.h:
5549         Added newmedia property so it generates newmedia events between each
5550         file when property is set, as well as fixed eos handling
5551
5552 2004-07-22  David Schleef  <ds@schleef.org>
5553
5554         * gst/gststructure.c: (gst_structure_id_empty_new),
5555         (gst_structure_empty_new):  Set type field correctly.
5556         * gst/gststructure.h: Check type field correctly.
5557         * testsuite/caps/Makefile.am:
5558         * testsuite/caps/structure.c: (test1), (main): Add a very small
5559         test for structures.
5560
5561 2004-07-22  David Schleef  <ds@schleef.org>
5562
5563         * docs/random/ds/0.9-suggested-changes: more comments
5564         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
5565
5566 2004-07-22  Benjamin Otte  <otte@gnome.org>
5567
5568         * gst/gstelementfactory.c: (gst_element_register):
5569           set the factory in the class struct, so gst_element_get_factory
5570           actually works
5571         * gst/parse/grammar.y:
5572           set element to playing when it gets unlocked as we can't rely on the
5573           bin state - all elements in the bin state might still be locked in
5574           NULL)
5575
5576 2004-07-22  Benjamin Otte  <otte@gnome.org>
5577
5578         * gst/gstelement.c: (gst_element_set_state_func):
5579           make this a static function
5580
5581 2004-07-22  Wim Taymans  <wim@fluendo.com>
5582
5583         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
5584         (gst_opt_scheduler_pad_link):
5585         fix 147894-2 and the group_link problem.
5586
5587 2004-07-22  Wim Taymans  <wim@fluendo.com>
5588
5589         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
5590         (handoff_identity), (main):
5591         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5592         (handoff_identity), (main):
5593         * testsuite/schedulers/Makefile.am:
5594         * testsuite/schedulers/group_link.c: (main):
5595         Show bug in scheduler when linking chain and loop based element 
5596         where the chain based element was not yet in a group.
5597
5598 2004-07-21  Benjamin Otte  <otte@gnome.org>
5599
5600         * gst/.cvsignore:
5601         * gst/autoplug/.cvsignore:
5602         * gst/elements/.cvsignore:
5603         * gst/indexers/.cvsignore:
5604         * libs/gst/bytestream/.cvsignore:
5605         * libs/gst/control/.cvsignore:
5606         * libs/gst/getbits/.cvsignore:
5607         * testsuite/states/.cvsignore:
5608         * testsuite/threads/.cvsignore:
5609           keep this up to date, since I seem to be the only one who cares
5610           about not missing files on commits (editor's note: no you don't,
5611           but feel free to change them at the time you add stuff instead
5612           of later on)
5613
5614 2004-07-21  Benjamin Otte  <otte@gnome.org>
5615
5616         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
5617         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
5618         (gst_bin_child_state_change_func), (set_kid_state_func),
5619         (gst_bin_set_state), (gst_bin_change_state_norecurse):
5620           make state changes work correctly and reentrant (so removing
5621           elements from bins during state changes of bins doesn't cause
5622           segfaults or even wrong states)
5623           add debugging category and debugging output to print children states
5624         * gst/gstbin.c: (gst_bin_dispose): 
5625           add some assertion checks
5626         * gst/gstbin.h:
5627         * gst/gstbin.c: (gst_bin_sync_children_state):
5628           deprecate this function - it just does gst_bin_set_state (bin,
5629           GST_STATE (bin)) 
5630         * testsuite/threads/queue.c: (main):
5631           don't use gst_bin_sync_children_state anymore
5632         * testsuite/states/Makefile.am:
5633         * testsuite/states/bin.c:
5634           test that the state changes of bins work as expected
5635         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
5636           some adjustments to change states correctly, too
5637         * gst/gstthread.c: (gst_thread_change_state):
5638           don't enable/disable "threadsafe" properties, they're unused and
5639           cause random segfaults
5640         * testsuite/threads/Makefile.am:
5641           the queue check randomly passes now, ignore it
5642
5643 2004-07-21  Benjamin Otte  <otte@gnome.org>
5644
5645         * gst/gstpad.c:
5646           check if data is NULL before outputting debug info. (fixes #145100)
5647
5648 2004-07-21  Benjamin Otte  <otte@gnome.org>
5649
5650         * gst/schedulers/entryscheduler.c:
5651         (gst_entry_scheduler_loop_wrapper),
5652         (gst_entry_scheduler_chain_wrapper),
5653         (gst_entry_scheduler_get_wrapper):
5654           reset the state when the cothread starts, so we don't get assertion
5655           failures on restarting of cothreads
5656
5657 2004-07-20  Benjamin Otte  <otte@gnome.org>
5658
5659         * gst/gstelement.c: (gst_element_link_pads_filtered):
5660           use correct sinkpad, if only sinkpad is specified, but not srcpad
5661           (fixes #147889)
5662         * gst/gstelement.c: (gst_element_set_state_func),
5663         (gst_element_change_state): ref/unref the element, signal handlers
5664         could get rid of the element otherwise
5665
5666 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
5667
5668         * docs/random/ds/0.9-suggested-changes:
5669           Make note about renaming fixed-list to array.
5670         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
5671         (_gst_value_initialize):
5672           Add array intersections.
5673         * testsuite/caps/intersect2.c: (main):
5674           Add test for array intersections.
5675
5676 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5677
5678         * configure.ac: back to cvs
5679
5680 === release 0.8.4 ===
5681
5682 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5683
5684         * configure.ac:
5685           releasing 0.8.4, "Paella"
5686           bump libtool versioning
5687
5688 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5689
5690         * po/LINGUAS:
5691         * po/ca.po:
5692           adding Catalan translation (Jordi Mallach)
5693
5694 2004-07-20  Wim Taymans  <wim@fluendo.com>
5695
5696         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
5697         (handoff_identity), (main):
5698         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5699         (handoff_identity), (main):
5700         * testsuite/schedulers/Makefile.am:
5701         Added failing testcase for variant of #147894
5702
5703 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5704
5705         patch by: David Moore
5706
5707         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
5708         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
5709         (group_migrate_connected):
5710         * testsuite/schedulers/Makefile.am:
5711           fix for #142813 (Deadlock in optimal scheduler)
5712
5713 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5714
5715         patch by: Wim Taymans
5716
5717         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
5718         (gst_opt_scheduler_schedule_run_queue),
5719         (gst_opt_scheduler_get_wrapper), (get_group),
5720         (group_migrate_connected):
5721         * testsuite/schedulers/Makefile.am:
5722           fix for #147819 (Add some checks in the opt scheduler)
5723
5724 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5725
5726         patch by: Benjamin Otte
5727
5728         * gst/gstelementfactory.c: (__gst_element_details_set):
5729           fix for #147929: running gst-register in non-utf8 locale can cause
5730           invalid registry
5731
5732 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5733
5734         patch by: Wim Taymans
5735
5736         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
5737         (group_has_element), (element_get_reachables_func),
5738         (group_migrate_connected):
5739           fix for #147894 (opt scheduler decoupled elements mismanagement)
5740         * testsuite/schedulers/Makefile.am:
5741           testsuite app now passes
5742
5743 2004-07-19  Wim Taymans  <wim@fluendo.com>
5744
5745         * testsuite/schedulers/147819.c: (handoff_identity1),
5746         (handoff_identity2), (main):
5747         * testsuite/schedulers/Makefile.am:
5748         Added testcase for bug 147819
5749
5750 2004-07-19  Wim Taymans  <wim@fluendo.com>
5751
5752         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5753         (handoff_identity), (main):
5754         * testsuite/schedulers/Makefile.am:
5755         Added testcase for bug 147894
5756
5757 2004-07-16  Wim Taymans  <wim@fluendo.com>
5758
5759         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
5760         * testsuite/schedulers/142183.c: (handoff_identity), (main):
5761         * testsuite/schedulers/Makefile.am:
5762         Added testsuite for bug 142183 in its two incarnations. Refcount
5763         is not increased for scheduled elements and threadsafe properties
5764         mutexes are not properly unlocked.
5765
5766 2004-07-16  Wim Taymans  <wim@fluendo.com>
5767
5768         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
5769         (create_chain), (destroy_chain), (create_group), (destroy_group),
5770         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
5771         (group_dec_link), (gst_opt_scheduler_pad_link),
5772         (group_inc_links_for_element), (group_migrate_connected):
5773         Call group_inc_link with the proper src->sink ordering -- 
5774         break this, and we break sort_chain. patch from wingo for bug
5775         147713.
5776         Partially revert patch 1.89. When adding a loop based element to 
5777         the scheduler, the links to other groups are automatically followed
5778         and incremented. This should not happen because the bin will call
5779         pad_link explicitly for those connection, resulting in them counted 
5780         twice. Results in assertion failure on pipeline cleanup.
5781
5782 2004-07-16  Wim Taymans  <wim@fluendo.com>
5783
5784         * testsuite/schedulers/143777-2.c: (main):
5785         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
5786         (main):
5787         * testsuite/schedulers/Makefile.am:
5788         Added cleanup code to testcase 143777-2.
5789         Added testcase to show bug 147713, does not really show the
5790         deadlock as I can't figure out how to trigger it, but it does
5791         demonstrate bad ordering in the scheduler.
5792
5793 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5794
5795         * gst/gstvalue.c: (gst_value_deserialize_fraction):
5796           change strndup to g_strndup.  Fixes #147707
5797
5798 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5799
5800         * po/af.po:
5801         * po/az.po:
5802         * po/cs.po:
5803         * po/en_GB.po:
5804         * po/fr.po:
5805         * po/nl.po:
5806         * po/sr.po:
5807         * po/sv.po:
5808         * po/tr.po:
5809         * po/uk.po:
5810           updated translations
5811
5812 2004-07-16  Benjamin Otte  <otte@gnome.org>
5813
5814         * gst/gstvalue.c: (gst_greatest_common_divisor):
5815           use ints and return ints, fractions only use ints, too, so this
5816           avoids accidently casting multiplications to unsigned
5817         (gst_value_lcopy_fraction): it's ints, not uint32
5818         (gst_value_set_fraction): disallow minint, multiplying and negation
5819           are broken with it
5820         (gst_value_fraction_multiply): fix to make large numbers work and get
5821         rid of the assumption that the multiplication of two ints fits an
5822         int64 - dunno if that's true for all systems
5823         * testsuite/caps/Makefile.am:
5824         * testsuite/caps/fraction-multiply-and-zero.c:
5825         (check_multiplication), (check_equal), (zero_test), (main):
5826           add tests for all the stuff above
5827         * testsuite/caps/value_compare.c: (test1):
5828           fix comment
5829         * tests/.cvsignore:
5830         * testsuite/caps/.cvsignore:
5831         * testsuite/debug/.cvsignore:
5832         * testsuite/dlopen/.cvsignore:
5833         * testsuite/states/.cvsignore:
5834           get up to date
5835
5836 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5837
5838         * docs/manual/bins-api.xml:
5839         * docs/manual/factories.xml:
5840         * docs/manual/helloworld.xml:
5841         * docs/manual/links-api.xml: 
5842           fixes for out of date info, incorrect info and grammar
5843
5844 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5845
5846         * docs/manual/pads.xml:
5847         * docs/manual/pads-api.xml: grammar fix
5848
5849 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5850
5851         * docs/manual/pads-api.xml: typo + grammar fix
5852
5853 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5854
5855         * docs/gst/gstreamer-sections.txt:
5856           add new symbols
5857         * docs/gst/tmpl/gstelement.sgml:
5858         * docs/gst/tmpl/gstpad.sgml:
5859         * docs/gst/tmpl/gsttypes.sgml:
5860         * docs/gst/tmpl/gstvalue.sgml:
5861           update docs
5862         * gst/gststructure.c: (gst_structure_set_valist),
5863         (gst_structure_from_abbr), (gst_structure_to_abbr):
5864         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
5865         (gst_greatest_common_divisor), (gst_value_init_fraction),
5866         (gst_value_copy_fraction), (gst_value_collect_fraction),
5867         (gst_value_lcopy_fraction), (gst_value_set_fraction),
5868         (gst_value_get_fraction_numerator),
5869         (gst_value_get_fraction_denominator),
5870         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
5871         (gst_value_deserialize_fraction),
5872         (gst_value_transform_fraction_string),
5873         (gst_value_transform_string_fraction),
5874         (gst_value_compare_fraction), (_gst_value_initialize):
5875         * gst/gstvalue.h:
5876           adding GstFraction GValue type, get/set, and multiply
5877         * testsuite/caps/Makefile.am:
5878         * testsuite/caps/fraction.c: (test), (main):
5879         * testsuite/caps/string-conversions.c: (main):
5880         * testsuite/caps/value_compare.c: (test1), (main):
5881           add regression tests for GstFraction
5882
5883 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5884         
5885         * docs/manual/init-api.xml: Grammar fix
5886
5887 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5888
5889         * docs/manual/states.xml: Fix inconsistent information
5890
5891 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5892
5893         * gst/gstelement.c: (gst_element_set_state):
5894         * gst/gstpad.c: (gst_pad_try_set_caps):
5895         * gst/gststructure.c:
5896         * gst/gstthread.c: (gst_thread_child_state_change):
5897         * gst/gstvalue.c: (gst_value_compare_double):
5898         * gst/gstvalue.h:
5899         * testsuite/parse/parse1.c: (main):
5900           debugging additions and style cleanups
5901
5902 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5903
5904         * docs/manual/states.xml: Grammar fix
5905
5906 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5907
5908         * docs/manual/pads.xml: Grammar fix
5909
5910 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5911
5912         * docs/manual/elements.xml: Fixed image reference
5913
5914 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5915
5916         * docs/manual/goals.xml: Grammar fix
5917
5918 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5919
5920         * docs/manual/motivation.xml:
5921         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
5922
5923 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5924
5925         * docs/manual/motivation.xml: Fix spelling
5926
5927 2004-07-15  Benjamin Otte  <otte@gnome.org>
5928
5929         * gst/gstelement.h: 
5930           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
5931           strings.
5932         * gst/gstelement.c (gst_element_class_init):
5933           GError's are boxed, not objects
5934         * gst/gstmarshal.list:
5935           update list for the fixed error signal
5936
5937 2004-07-14  Andy Wingo  <wingo@pobox.com>
5938
5939         * gst/gsttag.c: Add a tag merge func for pointers. The header was
5940         there all along, but the function wasn't. (guile-gstreamer's build
5941         system uses the address of the function -- I wasn't actually
5942         trying to use this.)
5943
5944 2004-07-14  Andy Wingo  <wingo@pobox.com>
5945
5946         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
5947         as gst_pad_proxy_pad_link) just link to every other pad when they
5948         are called. In the case where the graph has cycles, this will mean
5949         that a call to try_set_caps will recurse. Allow this recursion
5950         and return OK, while we wait for the first try_set_caps to give a
5951         proper return value.
5952         (gst_pad_link_call_link_functions): Since this function is the
5953         only one to set the NEGOTIATING flag on a pad, if the flag is set
5954         it means that the link functions have indirectly recursed. If this
5955         happens, error out to avoid infinite recursion and an eventual
5956         SEGV.
5957         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
5958         (gst_pad_proxy_getcaps): Intersect the result with the template
5959         caps to ensure that the return value is valid.
5960
5961 2004-07-14  Andy Wingo  <wingo@pobox.com>
5962
5963         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
5964         one refcount, the calling function is the owner of the buffer.
5965
5966 2004-07-14  Wim Taymans  <wim@fluendo.com>
5967
5968         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5969         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5970         Fix stupid warning when an element is to be migrated but
5971         is already migrated.
5972
5973 2004-07-14  Wim Taymans  <wim@fluendo.com>
5974
5975         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5976         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5977         Make sure that a single non-loop-based element does not 
5978         end up in a group. This fixes the testsuite again.
5979
5980 2004-07-14  Wim Taymans  <wim@fluendo.com>
5981
5982         * gst/schedulers/gstoptimalscheduler.c: (create_group),
5983         (add_to_group), (merge_groups), (schedule_group),
5984         (gst_opt_scheduler_get_wrapper), (group_elements),
5985         (group_dec_link), (gst_opt_scheduler_pad_link),
5986         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
5987         (gst_opt_scheduler_iterate):
5988         move isolated groups to a new chain.
5989         Emit a warning instead of segfaulting in some error cases.
5990         Fix a bug where the link count between groups was not calculated 
5991         correctly. Fixes #144510.
5992
5993 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
5994         * gst/elements/gstfilesrc.c:
5995           Binary files support under Windows now OK
5996       
5997 2004-07-13  Benjamin Otte  <otte@gnome.org>
5998
5999           compatibility fixes for Solaris 8/gcc 2.95
6000         * configure.ac:
6001           include libintl libs in LDFLAGS
6002         * gstvalue.c (gst_value_deserialize_buffer):
6003           cast isxdigit stuff to int to silence compiler warning
6004
6005 2004-07-12  Benjamin Otte  <otte@gnome.org>
6006
6007         * gst/gsttypes.h:
6008           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
6009           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
6010           just causes support madness
6011         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
6012           make it work without this
6013         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
6014         (gst_file_index_commit):
6015           glib IO channels don't want binary mode
6016         * testsuite/bytestream/filepadsink.c: (main):
6017         * testsuite/bytestream/test1.c: (read_param_file):
6018           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
6019
6020 2004-07-12  Benjamin Otte  <otte@gnome.org>
6021
6022         * gst/gstelement.c: (gst_element_class_init),
6023         (gst_element_set_state), (gst_element_set_state_func):
6024           virutalize gst_element_set_state, use set_state member in class
6025           struct that was already added in 0.7 for this.
6026         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
6027         (gst_bin_change_state):
6028           make gst_bin_foreach works similar to other foreach functions, plug
6029           memleaks in it. Make functions using it work with the new approach.
6030           Document gst_bin_foreach, so it can be exported if we want to
6031         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
6032           use virtualized set_state to make set_state on bins set the state of
6033           all its children.
6034
6035 2004-07-12  Benjamin Otte  <otte@gnome.org>
6036
6037         * configure.ac:
6038           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
6039           http://bugs.gentoo.org/show_bug.cgi?id=53967)
6040         * gst/gstpad.c: (gst_pad_alloc_buffer):
6041           allow buffer_alloc functions to return NULL and allocate a normal
6042           buffer in that case
6043
6044 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
6045         * gst/elements/gstfilesink.c:
6046         * gst/elements/gstfilesrc.c:
6047         * gst/indexers/gstfileindex.c:
6048         * gst/gsttypes.h:
6049         * testsuite/bytestream/filepadsink.c:
6050         * testsuite/bytestream/test1.c:
6051           Handle binary files under Windows
6052
6053 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
6054         * docs/manual/win32.xml:
6055         * win32/config.h:
6056         * win32/gst-register.vcproj:
6057         * win32/gstreamer.def:
6058           Update to another gettext public build
6059
6060 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
6061         * gst/gstplugin.c:
6062           Fix an impossible C syntax
6063         * win32/config.h:
6064           Disable i18n under Windows for the moment
6065         * win32/gst-register.vcproj:
6066           Use this configuration
6067
6068 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
6069         * docs/manual/quotes.xml:
6070           Keep the quotes file alive
6071         * docs/random/ds/0.9-suggested-changes:
6072           Add the suggestion of including a 'rowstride' as part of video
6073           format caps
6074
6075 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6076
6077         * gst/gstelement.c: (gst_element_set_state),
6078         (gst_element_change_state):
6079           d'oh.  Set PENDING state correctly before forcing bin to change.
6080         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6081         (gst_structure_parse_fixed_list):
6082         * gst/schedulers/gstoptimalscheduler.c:
6083         (gst_opt_scheduler_state_transition):
6084         * testsuite/states/parent.c: (main):
6085           remove comment now that it's fixed.
6086
6087 2004-07-11  Benjamin Otte  <otte@gnome.org>
6088
6089         * gst/gstclock.h:
6090           GST_SECOND shouldn't cause a conversion to unsigned.
6091         * testsuite/clock/.cvsignore:
6092         * testsuite/clock/Makefile.am:
6093         * testsuite/clock/signedness.c: (main):
6094           make sure it never will again
6095
6096 2004-07-11  Andy Wingo  <wingo@pobox.com>
6097
6098         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
6099         whose state is higher than the bin state, raise the bin state to
6100         ensure that bin state := highest child state.
6101         
6102 2004-07-11  Andy Wingo  <wingo@pobox.com>
6103
6104         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
6105         procedure on the children of a bin. Assumes that the procedure can
6106         change the set of children.
6107         (set_kid_state_func): New static function.
6108         (gst_bin_change_state): Use gst_bin_foreach to call
6109         set_kid_state_func. Fixes a bug: if a child had a state-change
6110         handler that removes it from the bin, there would be a segfault.
6111         Hopefully it should also work in the case where the state-change
6112         handler on one child adds or removes other children. In any case,
6113         fixes should go to gst_bin_foreach.
6114
6115 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6116
6117         * gst/gstelement.c: (gst_element_set_state):
6118           compatibility fix for latest plugins release.  Change loop back
6119           to while {}
6120
6121 2004-07-09  Wim Taymans  <wim@fluendo.com>
6122
6123         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
6124         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
6125         (gst_thread_main_loop):
6126         Since remove is virtual in GstBin we must not assume the 
6127         elements GList to have anothing useful.
6128         Add some more logging to GstThread and be a bit more paranoid
6129         when resetting the scheduler.
6130         Set the state of the bin to NULL before removing the children.
6131
6132 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6133
6134         * testsuite/threads/Makefile.am:
6135         * testsuite/threads/threadg.c:
6136           added test to check if problem when removing all elements from a
6137           GstThread before setting GstThread state to NULL
6138
6139 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6140
6141         * docs/gst/tmpl/gstelement.sgml:
6142         * docs/gst/tmpl/gsttypes.sgml:
6143         * gst/gstbin.c: (gst_bin_change_state):
6144         * gst/gstelement.c: (gst_element_set_state),
6145         (gst_element_change_state):
6146           rework so that for bins we try to set the state on all children
6147           as well even if the bin is in the correct state already.
6148           change while to do so at least one iteration is done.
6149           For regular elements, we fall back to the previous behaviour for
6150           now since we first need a new plugins release.
6151         * testsuite/states/parent.c: (main):
6152           test for this case
6153           Fixes #123774
6154
6155 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6156
6157         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
6158         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
6159         (gst_queue_release_locks), (gst_queue_change_state),
6160         (gst_queue_set_property):
6161           add proper lock debugging.  Change dispose to finalize, since
6162           we're freeing mutexes and other stuff which should happen only once.
6163
6164 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6165
6166         * docs/gst/tmpl/gstelement.sgml:
6167         * docs/gst/tmpl/gstplugin.sgml:
6168         * docs/gst/tmpl/gsttypes.sgml:
6169         * docs/pwg/building-state.xml:
6170         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
6171         * gst/gstelement.c: (gst_element_change_state):
6172         * gst/gstthread.c: (gst_thread_change_state):
6173           catch wrong state changes in element base class.
6174
6175 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6176
6177         * gst/gstinfo.h:
6178           clean up layout a little.
6179
6180 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6181
6182         * configure.ac:
6183         * testsuite/Makefile.am:
6184         * testsuite/states/Makefile.am:
6185         * testsuite/states/parent.c: (main):
6186           re-enable states testsuite dir.  Add test for state changes and
6187           parent behaviour
6188
6189 2004-07-09  Wim Taymans  <wim@fluendo.com>
6190
6191         * gst/schedulers/gstoptimalscheduler.c:
6192         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
6193         (element_get_reachables_func), (element_get_reachables),
6194         (debug_element), (rechain_group), (group_migrate_connected),
6195         (gst_opt_scheduler_pad_unlink):
6196         Do not try to migrate decoupled elements to a new group since
6197         they are not added to groups.
6198
6199 2004-07-08  Benjamin Otte  <otte@gnome.org>
6200
6201         * gst/gstelement.c: (gst_element_error_func):
6202           make reentrant (= allow removing elements in error handler)
6203
6204 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6205
6206         * gst/gstpad.c: (gst_pad_event_default_dispatch),
6207         (gst_pad_send_event), (gst_pad_call_chain_function):
6208           events sent to elements below PAUSED cannot be handled, so
6209           don't try to
6210
6211 2004-07-08  Wim Taymans  <wim@fluendo.com>
6212
6213         * gst/schedulers/gstoptimalscheduler.c:
6214         (chain_recursively_migrate_group), (create_group),
6215         (schedule_group), (gst_opt_scheduler_pad_link),
6216         (group_elements_set_visited), (element_get_reachables_func),
6217         (element_get_reachables), (group_can_reach_group), (debug_element),
6218         (rechain_group), (group_migrate_connected),
6219         (gst_opt_scheduler_pad_unlink):
6220         * testsuite/schedulers/Makefile.am:
6221         Implemented group splitting and rechaining.
6222         Fixes 143777 and 143777-2 in the testsuite.
6223
6224 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6225
6226         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
6227           extra debugging
6228         * gst/gstevent.h:
6229         * gst/gstinfo.c: (gst_debug_log_default):
6230           print time nicely.  add thread pointer until someone figures out
6231           a completely portable way of getting at thread id's.
6232         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
6233         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
6234         (gst_pad_call_chain_function):
6235           extra debugging
6236         * gst/schedulers/gstoptimalscheduler.c:
6237         (get_group_schedule_function), (loop_group_schedule_function),
6238         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
6239         (pad_clear_queued), (gst_opt_scheduler_iterate):
6240           rename BUFPEN and friends to DATAPEN since that's what they are.
6241
6242 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6243
6244         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
6245         * gst/gstbuffer.h:
6246         * gst/gstpad.c:
6247           cleanups and debugging
6248
6249 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6250
6251         * configure.ac:
6252         * gst/gstvalue.c: (gst_value_compare_enum),
6253         (gst_value_serialize_enum), (gst_value_deserialize_enum),
6254         (gst_value_can_compare), (gst_value_compare):
6255         * testsuite/Makefile.am:
6256         * testsuite/enumcaps/Makefile.am:
6257         * testsuite/enumcaps/enumcaps.c:
6258           Fix enum serialization, deserialization, comparison in caps, add
6259           a test to ensure that this continues working in the future.
6260
6261 2004-07-06  David Schleef  <ds@schleef.org>
6262
6263         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
6264         Fix memleak.
6265
6266 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6267
6268         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
6269         * gst/gstplugin.h:
6270         * gst/registries/gstxmlregistry.c:
6271         (plugin_times_older_than_recurse), (plugin_times_older_than),
6272         (gst_xml_registry_parse_padtemplate):
6273           only rebuild registry when actual plugins have a newer time than
6274           the registry.  Fixes #145520
6275
6276 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6277
6278         * docs/manual/manual.xml:
6279         * docs/manual/win32.xml:
6280           add chapter on win32 building.  fixes #142422
6281
6282 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6283
6284         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
6285
6286         * gst/autoplug/gstspider.c: (gst_spider_init),
6287         (gst_spider_dispose):
6288           fix spider memleaks.  fixes #137863
6289
6290 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6291
6292         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
6293
6294         * gst/schedulers/gstoptimalscheduler.c:
6295         (gst_opt_scheduler_pad_unlink):
6296           fix SIGBUS error, fixes #145338
6297
6298 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6299
6300         * gst/gstobject.c: (gst_object_replace):
6301         * gst/gstscheduler.c: (gst_scheduler_get_clock):
6302         * gst/gstsystemclock.c: (gst_system_clock_obtain):
6303           clean up clock lifecycle.  Fixes #109831
6304
6305 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6306
6307         * po/LINGUAS:
6308         * po/cs.po:
6309           added Czech translation (Miloslav Trmac)
6310
6311 2004-07-04  David Schleef  <ds@schleef.org>
6312
6313         * tools/Makefile.am:
6314         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
6315
6316 2004-07-04  David Schleef  <ds@schleef.org>
6317
6318         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
6319
6320 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
6321
6322         * gst/gstbin.c: (gst_bin_restore_thyself):
6323           chain to parent restore so the bins get restored correctly
6324           in the editor
6325
6326 2004-07-03  David Schleef  <ds@schleef.org>
6327
6328         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
6329         Actually do something in these functions, like before the big
6330         caps change.  (bug #145137)
6331
6332 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6333
6334         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
6335         (gst_element_get_compatible_pad_filtered):
6336         * gst/gstthread.c: (gst_thread_main_loop):
6337           more debugging
6338
6339 2004-07-02  David Schleef  <ds@schleef.org>
6340
6341         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
6342         * gst/gstobject.h:
6343         * gst/gstparse.h:
6344         * gst/gsttrace.h:
6345         * gst/gstxml.h:
6346
6347 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6348
6349         * gst/gstpad.c: (gst_pad_check_schedulers),
6350         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
6351         (gst_pad_link_prepare):
6352           revert until testsuite is fixed
6353
6354 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6355
6356         * testsuite/Makefile.am:
6357         * testsuite/caps/filtercaps.c: (main):
6358         * testsuite/clock/clock1.c: (main):
6359         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
6360           fix some more tests
6361
6362 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6363
6364         * testsuite/cleanup/cleanup1.c: (create_pipeline):
6365         * testsuite/cleanup/cleanup2.c: (create_pipeline):
6366         * testsuite/cleanup/cleanup4.c: (main):
6367           fix testsuite
6368
6369 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6370
6371         * libs/gst/control/control.c:
6372         * libs/gst/control/dparam.c:
6373         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
6374         * libs/gst/control/dparammanager.c:
6375         * libs/gst/control/dparammanager.h:
6376         * testsuite/dynparams/Makefile.am:
6377         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
6378         (gst_dptest_change_state), (gst_dptest_chain), (main):
6379           fix testcase for dparams
6380           add debugging category
6381
6382 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6383
6384         * testsuite/Rules:
6385           change path
6386
6387 2004-07-02  Benjamin Otte  <otte@gnome.org>
6388
6389         * tests/.cvsignore:
6390         * tests/Makefile.am:
6391         * tests/mass_elements.c: (gst_get_current_time), (main):
6392           add simple benchmark to test various speeds of fakesrc ! identity !
6393           identity ! ... ! fakesink.
6394           Usage: mass_elements [num_identities] [num_buffers]
6395           If not specified they default to 1000.
6396
6397 2004-07-02  Benjamin Otte  <otte@gnome.org>
6398
6399         * gst/gstpad.c: (gst_pad_check_schedulers),
6400         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
6401         (gst_pad_link_prepare):
6402           check that pads that get linked belong to the same manager. The old
6403           code allowed linking elements before putting them into bins, so it
6404           worked to link them and then put them in different threads, which
6405           lead to weird behaviour.
6406           Since this effectively disallows linking elements before putting
6407           them in a bin, some applications might not work after this and error
6408           out. If these applications are too critical, we might need to revert
6409           that patch. Please test this before the next release...
6410
6411 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6412
6413         * gst/gstpad.c: (gst_pad_get_caps):
6414           throw an error if the getcaps function does not return a subset of
6415           the template caps.
6416         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
6417           make disconts without position info an error in debugging
6418         * tests/spidey_bench.c: (handoff), (main):
6419           don't count first try when averaging
6420
6421 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6422
6423         * gst/gstplugin.c: (gst_plugin_load_file):
6424           figure out problem with dynamic test
6425
6426 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6427
6428         * docs/gst/Makefile.am:
6429           fix docs build
6430
6431 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6432
6433         * po/POTFILES.in:
6434         * po/af.po:
6435         * po/az.po:
6436         * po/en_GB.po:
6437         * po/fr.po:
6438         * po/nl.po:
6439         * po/sr.po:
6440         * po/sv.po:
6441         * po/tr.po:
6442         * po/uk.po:
6443         * tools/gst-register.c: (plugin_added_func), (main):
6444           i18n-ize -register, fix plural
6445
6446 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6447
6448         * gst/elements/gstidentity.c: (gst_identity_class_init),
6449         (gst_identity_init), (gst_identity_chain),
6450         (gst_identity_set_property), (gst_identity_get_property):
6451         * gst/elements/gstidentity.h:
6452           check for perfect stream
6453
6454 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6455
6456         * gst/elements/gstidentity.c: (gst_identity_chain):
6457           print offset_end
6458
6459 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6460
6461         * docs/gst/Makefile.am:
6462         * docs/gst/gstreamer-docs.sgml:
6463           doc fixes
6464
6465 2004-06-24  David Schleef  <ds@schleef.org>
6466
6467         * autogen.sh:  Remove call to env, since the buildbot isn't
6468         broken anymore.
6469
6470 2004-06-24  Wim Taymans  <wim@fluendo.com>
6471
6472         * gst/elements/Makefile.am:
6473         * gst/elements/gstelements.c:
6474         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
6475         (gst_multifdsink_class_init), (gst_multifdsink_init),
6476         (gst_multifdsink_add), (gst_multifdsink_remove),
6477         (gst_multifdsink_clear), (gst_multifdsink_chain),
6478         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
6479         * gst/elements/gstmultifdsink.h:
6480         Added an element that writes to multiple filedescriptors at once.
6481
6482 2004-06-24  Benjamin Otte  <otte@gnome.org>
6483
6484         * gst/parse/grammar.y:
6485           don't try to link elements before they have been added to bins
6486
6487 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6488
6489         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
6490         (gst_file_pad_get_length):
6491         * libs/gst/bytestream/filepad.h:
6492           add 2 new functions
6493
6494 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6495
6496         * docs/gst/gstreamer-sections.txt:
6497         remove from docs, the define that Benjamin removed from gstelement.h
6498
6499 2004-06-22  Benjamin Otte  <otte@gnome.org>
6500
6501         * gst/gstelement.h:
6502           remove define that referenced a nonexisting GstElement struct member
6503
6504 2004-06-20  Benjamin Otte  <otte@gnome.org>
6505
6506         * gst/gstdata.c: (gst_data_is_writable):
6507           whoops, return values were wrong, so writable data was marked as
6508           non-writable and vice versa. (fixes #143953, spotted by Francis
6509           Labonte)
6510           Shows how rarely we need to copy data ;)
6511
6512 2004-06-20  Benjamin Otte  <otte@gnome.org>
6513
6514         * testsuite/schedulers/.cvsignore:
6515         * testsuite/schedulers/Makefile.am:
6516         * testsuite/schedulers/143777-2.c: (main):
6517           add test for opt breakage in bug #143777
6518
6519 2004-06-20  Benjamin Otte  <otte@gnome.org>
6520
6521         * gst/gstpad.c: (gst_pad_call_chain_function):
6522           check for if we were unlinked while inside the chainfunction (fixes
6523           entrygthread having issues with #143777)
6524         * testsuite/schedulers/143777.c: (main):
6525         * testsuite/schedulers/Makefile.am:
6526           add a test for that fix
6527
6528 2004-06-20  Benjamin Otte  <otte@gnome.org>
6529
6530         * gst/gstvalue.c: (gst_value_set_int_range):
6531           test that start is smaller then end
6532         * libs/gst/bytestream/Makefile.am:
6533         * libs/gst/bytestream/filepad.c: 
6534         * libs/gst/bytestream/filepad.h:
6535           add GstFilePad - a pad that behaves like a FILE*
6536         * testsuite/bytestream/.cvsignore:
6537         * testsuite/bytestream/Makefile.am:
6538         * testsuite/bytestream/filepadsink.c: 
6539           test for the GstFilePad
6540
6541 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
6542
6543         * gst/elements/gstidentity.c: (gst_identity_class_init),
6544         (gst_identity_init), (gst_identity_set_clock),
6545         (gst_identity_chain), (gst_identity_set_property),
6546         (gst_identity_get_property):
6547         * gst/elements/gstidentity.h:
6548         * gst/gstclock.c: (gst_clock_id_wait):
6549           add a "sync" property to sync to the clock
6550
6551 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6552
6553         * gst/gstelementfactory.c: (gst_element_factory_create):
6554           make the freakin "elementfactory bla has no type" message more
6555           useful. So we actually can do something when someone shows up
6556           complaining about it.
6557
6558 2004-06-15  Johan Dahlin  <johan@gnome.org>
6559
6560         * tools/gst-inspect.c (main): Fallback to plugin if no element is
6561         found. This matches the old behavior better. Thanks to Thomas for
6562         pointing out.
6563
6564 2004-06-14  David Schleef  <ds@schleef.org>
6565
6566         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
6567         -fomit-frame-pointer.  Appears to generate correct code in
6568         other cases as well.
6569
6570 2004-06-14  Johan Dahlin  <johan@gnome.org>
6571
6572         * tools/gst-inspect.c (main): Add two new command line options: -a
6573         to print all elements and -n to print the name on each line. Also
6574         fix some error reporting.
6575         (main): Simplify, remove -n and always print names if -a is specified
6576
6577 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
6578
6579         * win32/gstconfig.h:
6580         * win32/GSTreamer.vcproj:
6581         * win32/Makefile:
6582         * gst/gstconfig.h.in:
6583         * gst/gst.h:
6584         * gst/gstbin.h:
6585         * gst/gstelement.h:
6586         * gst/gstevent.h:
6587         * gst/gstobject.h:
6588         * gst/gstpad.h:
6589         * docs/gst/gstreamer-sections.txt:
6590         * docs/gst/tmpl/gstconfig.sgml:
6591           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
6592
6593 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
6594         * docs/gst/gstreamer-sections.txt:
6595         * docs/gst/tmpl/gstconfig.sgml:
6596         Add the GSTREAMER_EXPORT macro to the docs
6597
6598 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
6599
6600         * tools/gst-compprep.c: (handle_xmlerror), (main):
6601         Add a check for the version that introduced SetStructuredError to fix
6602         the build on FC1
6603
6604 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6605
6606         * win32/msvc71.sln:
6607         * win32/testsuite/:
6608           prepare to compile the testsuite with MSVC
6609
6610 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6611
6612         * docs/manual/win32.xml:
6613           attempt to transform the Win32 README into an XML doc
6614
6615 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6616
6617         * gst/gst.c:
6618         * gst/gstbin.*:
6619         * gst/config.h.in:
6620         * gst/gstelement.*:
6621         * gst/gstevent.h:
6622         * gst/gstobject.*:
6623         * gst/gstpad.h:
6624         * tools/gst-register.c:
6625         * win32/gstreamer.def:
6626           extern symbols are now exported for the Windows DLL
6627
6628 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6629
6630         * gst/gstinfo.h:
6631           fix a problem to enable/disable DEBUG under MSVC
6632
6633 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6634
6635         * win32/:
6636           enable more debug code in DEBUG build
6637
6638 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6639
6640         * win32/config.h:
6641         * gst/gst-i18n-app.h:
6642           enable NLS under Windows
6643
6644 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
6645         * tools/gst-compprep.c: (handle_xmlerror), (main):
6646           Make an error that baffled me a bit clearer
6647
6648 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6649
6650         * gst/gstqueue.c:
6651           don't use g_queue_get_length () because it's 2.4, use ->length
6652
6653 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
6654
6655         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
6656
6657         * tools/gst-inspect.c: (print_signal_info):
6658           don't free random data twice. (fixes #144185)
6659
6660 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6661
6662         * gst/gstqueue.c:
6663         * gst/gstqueue.h:
6664           fix removing from the wrong queue on event timeout
6665           fix disposing of the event queue by casting correctly
6666           add mutexes for handling the event queue
6667           someone was sleeping when fixing queue last time around :)
6668
6669 2004-06-10  Johan Dahlin  <johan@gnome.org>
6670
6671         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
6672         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
6673
6674 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6675
6676         * docs/random/gdp:
6677         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
6678         * libs/gst/dataprotocol/dataprotocol.c:
6679         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6680         (gst_dp_buffer_from_header):
6681         * libs/gst/dataprotocol/dataprotocol.h:
6682         * libs/gst/dataprotocol/dp-private.h:
6683           rev version to 0.1, add buffer flags and copy them
6684
6685 2004-06-09  Johan Dahlin  <johan@gnome.org>
6686
6687         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
6688         the flags from the buffer we're copying.
6689
6690 2004-06-09  Wim Taymans  <wim@fluendo.com>
6691
6692         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
6693         * gst/elements/gstidentity.c: (gst_identity_init),
6694         (gst_identity_chain):
6695         Print more buffer info in fakesink.
6696         Make identity output similar to fakesink.
6697
6698 2004-06-07  Daniel Gazard  <dany42@free.fr>
6699
6700         reviewed by Benjamin Otte  <otte@gnome.org>
6701
6702         * configure.ac:
6703           fix cross compiling not working. (fixes #143741)
6704
6705 2004-06-07  Benjamin Otte  <otte@gnome.org>
6706
6707         * gst/gstelement.c: (gst_element_set_time_delay):
6708           add failure check
6709         * gst/gstinfo.h:
6710           put brackets around macro arguments of GST_TIME_ARGS, add note to
6711           move it to correct header in 0.9
6712
6713 2004-06-07  Benjamin Otte  <otte@gnome.org>
6714
6715         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
6716         (gst_file_index_load), (_file_index_id_save_entries),
6717         (gst_file_index_commit), (gst_file_index_add_association),
6718         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
6719         (gst_file_index_plugin_init):
6720           make debugging use a default category
6721
6722 2004-06-06  David Moore  <dcm@acm.org>
6723
6724         reviewed by Benjamin Otte  <otte@gnome.org>
6725
6726         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
6727         (gst_fdsrc_change_state):
6728           reset offset counter when going READY => PAUSED. (fixes #142903)
6729
6730 2004-06-06  ed@catmur.co.uk
6731
6732         reviewed by Benjamin Otte  <otte@gnome.org>
6733
6734         * gst/registries/gstxmlregistry.c:
6735         (gst_xml_registry_rebuild_recurse):
6736           don't rely on g_dir_open to figure out if a file is a directory, use
6737           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
6738           directories. (fixes #142850)
6739
6740 2004-06-06  Benjamin Otte  <otte@gnome.org>
6741
6742         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
6743           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
6744         * libs/gst/bytestream/adapter.c:
6745         * libs/gst/bytestream/adapter.h:
6746           fix copyright in header and typo in debugging category name
6747
6748 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6749
6750         * configure.ac:
6751           bump nano to cvs
6752
6753 === release 0.8.3 ===
6754
6755 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6756
6757         * configure.ac:
6758           update libtool versioning
6759           do a new release
6760         * docs/gst/tmpl/gstelement.sgml:
6761         * docs/gst/tmpl/gsttypes.sgml:
6762         * gst/gstinfo.c: (_gst_debug_init):
6763           put back GST_CAT_DATAFLOW to fix API breakage
6764
6765 2004-06-04  David Schleef  <ds@schleef.org>
6766
6767         * autogen.sh: Add a temporary 'env' to test buildbot problems.
6768
6769 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6770
6771         * configure.ac:
6772           bump nano to cvs
6773
6774 === release 0.8.2 ===
6775
6776 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6777
6778         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
6779           check GST_DEBUG environment variable which is parsed the same way
6780           as --gst-debug=
6781
6782 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6783
6784         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
6785                             gstmd5sink.c gstshaper.c gsttee.c
6786                             gsttypefindelement.c
6787         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
6788
6789           - removing trailing commas at end of enums
6790             it is correct C99 code but C90 compilers would complain
6791             (AIX, Forte, ...)
6792             ('should' fix #143290, at least partially)
6793
6794 2004-05-27  Wim Taymans  <wim@fluendo.com>
6795
6796         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
6797         (chain_group_set_enabled), (create_group), (add_to_group),
6798         (merge_groups), (setup_group_scheduler), (group_elements),
6799         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
6800         Don't try to follow the pad connections with other groups
6801         when a loop based element is added to the scheduler because
6802         the bin will inform the scheduler about the pad links a little
6803         later.
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),
6809         (setup_group_scheduler), (group_element_set_enabled),
6810         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
6811         (gst_opt_scheduler_show):
6812         Elements without a group can do a state change as well, just wait
6813         with the setup of the scheduling function when it is added to a
6814         chain.
6815
6816 2004-05-27  Wim Taymans  <wim@fluendo.com>
6817
6818         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6819         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
6820         (merge_groups), (setup_group_scheduler),
6821         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
6822         (gst_opt_scheduler_show):
6823         Fixes to maintain internal consistency of the scheduler data
6824         structures. 
6825          - adding an enabled group to a chain should increment the
6826            number of enabled elements in that chain.
6827          - removing an enabled group from a chain could disable the
6828            chain.
6829          - removing a disabled group from a chain could enable the
6830            chain.
6831          - add g_assert when internal inconsistency is detected.
6832          - adding an element to a group could increase the number of
6833            links this group has with other groups.
6834          - merging two groups also merges the chains.
6835          - also show group links in the _show method.
6836            
6837
6838 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6839
6840         * gst/gstcaps.c: (gst_caps_structure_simplify):
6841           don't print error messages when there is no error
6842         * gst/gstvalue.c: (gst_value_compare_int_range):
6843           compare the second value, too
6844         * testsuite/caps/Makefile.am:
6845         * testsuite/caps/random.c: (assert_on_error), (main):
6846           add tests to make sure the two things above are checked for
6847
6848 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6849
6850         * configure.ac:
6851         * libs/gst/dataprotocol/Makefile.am:
6852         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
6853         * libs/gst/dataprotocol/dataprotocol.h:
6854           wrap header in GST_ENABLE_NEW.  make code use it
6855
6856 2004-05-23  Johan Dahlin  <johan@gnome.org>
6857
6858         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
6859         so verbose and print GstElement signal names all the time.
6860
6861 2004-05-22  David Schleef  <ds@schleef.org>
6862
6863         * gst/registries/gstxmlregistry.c:
6864         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
6865         (bug #142957)
6866
6867 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
6868
6869         * configure.ac:
6870           scrub cflags for glib2 so gcc doesn't complain when glib is in
6871           /usr/local
6872
6873 2004-05-21  Johan Dahlin  <johan@gnome.org>
6874
6875         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
6876         __GNUC__, patch from Brian Cameron, fixes bug #142804
6877
6878 2004-05-20  David Schleef  <ds@schleef.org>
6879
6880         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
6881         comparison code.  (bug #142819)
6882
6883 2004-05-20  Wim Taymans  <wim@fluendo.com>
6884
6885         * gst/gstbuffer.c: (gst_buffer_default_copy):
6886         * gst/gstbuffer.h:
6887         Added Comment to a flag.
6888         copy relevant flags in _buffer_copy.
6889
6890 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6891
6892         reviewed by: Wim Taymans <wim at fluendo dot com>
6893
6894         * gst/gstbuffer.h:
6895           add GST_BUFFER_IN_CAPS buffer flag
6896         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6897         (gst_structure_parse_any_list), (gst_structure_parse_list),
6898         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
6899         * gst/gstvalue.c: (gst_value_serialize_any_list),
6900         (gst_value_transform_any_list_string),
6901         (gst_value_list_prepend_value), (gst_value_list_append_value),
6902         (gst_value_list_get_size), (gst_value_list_get_value),
6903         (gst_value_transform_list_string),
6904         (gst_value_transform_fixed_list_string),
6905         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
6906         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
6907         (_gst_value_initialize):
6908         * gst/gstvalue.h:
6909           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
6910           < , > as a format.
6911         * testsuite/caps/string-conversions.c: (main):
6912           add regression tests for < >
6913
6914 2004-05-20  Johan Dahlin  <johan@gnome.org>
6915
6916         * docs/gst/Makefile.am (all-local): Re-add
6917
6918 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6919
6920         * docs/gst/Makefile.am:
6921         * docs/gst/gstreamer-docs.sgml:
6922         * docs/libs/Makefile.am:
6923         * docs/libs/gstreamer-libs-docs.sgml:
6924           fix distcheck issues
6925
6926 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6927
6928         * libs/gst/dataprotocol/Makefile.am:
6929           add to autotest
6930
6931 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6932
6933         * libs/gst/dataprotocol/Makefile.am:
6934         * libs/gst/dataprotocol/dataprotocol.c:
6935         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6936         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
6937         * libs/gst/dataprotocol/dp-private.h:
6938           use GST macros to read/write fixed length ints
6939           add some more asserts
6940
6941 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6942
6943         * docs/libs/gstreamer-libs-docs.sgml:
6944         * docs/libs/gstreamer-libs-sections.txt:
6945           remove idct and putbits
6946         * configure.ac:
6947         * docs/libs/tmpl/gstdataprotocol.sgml:
6948         * libs/gst/Makefile.am:
6949         * libs/gst/dataprotocol/Makefile.am:
6950         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
6951         (buffer_test), (caps_test), (event_test), (main):
6952         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
6953         (gst_dp_dump_byte_array), (gst_dp_init),
6954         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
6955         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6956         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
6957         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
6958         (gst_dp_validate_header), (gst_dp_validate_payload),
6959         (gst_dp_validate_packet), (plugin_init):
6960         * libs/gst/dataprotocol/dataprotocol.h:
6961         * libs/gst/dataprotocol/dp-private.h:
6962           add dataprotocol
6963
6964 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6965
6966         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
6967           fix int variable deserialization and add a helper so we can actually
6968           debug this.
6969
6970 2004-05-18  David Schleef  <ds@schleef.org>
6971
6972         * testsuite/debug/commandline.c: (main): Call ./commandline, not
6973           argv[0].  Calling yourself is probably not the best way to
6974           construct a test like this, btw.
6975
6976 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6977
6978         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
6979           don't claim to be more intelligent than a scheduler when the
6980           scheduler claims the pipeline is stopped
6981         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
6982         (safe_cothread_destroy),
6983         (gst_entry_scheduler_remove_all_cothreads),
6984         (gst_entry_scheduler_reset), (_remove_cothread),
6985         (gst_entry_scheduler_state_transition):
6986           hold off cothread destruction if we're not in main cothread
6987         * configure.ac:
6988         * testsuite/Makefile.am:
6989           add new test dir
6990         * testsuite/schedulers/.cvsignore:
6991         * testsuite/schedulers/Makefile.am:
6992           add tests
6993         * testsuite/schedulers/relink.c: (cb_handoff), (main):
6994           check relinking and adding/removing elements from a running pipeline
6995         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
6996           check unlinking in a running pipeline
6997         * testsuite/schedulers/unref.c: (cb_handoff), (main):
6998           check unreffing a running pipeline
6999         * testsuite/schedulers/useless_iteration.c: (main):
7000           check iterating a pipeline that contains running threads works
7001
7002 2004-05-18  David Schleef  <ds@schleef.org>
7003
7004         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
7005           is false.
7006
7007 2004-05-18  Wim Taymans  <wim@fluendo.com>
7008
7009         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7010         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
7011         Fixed an error introduced with patch for 1.63. When setting
7012         a get based element as the entry point in a group, make sure
7013         to mark the group as GET based.
7014
7015 2004-05-18  Wim Taymans  <wim@fluendo.com>
7016
7017         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7018         (setup_group_scheduler), (loop_group_schedule_function),
7019         (gst_opt_scheduler_pad_link):
7020         Added some more debug info and fixed a bug where the group
7021         type was set to LOOP but it was in fact unknown.
7022
7023 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7024
7025         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
7026           make resetting scheduler work twice in a row
7027
7028 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7029
7030         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
7031         (CREATE_USERIALIZATION), (_gst_value_initialize),
7032         (gst_value_compare_float), (gst_value_serialize_float),
7033         (gst_value_deserialize_float), (gst_value_compare_enum),
7034         (gst_value_serialize_enum), (gst_value_deserialize_enum):
7035           add serialization and comparison functions for long, int64, enum and
7036           float values
7037         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
7038           use best serialization function in type hierarchy instead of only a
7039           matching one. This is required for enums to work.
7040         * gst/parse/grammar.y:
7041           use gst_caps_deserialize
7042         * testsuite/parse/Makefile.am:
7043           parse1 now works
7044         * testsuite/parse/parse1.c: (main):
7045           remove aggregator check, aggregator is broken, this test works now
7046           but fails because of bug #138012
7047         * testsuite/parse/parse2.c: (main):
7048           s/xvideosink/xvimagesink - this test looks a lot like we should
7049           disable it
7050
7051 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7052
7053         * gst/gstelement.c: (gst_element_class_init):
7054           whoops, store the signal id correctly
7055         * gst/schedulers/gstbasicscheduler.c:
7056         (gst_basic_scheduler_chain_wrapper):
7057           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
7058           chain function isn't linked
7059
7060 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
7061         * configure.ac:
7062         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
7063         support until we decide where the flags should be used
7064         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
7065         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
7066         * gst/gstpad.c: (gst_pad_link_call_link_functions):
7067         Output refused caps in the debug info
7068
7069 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7070
7071         * gst/elements/gstidentity.c: (gst_identity_chain):
7072           add duration debug
7073         * gst/gstinfo.c: (gst_debug_log_default):
7074           add timestamp
7075
7076 2004-05-13  Benjamin Otte  <otte@gnome.org>
7077
7078         * gst/gstpipeline.c: (gst_pipeline_dispose),
7079         (gst_pipeline_change_state):
7080           call gst_scheduler_reset on dispose (fixes #141416)
7081
7082 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7083
7084         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7085           compute mapsize correctly
7086         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7087           use correct datatypes when calling a varargs function
7088         * gst/elements/gsttypefindelement.c: (stop_typefinding):
7089           push a DISCONT event as first thing
7090         * gst/gst_private.h:
7091         * gst/gstinfo.c: (_gst_debug_init):
7092           remove GST_DATAFLOW debugging category
7093         * gst/gstbin.c: (gst_bin_iterate):
7094           use GST_SCHEDULING category
7095         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
7096         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
7097         (gst_pad_call_get_function):
7098           add GST_DATAFLOW to easily track flow of buffers or events.
7099         * gst/gstqueue.c: (gst_queue_get_type),
7100         (gst_queue_handle_pending_events), (gst_queue_chain),
7101         (gst_queue_get), (gst_queue_handle_src_event):
7102           use own static debugging category GST_DATAFLOW for dataflow,
7103           use DEBUG category for showing which path events go, use LOG
7104           category for buffers.
7105
7106 2004-05-10  David Schleef  <ds@schleef.org>
7107
7108         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
7109
7110 2004-05-10  David Schleef  <ds@schleef.org>
7111
7112         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
7113         symbols, because otherwise we don't know what they are.  Thanks,
7114         the GStreamer team.
7115         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
7116
7117 2004-05-10  David Schleef  <ds@schleef.org>
7118
7119         (from Steve Lhomme)
7120         * win32/Makefile: When using make clean the MS Visual Studio makefiles
7121         are deleted.  Fix.
7122         * win32/Makefile.inspect:
7123         * win32/Makefile.launch:
7124         * win32/Makefile.register:
7125
7126 2004-05-10  David Schleef  <ds@schleef.org>
7127
7128         * gst/gstinfo.h: Add missing inline function.
7129         * gst/gsttrace.c: add include
7130         * gst/parse/grammar.y: remove unused code
7131         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
7132         more portable.
7133         * tools/gst-register.c: wrap unistd.h
7134         
7135         More additions/fixes from Steve for the MSVC build.
7136         * win32/GStreamer.vcproj:
7137         * win32/Makefile:
7138         * win32/Makefile.inspect:
7139         * win32/Makefile.launch:
7140         * win32/Makefile.register:
7141         * win32/README.txt:
7142         * win32/gst-inspect.vcproj:
7143         * win32/gst-launch.vcproj:
7144         * win32/gst-register.vcproj:
7145         * win32/gstbytestream.def:
7146         * win32/gstbytestream.vcproj:
7147         * win32/gstconfig.h:
7148         * win32/gstelements.def:
7149         * win32/gstelements.vcproj:
7150         * win32/gstenumtypes.c:
7151         * win32/gstenumtypes.h:
7152         * win32/gstoptimalscheduler.def:
7153         * win32/gstoptimalscheduler.vcproj:
7154         * win32/gstreamer.def:
7155         * win32/gstspider.def:
7156         * win32/gstspider.vcproj:
7157         * win32/gstversion.h:
7158         * win32/msvc71.sln:
7159
7160 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7161
7162         * gst/gstelement.c: (gst_element_class_init),
7163         (gst_element_no_more_pads):
7164         * gst/gstelement.h:
7165           add gst_element_no_more_pads and the "no-more-pads" signal
7166
7167 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7168
7169         * gst/gstregistry.c: (gst_registry_add_plugin):
7170           refuse to add plugins when a plugin with same name is already
7171           registered. Fixes a bunch of "How to remove plugins?" issues.
7172           May lead to other problems though, let's test
7173
7174 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7175
7176         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
7177         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
7178         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
7179
7180 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7181
7182         * tests/Makefile.am: fix am16 issue
7183
7184 2004-05-09  Benjamin Otte  <otte@gnome.org>
7185
7186         * libs/gst/bytestream/Makefile.am:
7187           we should indeed add .c files to makefiles or they won't be built
7188           (d'oh)
7189
7190 2004-05-08  Benjamin Otte  <otte@gnome.org>
7191
7192         * gst/gstpad.c: (gst_pad_proxy_fixate):
7193           really reduce the set of caps
7194
7195 2004-05-08  Benjamin Otte  <otte@gnome.org>
7196
7197         * tests/Makefile.am:
7198         * tests/spidey_bench.c: (handoff), (main):
7199           add benchmark to test how long spider needs to create a pipeline
7200
7201 2004-05-08  Benjamin Otte  <otte@gnome.org>
7202
7203         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
7204           mark links as unengaged when unnegotiating instead of deactivating.
7205           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
7206
7207 2004-05-08  Benjamin Otte  <otte@gnome.org>
7208
7209         * docs/manual/helloworld.xml:
7210           s/audiosink/osssink (patch by Patrick Guimond)
7211
7212 2004-05-07  David Schleef  <ds@schleef.org>
7213
7214         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
7215         since it contains important stuff.
7216
7217 2004-05-07  David Schleef  <ds@schleef.org>
7218
7219         * testsuite/caps/caps.c: (test3), (main): A check for appending
7220         ANY caps.
7221
7222 2004-05-07  David Schleef  <ds@schleef.org>
7223
7224         * common/m4/as-compiler-flag.m4: Properly quote arguments,
7225         which may contain commas.  Fixes detection of -Wa,-mregnames
7226
7227 2004-05-06  David Schleef  <ds@schleef.org>
7228
7229         Changes to handle compilers that don't have variadic macro
7230         support.  In particular, glib headers define some inlines
7231         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
7232         builds.
7233         * gst/Makefile.am:
7234         * gst/cothreads.c:
7235         * gst/elements/gstfdsink.c:
7236         * gst/elements/gstfdsrc.c:
7237         * gst/elements/gstfilesink.c:
7238         * gst/elements/gstfilesrc.c:
7239         * gst/gst_private.h:
7240         * gst/gstatomic.c:
7241         * gst/gstcaps.c: (gst_caps_append):
7242         * gst/gstcpu.c: (gst_cpuid_i386):
7243         * gst/gstelement.c:
7244         * gst/gsterror.c:
7245         * gst/gstfilter.c:
7246         * gst/gstinfo.h:
7247         * gst/gstprobe.c:
7248         * gst/gstquery.c:
7249         * gst/gstregistry.c:
7250         * gst/gststructure.c:
7251         * gst/gsttaginterface.c:
7252         * gst/gsttrace.c: (gst_trace_new):
7253         * gst/gsttrashstack.c:
7254         * gst/gsturi.c:
7255         * gst/gstvalue.c:
7256         * gst/parse/grammar.y:
7257         * gst/parse/parse.l:
7258         * tools/gst-inspect.c: (main):
7259         * tools/gst-launch.c: (main):
7260         * tools/gst-xmlinspect.c: (PUT_STRING):
7261
7262 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7263
7264         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
7265         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
7266         * gst/elements/gstfilesrc.h:
7267           send NEW_MEDIA events correctly
7268         * gst/elements/gsttypefindelement.c: (start_typefinding),
7269         (gst_type_find_element_handle_event):
7270           restart typefinding when we get a NEW_MEDIA event
7271         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
7272         (gst_bin_dispose):
7273           don't die when someone removes elements in callbacks
7274         * gst/gstelement.c: (gst_element_change_state):
7275           improve debugging
7276         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
7277           we need a NEW_MEDIA event to engage a link
7278         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
7279           don't g_print debugging stuff
7280         * testsuite/caps/simplify.c: (check_caps):
7281
7282 2004-05-04  Benjamin Otte  <otte@gnome.org>
7283
7284         * gst/parse/grammar.y:
7285           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
7286
7287 2004-05-04  Benjamin Otte  <otte@gnome.org>
7288
7289         * testsuite/caps/renegotiate.c: (main):
7290           improve output in error case
7291
7292 2004-05-04  Benjamin Otte  <otte@gnome.org>
7293
7294         * gst/parse/grammar.y:
7295           fix assert to not trigger when there's no error argument
7296         * gst/parse/parse.l:
7297           fix definition of caps to allow more than two structures
7298         * testsuite/caps/Makefile.am:
7299         * testsuite/caps/renegotiate.c: (main):
7300           it's sinesrc and works in that case
7301
7302 2004-05-04  Wim Taymans  <wim@fluendo.com>
7303
7304         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7305         (group_dec_link), (gst_opt_scheduler_pad_unlink):
7306         when removing an element from a group, we always need to
7307         decrement the link count that this group had with other 
7308         groups through the element.
7309         added an extra assert to catch inconsistencies when decrementing
7310         the link count.
7311
7312 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7313
7314         * configure.ac:
7315         * docs/gst/Makefile.am:
7316         * docs/gst/gstreamer-sections.txt:
7317         * docs/gst/tmpl/gstcompat.sgml:
7318         * examples/appreader/Makefile.am:
7319         * examples/cutter/Makefile.am:
7320         * examples/events/Makefile.am:
7321         * examples/helloworld/Makefile.am:
7322         * examples/helloworld2/Makefile.am:
7323         * examples/launch/Makefile.am:
7324         * examples/manual/Makefile.am:
7325         * examples/mixer/Makefile.am:
7326         * examples/pingpong/Makefile.am:
7327         * examples/plugins/Makefile.am:
7328         * examples/queue/Makefile.am:
7329         * examples/queue2/Makefile.am:
7330         * examples/queue3/Makefile.am:
7331         * examples/queue4/Makefile.am:
7332         * examples/retag/Makefile.am:
7333         * examples/thread/Makefile.am:
7334         * examples/typefind/Makefile.am:
7335         * examples/xml/Makefile.am:
7336         * gst/Makefile.am:
7337         * gst/autoplug/Makefile.am:
7338         * gst/elements/Makefile.am:
7339         * gst/gstcompat.h:
7340         * gst/indexers/Makefile.am:
7341         * gst/parse/Makefile.am:
7342         * gst/registries/Makefile.am:
7343         * gst/schedulers/Makefile.am:
7344         * libs/gst/bytestream/Makefile.am:
7345         * libs/gst/control/Makefile.am:
7346         * libs/gst/getbits/Makefile.am:
7347         * po/af.po:
7348         * po/az.po:
7349         * po/en_GB.po:
7350         * po/fr.po:
7351         * po/nl.po:
7352         * po/sr.po:
7353         * po/sv.po:
7354         * po/tr.po:
7355         * po/uk.po:
7356         * tests/Makefile.am:
7357         * tests/bufspeed/Makefile.am:
7358         * tests/instantiate/Makefile.am:
7359         * tests/memchunk/Makefile.am:
7360         * tests/muxing/Makefile.am:
7361         * tests/negotiation/Makefile.am:
7362         * tests/probes/Makefile.am:
7363         * tests/sched/Makefile.am:
7364         * tests/seeking/Makefile.am:
7365         * tests/threadstate/Makefile.am:
7366         * testsuite/caps/Makefile.am:
7367         * testsuite/cleanup/Makefile.am:
7368         * testsuite/dlopen/Makefile.am:
7369         * testsuite/dynparams/Makefile.am:
7370         * testsuite/plugin/Makefile.am:
7371         * testsuite/states/Makefile.am:
7372         * tools/Makefile.am:
7373           reorganize compile/link flags to be consistent
7374           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
7375
7376 2004-05-04  David Schleef  <ds@schleef.org>
7377
7378         The "once more, with feeling" check-in.
7379         * testsuite/caps/Makefile.am: dist caps_strings
7380         * testsuite/caps/renegotiate.c: (main): This test triggers a
7381           segfault in the core.  Marking as failing.
7382
7383 2004-05-03  David Schleef  <ds@schleef.org>
7384
7385         * testsuite/caps/deserialize.c: (main): Fix problems noticed
7386           by the build bots.
7387         * testsuite/caps/renegotiate.c: (main): Same.
7388
7389 2004-05-03  David Schleef  <ds@schleef.org>
7390
7391         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
7392
7393 2004-05-03  David Schleef  <ds@schleef.org>
7394
7395         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
7396           variable to find our source file.
7397
7398 2004-05-03  David Schleef  <ds@schleef.org>
7399
7400         * configure.ac:  Link plugins with libgstreamer and dependent
7401           libraries
7402         * testsuite/caps/Makefile.am:
7403         * testsuite/caps/caps_strings:
7404         * testsuite/caps/deserialize.c: (main): Add a little test to slog
7405           through a file of caps strings and test each one
7406
7407 2004-05-04  Benjamin Otte  <otte@gnome.org>
7408
7409         * libs/gst/bytestream/Makefile.am:
7410         * libs/gst/bytestream/adapter.c: 
7411         * libs/gst/bytestream/adapter.h:
7412           add GstAdapter, similar to bytestream, but doesn't require ugly event
7413           handling or uglier loopbased elements
7414
7415 2004-05-03  David Schleef  <ds@schleef.org>
7416
7417         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
7418         * testsuite/caps/erathostenes.c:
7419         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
7420
7421 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7422
7423         * docs/pwg/pwg.xml:
7424           remove hardcoded stylesheet path (duh)
7425         * docs/random/release:
7426         * docs/gst/gstreamer-sections.txt:
7427         * gst/Makefile.am:
7428         * gst/gst.h:
7429         * gst/gst_private.h:
7430         * gst/gstcaps.c:
7431         * gst/gstevent.c:
7432         * gst/gstformat.c:
7433         * gst/gstinfo.c:
7434         * gst/gstinfo.h:
7435         * gst/gstinterface.c:
7436         * gst/gstmemchunk.c:
7437         * gst/gstprobe.c:
7438         * gst/gstquery.c:
7439         * gst/gstregistry.c:
7440         * gst/gstregistrypool.c:
7441         * gst/gststructure.c:
7442         * gst/gsttaginterface.c:
7443         * gst/gstthread.c:
7444         * gst/gsttrace.c:
7445         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
7446         * gst/gsturi.c:
7447         * gst/gstvalue.c:
7448           deprecate gst_info; remove gstlog.h
7449    
7450
7451 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7452
7453         * Makefile.am:
7454         * po/en_GB.po:
7455         * po/sv.po:
7456         * po/uk.po:
7457           updated translations
7458
7459 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7460
7461         * gst/gstbin.c: (gst_bin_dispose):
7462           better debugging
7463
7464 2004-05-03  Johan Dahlin  <johan@gnome.org>
7465
7466         * gst/schedulers/gstoptimalscheduler.c
7467         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
7468         really is a GstElement. Avoids critical when running gst-launch -v
7469         and a oggdemux/decoding pipeline.
7470
7471 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7472
7473         * docs/gst/tmpl/gstpipeline.sgml :
7474         * docs/manual/elements-api.xml :
7475                 doc fix by Patrick Guimond (Protector) from devel ML
7476                 reviewed by ronald
7477
7478 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7479
7480         * docs/gst/Makefile.am :
7481         * docs/libs/Makefile.am :
7482                 apply a patch from Arwed v. Merkatz so that gtk-doc
7483                 generated docs install (same for .devhelp file)
7484                 (fixes part 1 of #138836)
7485
7486 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7487
7488         * docs/faq/dependencies.xml: typo
7489         * docs/faq/getting.xml :
7490             - fix download URL for new gstreamer site
7491             - hide sf.net download page as latest version aren't there
7492             - fix apt URLs
7493             - fill "get via CVS" paragraph (link to dev page on the site)
7494         * docs/faq/general.xml:
7495             hide status tables as they no more exists
7496             change case on plugins license file to reflect reality
7497         * docs/faq/troubleshooting.xml:
7498             remove the wiki question/answer as there is no more wiki
7499
7500 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
7501
7502         * gst/gsterror.h:
7503           include the headers needed for declarations used in this header
7504
7505 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7506
7507         * docs/random/uraeus/gstreamer_and_midi.txt :
7508           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
7509           (fixes #132288)
7510
7511 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
7512
7513         reviewed by Benjamin Otte  <otte@gnome.org>
7514
7515         * gst/schedulers/gthread-cothreads.h:
7516           free allocated data for main cothread, too when destroying context
7517           (fixes #141417)
7518
7519 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7520
7521         * docs/manual/goals.xml : remove duplicated paragraph at end 
7522         of doc page (fixes #141448)
7523
7524 2004-04-29  David Schleef  <ds@schleef.org>
7525
7526         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
7527         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
7528
7529 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7530
7531         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
7532           fix property
7533         * gst/gstcaps.c:
7534           fix doc string
7535         * po/POTFILES.in:
7536           rename typefind source file
7537
7538 2004-04-28  David Schleef  <ds@schleef.org>
7539
7540         Several new files from Steve Lhomme's MSVC patch (bug #141317):
7541         * win32/GStreamer.vcproj:
7542         * win32/Makefile:
7543         * win32/config.h:
7544         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
7545         (_trewinddir), (_ttelldir), (_tseekdir):
7546         * win32/dirent.h:
7547         * win32/gst-inspect.vcproj:
7548         * win32/gst-launch.vcproj:
7549         * win32/gst-register.vcproj:
7550         * win32/gstbytestream.vcproj:
7551         * win32/gstelements.vcproj:
7552         * win32/gstoptimalscheduler.vcproj:
7553         * win32/gstspider.vcproj:
7554         * win32/gtchar.h:
7555         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
7556         * win32/mman.h:
7557         * win32/mman.inl:
7558         * win32/msvc71.sln:
7559
7560 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7561
7562         * gst/gst.c: (init_post):
7563         * gst/gstinfo.c:
7564           remove useless _gst_progname stuff
7565         * tools/gst-inspect.c: (print_field), (print_caps):
7566           improve caps output
7567
7568 2004-04-28  David Schleef  <ds@schleef.org>
7569
7570         Disable parsing of a lot of files that aren't part of the
7571         exported API.  Move corresponding template files to old/,
7572         waiting for removal when they don't contain anything
7573         interesting.
7574         * docs/gst/Makefile.am:
7575         * docs/gst/gstreamer-sections.txt:
7576         * docs/gst/tmpl/cothreads.sgml:
7577         * docs/gst/tmpl/cothreads_compat.sgml:
7578         * docs/gst/tmpl/gettext.sgml:
7579         * docs/gst/tmpl/gobject2gtk.sgml:
7580         * docs/gst/tmpl/grammar.tab.sgml:
7581         * docs/gst/tmpl/gst-i18n-app.sgml:
7582         * docs/gst/tmpl/gst-i18n-lib.sgml:
7583         * docs/gst/tmpl/gst_private.sgml:
7584         * docs/gst/tmpl/gstaggregator.sgml:
7585         * docs/gst/tmpl/gstarch.sgml:
7586         * docs/gst/tmpl/gstatomic_impl.sgml:
7587         * docs/gst/tmpl/gstbufferstore.sgml:
7588         * docs/gst/tmpl/gstdata_private.sgml:
7589         * docs/gst/tmpl/gstdisksink.sgml:
7590         * docs/gst/tmpl/gstdisksrc.sgml:
7591         * docs/gst/tmpl/gstelementfactory.sgml:
7592         * docs/gst/tmpl/gstextratypes.sgml:
7593         * docs/gst/tmpl/gstfakesink.sgml:
7594         * docs/gst/tmpl/gstfakesrc.sgml:
7595         * docs/gst/tmpl/gstfdsink.sgml:
7596         * docs/gst/tmpl/gstfdsrc.sgml:
7597         * docs/gst/tmpl/gstfilesink.sgml:
7598         * docs/gst/tmpl/gstfilesrc.sgml:
7599         * docs/gst/tmpl/gsthttpsrc.sgml:
7600         * docs/gst/tmpl/gstidentity.sgml:
7601         * docs/gst/tmpl/gstindexfactory.sgml:
7602         * docs/gst/tmpl/gstmarshal.sgml:
7603         * docs/gst/tmpl/gstmd5sink.sgml:
7604         * docs/gst/tmpl/gstmultidisksrc.sgml:
7605         * docs/gst/tmpl/gstmultifilesrc.sgml:
7606         * docs/gst/tmpl/gstpadtemplate.sgml:
7607         * docs/gst/tmpl/gstpipefilter.sgml:
7608         * docs/gst/tmpl/gstschedulerfactory.sgml:
7609         * docs/gst/tmpl/gstsearchfuncs.sgml:
7610         * docs/gst/tmpl/gstshaper.sgml:
7611         * docs/gst/tmpl/gstspider.sgml:
7612         * docs/gst/tmpl/gstspideridentity.sgml:
7613         * docs/gst/tmpl/gststatistics.sgml:
7614         * docs/gst/tmpl/gsttee.sgml:
7615         * docs/gst/tmpl/gsttimecache.sgml:
7616         * docs/gst/tmpl/gsttypefind.sgml:
7617         * docs/gst/tmpl/gsttypefindfactory.sgml:
7618         * docs/gst/tmpl/gstxmlregistry.sgml:
7619         * docs/gst/tmpl/gthread-cothreads.sgml:
7620         * docs/gst/tmpl/old/cothreads.sgml:
7621         * docs/gst/tmpl/old/cothreads_compat.sgml:
7622         * docs/gst/tmpl/old/gettext.sgml:
7623         * docs/gst/tmpl/old/gobject2gtk.sgml:
7624         * docs/gst/tmpl/old/grammar.tab.sgml:
7625         * docs/gst/tmpl/old/gst-i18n-app.sgml:
7626         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
7627         * docs/gst/tmpl/old/gst_private.sgml:
7628         * docs/gst/tmpl/old/gstaggregator.sgml:
7629         * docs/gst/tmpl/old/gstarch.sgml:
7630         * docs/gst/tmpl/old/gstatomic_impl.sgml:
7631         * docs/gst/tmpl/old/gstbufferstore.sgml:
7632         * docs/gst/tmpl/old/gstdata_private.sgml:
7633         * docs/gst/tmpl/old/gstdisksink.sgml:
7634         * docs/gst/tmpl/old/gstdisksrc.sgml:
7635         * docs/gst/tmpl/old/gstelementfactory.sgml:
7636         * docs/gst/tmpl/old/gstextratypes.sgml:
7637         * docs/gst/tmpl/old/gstfakesink.sgml:
7638         * docs/gst/tmpl/old/gstfakesrc.sgml:
7639         * docs/gst/tmpl/old/gstfdsink.sgml:
7640         * docs/gst/tmpl/old/gstfdsrc.sgml:
7641         * docs/gst/tmpl/old/gstfilesink.sgml:
7642         * docs/gst/tmpl/old/gstfilesrc.sgml:
7643         * docs/gst/tmpl/old/gsthttpsrc.sgml:
7644         * docs/gst/tmpl/old/gstidentity.sgml:
7645         * docs/gst/tmpl/old/gstindexfactory.sgml:
7646         * docs/gst/tmpl/old/gstmarshal.sgml:
7647         * docs/gst/tmpl/old/gstmd5sink.sgml:
7648         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
7649         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
7650         * docs/gst/tmpl/old/gstpadtemplate.sgml:
7651         * docs/gst/tmpl/old/gstpipefilter.sgml:
7652         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
7653         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
7654         * docs/gst/tmpl/old/gstshaper.sgml:
7655         * docs/gst/tmpl/old/gstspider.sgml:
7656         * docs/gst/tmpl/old/gstspideridentity.sgml:
7657         * docs/gst/tmpl/old/gststatistics.sgml:
7658         * docs/gst/tmpl/old/gsttee.sgml:
7659         * docs/gst/tmpl/old/gsttimecache.sgml:
7660         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
7661         * docs/gst/tmpl/old/gstxmlregistry.sgml:
7662         * docs/gst/tmpl/old/gthread-cothreads.sgml:
7663         * docs/gst/tmpl/old/types.sgml:
7664         * docs/gst/tmpl/types.sgml:
7665
7666         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
7667         gtkdoc-scan doesn't like files with the same name in different
7668         directories.
7669         * gst/elements/Makefile.am:
7670         * gst/elements/gstelements.c:
7671         * gst/elements/gsttypefind.c: 
7672         * gst/elements/gsttypefind.h:
7673         * gst/elements/gsttypefindelement.c:
7674         * gst/elements/gsttypefindelement.h:
7675
7676 2004-04-28  David Schleef  <ds@schleef.org>
7677
7678         A bunch of portability fixes, derived from Steve Lhomme's MSVC
7679         patch (bug #141317):
7680         * gst/gst-i18n-lib.h: Allow disabling gettext.
7681         * gst/gstatomic_impl.h: disable warning when it's dumb.
7682         * gst/gstclock.c: fix include
7683         * gst/gstcompat.h: fix variadic macro
7684         * gst/gstinfo.c: fix include
7685         * gst/gstmacros.h: add defines for inlines on MSVC
7686         * gst/gstplugin.c: fix includes
7687         * gst/gstregistry.c: fix includes
7688         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
7689         * gst/gstsystemclock.c: fix include
7690         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
7691         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
7692         * gst/registries/gstxmlregistry.c:
7693         (gst_xml_registry_parse_element_factory): fix use of non-portable
7694         functions
7695         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
7696         * libs/gst/control/dparammanager.h: same
7697
7698 2004-04-28  David Schleef  <ds@schleef.org>
7699
7700         Move a bunch of unused files to old/ with names that are
7701         not case-insensitive-unique.  These files still contain some
7702         useful information that needs to be merged into gstbin.sgml,
7703         etc., so they shouldn't be deleted yet.
7704         * docs/gst/tmpl/GstBin.sgml:
7705         * docs/gst/tmpl/GstBuffer.sgml:
7706         * docs/gst/tmpl/GstCaps.sgml:
7707         * docs/gst/tmpl/GstClock.sgml:
7708         * docs/gst/tmpl/GstCompat.sgml:
7709         * docs/gst/tmpl/GstData.sgml:
7710         * docs/gst/tmpl/GstElement.sgml:
7711         * docs/gst/tmpl/GstEvent.sgml:
7712         * docs/gst/tmpl/GstIndex.sgml:
7713         * docs/gst/tmpl/GstStructure.sgml:
7714         * docs/gst/tmpl/GstTag.sgml:
7715         * docs/gst/tmpl/old/GstBin.sgml:
7716         * docs/gst/tmpl/old/GstBuffer.sgml:
7717         * docs/gst/tmpl/old/GstCaps.sgml:
7718         * docs/gst/tmpl/old/GstClock.sgml:
7719         * docs/gst/tmpl/old/GstCompat.sgml:
7720         * docs/gst/tmpl/old/GstData.sgml:
7721         * docs/gst/tmpl/old/GstElement.sgml:
7722         * docs/gst/tmpl/old/GstEvent.sgml:
7723         * docs/gst/tmpl/old/GstIndex.sgml:
7724         * docs/gst/tmpl/old/GstStructure.sgml:
7725         * docs/gst/tmpl/old/GstTag.sgml:
7726
7727 2004-04-28  David Schleef  <ds@schleef.org>
7728
7729         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
7730         (gst_caps_append), (gst_caps_append_structure),
7731         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
7732         (gst_caps_set_simple), (gst_caps_set_simple_valist),
7733         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
7734         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
7735         (gst_caps_intersect), (gst_caps_normalize),
7736         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
7737         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
7738         * gst/gstcaps.h: use GST_IS_CAPS().
7739
7740 2004-04-26  David Schleef  <ds@schleef.org>
7741
7742         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
7743         assembly.  gcc doesn't handle it correctly. (bug #141083)
7744         * gst/gsttrashstack.h: same
7745
7746 2004-04-25  Benjamin Otte  <otte@gnome.org>
7747
7748         * gst/gstelement.c: (gst_element_change_state):
7749           fix assertion to do an int comparison
7750
7751 2004-04-25  Benjamin Otte  <otte@gnome.org>
7752
7753         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7754           better debugging output on error
7755
7756 2004-04-25  Benjamin Otte  <otte@gnome.org>
7757
7758         * gst/gstcaps.c: (gst_caps_subtract):
7759           fix memleak
7760
7761 2004-04-23  Benjamin Otte  <otte@gnome.org>
7762
7763         * gst/gstvalue.c: (gst_value_compare_buffer),
7764         (_gst_value_initialize):
7765           add comparison function for buffers
7766
7767 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7768
7769         * docs/pwg/pwg.xml:
7770           Just found out that this so-called "ima-wav" format is really
7771           just "dvi adpcm" (according to the MS WAV documentation). So
7772           renaming it. We didn't use it yet anyway.
7773
7774 2004-04-23  Benjamin Otte  <otte@gnome.org>
7775
7776         * gst/gstcaps.c: (gst_caps_is_always_compatible):
7777           call gst_caps_is_subset
7778
7779 2004-04-23  Benjamin Otte  <otte@gnome.org>
7780
7781         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
7782         (gst_caps_is_subset):
7783           add documentation
7784
7785 2004-04-23  Benjamin Otte  <otte@gnome.org>
7786           
7787         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
7788         (gst_caps_structure_subtract), (gst_caps_subtract),
7789         (gst_caps_structure_figure_out_union),
7790         (gst_caps_structure_simplify), (gst_caps_do_simplify):
7791           fix simplifying and subtracting not working correctly with optional
7792           properties
7793           solve assorted problems that make it now simplify ebven more
7794         * docs/gst/tmpl/gstcaps.sgml:
7795         * gst/gstcaps.h:
7796           make gst_caps_do_simplify return a bool to indicate if it simplified
7797         * testsuite/caps/simplify.c: (main):
7798           add more checks. The tests is quite a bit useless right now because
7799           the core is heavily simplifying itself.
7800         * testsuite/caps/caps.h:
7801           fix caps to contain all optional properties
7802
7803 2004-04-22  Benjamin Otte  <otte@gnome.org>
7804
7805         * docs/gst/tmpl/gstcaps.sgml:
7806         * docs/gst/tmpl/gstfilesrc.sgml:
7807         * docs/gst/tmpl/gststructure.sgml:
7808         * docs/gst/tmpl/gstvalue.sgml:
7809           update for recent API changes
7810         * gst/gstcaps.c: (gst_caps_do_simplify):
7811           fix to stop trying with a freed structure
7812         * gst/gstpad.c: (gst_pad_link_fixate):
7813           simplify caps
7814         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
7815           remove C++ comment
7816         * gst/gstpad.h:
7817           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
7818         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7819         (gst_structure_to_string):
7820           keep the correct type when using lists of ranges
7821         * gst/gstvalue.c: (gst_value_list_prepend_value),
7822         (gst_value_list_append_value):
7823           copy the value before adding to the list (d'oh)
7824         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
7825         (gst_value_subtract_int_range_int_range):
7826           handle overflows correctly
7827         * gst/gstvalue.c: (gst_value_subtract_from_list):
7828           fix memleak
7829         * testsuite/caps/caps.h:
7830           add a caps that caused segfaults
7831
7832 2004-04-22  Benjamin Otte  <otte@gnome.org>
7833
7834         * testsuite/refcounting/pad.c: (main):
7835           fix test
7836
7837 2004-04-22  Benjamin Otte  <otte@gnome.org>
7838
7839         * gst/gstcaps.c: (gst_caps_subtract):
7840           allow subtracting ANY and EMPTY from ANY caps
7841
7842 2004-04-22  Benjamin Otte  <otte@gnome.org>
7843
7844         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
7845         (gst_caps_union):
7846           only simplify in functions that create new caps. Simplifying in
7847           gst_caps_append breaks tests.
7848
7849 2004-04-22  Benjamin Otte  <otte@gnome.org>
7850
7851         * gst/gstcaps.c: (gst_caps_structure_simplify):
7852           unset GValue after use
7853         * gst/gstcaps.c: (gst_caps_append), 
7854         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
7855           use gst_caps_simplify (reduces registry size by 30%)
7856         * gst/gstpad.c: (gst_pad_template_new):
7857           don't allow NULL caps
7858
7859 2004-04-22  Benjamin Otte  <otte@gnome.org>
7860
7861         * docs/gst/gstreamer-sections.txt:
7862           add gst_caps_do_simplify
7863         * gst/gstcaps.c:
7864           add documentation for gst_caps_do_simplify
7865         * gst/gstvalue.h:
7866           fix typo in gst_value_register_subtract_func declaration for gst-doc
7867
7868 2004-04-22  Benjamin Otte  <otte@gnome.org>
7869
7870         * gst/gstcaps.c: (gst_caps_from_string_inplace):
7871           fix bug when converting from empty string.
7872         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
7873         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
7874           use gst_caps_new_empty to allocate a new caps. Only that function
7875           allocates memory for caps now.
7876         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
7877         (gst_caps_remove_structure):
7878           add ability to remove one structure (but not to header yet)
7879         * gst/gstcaps.c: (gst_caps_compare_structures),
7880         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
7881         (gst_caps_structure_simplify), (gst_caps_do_simplify),
7882         * gst/gstcaps.h:
7883           add gst_caps_do_simplify that tries to simplify a caps in place.
7884           Deprecate old gst_caps_simplify function.
7885         * testsuite/caps/caps.h:
7886           add caps.h containing a common set of caps to test against.
7887         * testsuite/caps/sets.c: (check_caps), (main):
7888           use it.
7889         * testsuite/caps/.cvsignore:
7890         * testsuite/caps/Makefile.am:
7891         * testsuite/caps/simplify.c: (check_caps), (main):
7892           add test to check correctness and efficency of caps simplification.
7893
7894 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
7895
7896         reviewed by Benjamin Otte  <otte@gnome.org>
7897
7898         * gst/gstparse.c: (_gst_parse_escape):
7899           Free the GString used in _gst_parse_escape()
7900
7901 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7902
7903         * gst/gstpad.c: (gst_pad_link_negotiate):
7904           refuse to link if the link is not possible
7905         * configure.ac:
7906         * testsuite/Makefile.am:
7907         * testsuite/negotiation/.cvsignore:
7908         * testsuite/negotiation/Makefile.am:
7909         * testsuite/negotiation/pad_link.c: (main):
7910           add test that checks the above behaviour
7911
7912 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7913
7914         * docs/gst/gstreamer-sections.txt:
7915           add newly added API
7916
7917 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7918
7919         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
7920         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
7921         (gst_filesrc_open_file), (gst_filesrc_close_file),
7922         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
7923         * gst/elements/gstfilesrc.h:
7924           add support for non-regular files (#140734)
7925
7926 2004-04-21  Benjamin Otte  <otte@gnome.org>
7927
7928         * gst/gstpad.c: (gst_pad_link_fixate):
7929           add sophisticated error checking code to see if fixation functions
7930           did their fixation right
7931
7932 2004-04-21  Benjamin Otte  <otte@gnome.org>
7933
7934         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
7935           check for ANY caps before appending/unioning
7936         * gst/gstcaps.c: (gst_caps_is_subset),
7937         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
7938         (gst_caps_structure_subtract), (gst_caps_subtract):
7939         * gst/gstcaps.h:
7940           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
7941           the API. deprecate gst_caps_is_equal_fixed
7942         * gst/gstpad.c: (gst_pad_try_set_caps):
7943         * gst/gstqueue.c: (gst_queue_link):
7944           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
7945         * gst/gststructure.c: (gst_structure_get_name_id):
7946         * gst/gststructure.h:
7947           add function gst_structure_get_name_id
7948         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
7949         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
7950         (gst_value_subtract_int_range_int_range),
7951         (gst_value_subtract_double_double_range),
7952         (gst_value_subtract_double_range_double),
7953         (gst_value_subtract_double_range_double_range),
7954         (gst_value_subtract_from_list), (gst_value_subtract_list),
7955         (gst_value_can_intersect), (gst_value_subtract),
7956         (gst_value_can_subtract), (gst_value_register_subtract_func),
7957         (_gst_value_initialize):
7958         * gst/gstvalue.h:
7959           add support for subtracting values from each other. Note that
7960           subtracting means subtracting as in set theory. Required for caps
7961           stuff above.
7962         * testsuite/caps/.cvsignore:
7963         * testsuite/caps/Makefile.am:
7964         * testsuite/caps/erathostenes.c: (erathostenes), (main):
7965         * testsuite/caps/sets.c: (check_caps), (main):
7966         * testsuite/caps/subtract.c: (check_caps), (main):
7967           add tests for subtraction and equality code.
7968
7969 2004-04-20  David Schleef  <ds@schleef.org>
7970
7971         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
7972         * gst/indexers/Makefile.am:
7973         * gst/schedulers/Makefile.am:
7974         * libs/gst/bytestream/Makefile.am:
7975         * libs/gst/control/Makefile.am:
7976         * libs/gst/getbits/Makefile.am:
7977
7978 2004-04-20  David Schleef  <ds@schleef.org>
7979
7980         * common/as-libtool.mak: Fine-tune DLL building.
7981         * configure.ac: Link plugins against libgstreamer.  Define plugindir
7982         (like gst-plugins)
7983         * examples/plugins/Makefile.am: remove plugindir
7984         * gst/autoplug/Makefile.am: DLL building fixes
7985         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
7986         Windows.
7987         * gst/elements/gstelements.c: Conditionally disable pipefilter.
7988         * gst/indexers/Makefile.am: DLL building fixes
7989         * gst/schedulers/Makefile.am: DLL building fixes.
7990         * libs/gst/bytestream/Makefile.am: DLL building fixes.
7991         * libs/gst/control/Makefile.am: same
7992         * libs/gst/getbits/Makefile.am: same
7993         * testsuite/Makefile.am: New dlopen directory
7994         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
7995         when dlopened.
7996         * testsuite/dlopen/dlopen_gst.c: (main): same
7997         * testsuite/dlopen/loadgst.c: (do_test): same
7998
7999 2004-04-20  David Schleef  <ds@schleef.org>
8000
8001         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
8002         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
8003
8004 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8005
8006         * gst/gstelement.c: (gst_element_wait),
8007         (gst_element_set_time_delay), (gst_element_change_state):
8008           Use GST_TIME_*
8009
8010 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8011
8012         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
8013         (gst_spider_identity_plug):
8014           improve debugging messages
8015         * gst/gstbin.c: (gst_bin_remove_func):
8016           make sure the state_change function is only called with simple state
8017           transitions
8018
8019 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8020
8021         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
8022         (gst_fakesink_set_property), (gst_fakesink_chain):
8023         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
8024         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
8025         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
8026         * gst/elements/gstidentity.c: (gst_identity_chain),
8027         (gst_identity_set_property):
8028         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
8029         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
8030           add warnings to _set_property for unknown arguments
8031           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
8032
8033 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8034
8035         * Makefile.am:
8036         * docs/manuals.mak:
8037           add .po file download snippet
8038           fix a bug in the doc makefile
8039
8040 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8041
8042         * Makefile.am:
8043         * po/LINGUAS:
8044         * po/en_GB.po:
8045           Added en_GB translation (Gareth Owen)
8046
8047 2004-04-20  Johan Dahlin  <johan@gnome.org>
8048
8049         * gst/gstpad.c (_invent_event): Clean up
8050
8051 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8052
8053         * testsuite/caps/filtercaps.c: (main):
8054           fix test to test things correctly (caps are complicated)
8055
8056 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8057
8058         * testsuite/caps/Makefile.am:
8059         * testsuite/caps/filtercaps.c: (main):
8060           add test (that doesn't work right now, but should)
8061
8062 2004-04-19  David Schleef  <ds@schleef.org>
8063
8064         * configure.ac: Add test for allowing unaligned access.  Add define
8065         to put in gstconfig.h.
8066         * docs/gst/gstreamer-sections.txt: New symbols
8067         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
8068         * docs/gst/tmpl/gstfilesrc.sgml:
8069         * docs/gst/tmpl/gstparse.sgml:
8070         * docs/gst/tmpl/gsttypes.sgml:
8071         * docs/gst/tmpl/gstutils.sgml:
8072         * docs/gst/tmpl/gstvalue.sgml:
8073         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
8074         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
8075         on most !i386/!powerpc architectures.  From Daniel Gazard
8076         <daniel.gazard@free.fr>.  (bug #140156)
8077         * po/af.po: Check in changes made by gettext.
8078         * po/az.po:
8079         * po/fr.po:
8080         * po/nl.po:
8081         * po/sr.po:
8082         * po/sv.po:
8083
8084 2004-04-20  Benjamin Otte  <otte@gnome.org>
8085
8086         * gst/schedulers/entryscheduler.c: 
8087         (gst_entry_scheduler_yield):
8088           refuse to yield when decoupled elements insist on doing that.
8089           At least it's better than crashing
8090
8091 2004-04-19  David Schleef  <ds@schleef.org>
8092
8093         * docs/libs/Makefile.am: Change sinclude to include
8094         * docs/gst/Makefile.am: same
8095         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
8096
8097 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8098
8099         * po/LINGUAS:
8100         * po/uk.po:
8101           Added Ukrainian translation (Maxim V. Dziumanenko)
8102
8103 2004-04-19  Johan Dahlin  <johan@gnome.org>
8104
8105         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
8106         checking here, do it before calling the function.
8107         Clean up, use for loops instead of while loops while iterating
8108         over lists.
8109
8110         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
8111         in debug message.
8112         (gst_spider_create_and_plug): Improve debug message.
8113         General: Replace while loops which iterates over GLists with for
8114         loops. Which are much cleaner, improves readability, especially
8115         for gst_spider_identity_plug
8116
8117         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
8118         fixes bug 140477
8119
8120 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8121
8122         * po/LINGUAS:
8123         * po/tr.po:
8124           Added Turkish translation (Baris Cicek)
8125
8126 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8127
8128         * docs/faq/troubleshooting.xml:
8129           Mention gst-register in the FAQ (fixes 139045).
8130
8131 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8132
8133         * docs/gst/gstreamer-sections.txt:
8134
8135 2004-04-17  Benjamin Otte  <otte@gnome.org>
8136
8137         * gst/gstelement.c: (gst_element_dispose):
8138           simplify
8139         * gst/gstpad.c: (gst_pad_call_chain_function):
8140           don't create loads of events due to bad macro usage
8141
8142 2004-04-16  David Schleef  <ds@schleef.org>
8143
8144         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
8145         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
8146         * gst/gstvalue.c: (gst_value_serialize_buffer),
8147         (gst_value_deserialize_buffer), (gst_type_is_fixed),
8148         (_gst_value_initialize): Create a new function gst_type_is_fixed()
8149         to indicate types that are fixed wrt caps or not.  Switching to
8150         this function fixes (bug #140298).
8151         * gst/gstvalue.h:
8152
8153 2004-04-16  David Schleef  <ds@schleef.org>
8154
8155         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
8156         for GST_UNALIGNED_ACESS, since we essentially know which archs
8157         are ok.
8158
8159 2004-04-17  Benjamin Otte  <otte@gnome.org>
8160
8161         * docs/gst/Makefile.am:
8162           ignore gst/parse directory when building docs (fixes #140205)
8163
8164 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8165
8166         * testsuite/refcounting/mem.c: (vmsize):
8167           do error checking
8168
8169 2004-04-16  Johan Dahlin  <johan@gnome.org>
8170
8171         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
8172         and gst_pad_call_get_function.
8173
8174 2004-04-15  David Schleef  <ds@schleef.org>
8175
8176         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
8177         checks if we can access unaligned memory.
8178         * configure.ac: Use it.
8179
8180 2004-04-16  Benjamin Otte  <otte@gnome.org>
8181
8182         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
8183         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8184         * gst/elements/gstfilesrc.h:
8185           s/seek_happened/need_discont/ and require discont before sending any
8186           data
8187
8188 2004-04-15  David Schleef  <ds@schleef.org>
8189
8190         * gst/gstvalue.c: (gst_value_serialize_buffer),
8191         (gst_value_deserialize_buffer), (_gst_value_initialize):
8192         Register these types as fundamental types. (bug #140015)
8193
8194 2004-04-16  Benjamin Otte  <otte@gnome.org>
8195
8196         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
8197         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
8198         (gst_pad_pull):
8199           implement enforcing discont events before buffers are passed. This
8200           allows state changes of only some elements and later correctly going
8201           on where they left off (or in short: you can now set audio sinks to
8202           NULL to release the device when the pipeline is paused)
8203         * gst/gstpad.c: (gst_pad_call_chain_function),
8204         (gst_pad_call_get_function):
8205         * gst/gstpad.h:
8206           add gst_pad_call_chain_function and gst_pad_call_get_function for
8207           scheduler interaction. They are required because of the changes
8208           above.
8209         * gst/schedulers/entryscheduler.c: (get_buffer),
8210         (gst_entry_scheduler_chain_wrapper),
8211         (gst_entry_scheduler_get_wrapper),
8212         (gst_entry_scheduler_state_transition),
8213         (gst_entry_scheduler_pad_link):
8214         * gst/schedulers/gstbasicscheduler.c:
8215         (gst_basic_scheduler_chain_wrapper),
8216         (gst_basic_scheduler_src_wrapper),
8217         (gst_basic_scheduler_chainhandler_proxy),
8218         (gst_basic_scheduler_gethandler_proxy),
8219         (gst_basic_scheduler_cothreaded_chain),
8220         (gst_basic_scheduler_chain_elements):
8221         * gst/schedulers/gstoptimalscheduler.c:
8222         (get_group_schedule_function), (pad_clear_queued),
8223         (gst_opt_scheduler_pad_link):
8224           use the new functions instead of calling get/chain-functions
8225           directly.
8226
8227 2004-04-15  David Schleef  <ds@schleef.org>
8228
8229         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
8230         * docs/gst/tmpl/gstinfo.sgml: same
8231         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
8232         gtk-doc put here.
8233         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
8234         * examples/queue/queue.c: (main):  We iterate pipelines, not
8235         bins.  (bug #139996)
8236
8237 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8238
8239         * docs/pwg/advanced-types.xml:
8240           Add MS RLE support. Also document Qt RLE although I have no sample
8241           files for that yet. And document an extra property for ADPCM.
8242
8243 2004-04-15  David Schleef  <ds@schleef.org>
8244
8245         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
8246         (_gst_plugin_fault_handler_setup):  Disable more stuff on
8247         Windows.
8248
8249 2004-04-15  David Schleef  <ds@schleef.org>
8250
8251         * gst/gstinfo.c: (_gst_debug_init): Change some internal
8252         symbol names to not conflict with new gstinfo.h symbols.
8253         * gst/gstinfo.h: Add inline functions for all those crazy
8254         compilers that don't know how to handle variadic macros (MSVC).
8255
8256 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8257
8258         * configure.ac: bump nano to 1
8259
8260 === release 0.8.1 ===
8261
8262 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8263
8264         * NEWS:
8265         * RELEASE:
8266         * configure.ac:
8267           releasing 0.8.1, "Snow Brigade"
8268
8269 2004-04-14  David Schleef  <ds@schleef.org>
8270
8271         * testsuite/Makefile.am: define tests_ignore
8272         * testsuite/Rules: Added new tests_ignore, which get compiled,
8273         but not run (generally because they're inconsistent or have
8274         heisenbugs).  Now we can ensure all the .c files compile in
8275         testsuite/.
8276         * testsuite/bins/Makefile.am: define tests_ignore
8277         * testsuite/bytestream/Makefile.am:
8278         * testsuite/caps/Makefile.am:
8279         * testsuite/clock/Makefile.am:
8280         * testsuite/debug/Makefile.am:
8281         * testsuite/debug/global.c: (gst_debug_log_one),
8282         (gst_debug_log_two): Fix compilation problem.
8283         * testsuite/dynparams/Makefile.am:
8284         * testsuite/elements/Makefile.am:
8285         * testsuite/ghostpads/Makefile.am:
8286         * testsuite/indexers/Makefile.am:
8287         * testsuite/parse/Makefile.am:
8288         * testsuite/plugin/Makefile.am:
8289         * testsuite/refcounting/Makefile.am:
8290         * testsuite/refcounting/element_pad.c: (main): Don't return leak
8291         results, because it's not calculated correctly.
8292         * testsuite/refcounting/pad.c: (main): same
8293         * testsuite/states/Makefile.am:
8294         * testsuite/tags/Makefile.am:
8295         * testsuite/threads/Makefile.am:
8296
8297 2004-04-14  David Schleef  <ds@schleef.org>
8298
8299         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
8300         generating bad code around the cpu detection asm code.
8301
8302 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8303
8304         * tools/gst-inspect.c: (print_element_info):
8305           print numeric version of rank as well, since we added some - 1
8306           rank values to elements
8307
8308 2004-04-13  David Schleef  <ds@schleef.org>
8309
8310         * configure.ac:  Disable various code when compiling for MinGW.
8311         * gst/elements/Makefile.am:
8312         * gst/elements/gstelements.c:
8313         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
8314         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
8315         * gst/registries/gstxmlregistry.c: (make_dir):
8316
8317 2004-04-13  David Schleef  <ds@schleef.org>
8318
8319         * gst/Makefile.am:
8320         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
8321         assembly.
8322         * gst/gstcpuid_i386.s: remove
8323
8324 2004-04-13  David Schleef  <ds@schleef.org>
8325
8326         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
8327         seems to think it needs to be done.
8328         * docs/gst/tmpl/gstfakesink.sgml:
8329         * docs/gst/tmpl/gstfakesrc.sgml:
8330         * docs/gst/tmpl/gstfdsink.sgml:
8331         * docs/gst/tmpl/gstfdsrc.sgml:
8332         * docs/gst/tmpl/gstfilesink.sgml:
8333         * docs/gst/tmpl/gstfilesrc.sgml:
8334         * docs/gst/tmpl/gstidentity.sgml:
8335         * docs/gst/tmpl/gstmd5sink.sgml:
8336         * docs/gst/tmpl/gstmultifilesrc.sgml:
8337         * docs/gst/tmpl/gstpipefilter.sgml:
8338         * docs/gst/tmpl/gstshaper.sgml:
8339         * docs/gst/tmpl/gstspider.sgml:
8340         * docs/gst/tmpl/gstspideridentity.sgml:
8341         * docs/gst/tmpl/gststatistics.sgml:
8342         * docs/gst/tmpl/gsttee.sgml:
8343         * docs/gst/tmpl/gsttypefind.sgml:
8344         * docs/gst/tmpl/gstutils.sgml:
8345
8346 2004-04-13  David Schleef  <ds@schleef.org>
8347
8348         * configure.ac: Changes to remove POSIXisms (mmap in this case)
8349         and to build DLLs on Windows.
8350         * gst/Makefile.am:
8351         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8352         (gst_filesrc_open_file):
8353         * gst/schedulers/Makefile.am:
8354
8355 2004-04-13  David Schleef  <ds@schleef.org>
8356
8357         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
8358         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
8359         fixating lists.
8360
8361 2004-04-12  David Schleef  <ds@schleef.org>
8362
8363         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
8364         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
8365         to using it.
8366         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
8367         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
8368         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
8369         * gst/gststructure.c: (gst_structure_set_valist),
8370         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
8371         support for buffers.
8372         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
8373         intended to be const.
8374         * gst/gsttag.h: same
8375         * gst/gstvalue.c: (gst_value_serialize_buffer),
8376         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
8377         to (de)serialize buffers.
8378         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
8379         * testsuite/caps/string-conversions.c: (main):
8380         * testsuite/caps/value_serialize.c: add new test
8381
8382 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8383
8384         * docs/pwg/advanced-types.xml:
8385           Document MS video 1 (video/x-msvideocodec) mimetype/format.
8386
8387 2004-04-11  Benjamin Otte  <otte@gnome.org>
8388
8389         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
8390           rename categories to basic_*
8391         * gst/schedulers/gstbasicscheduler.c: 
8392         (gst_basic_scheduler_chain_wrapper),
8393         (gst_basic_scheduler_chainhandler_proxy),
8394         (gst_basic_scheduler_gethandler_proxy),
8395         (gst_basic_scheduler_eventhandler_proxy):
8396           debugging category fixes - put common stuff in log category
8397         * gst/schedulers/gstbasicscheduler.c: 
8398         (gst_basic_scheduler_chain_elements):
8399           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
8400           active and linking two active chains
8401
8402 2004-04-10  Benjamin Otte  <otte@gnome.org>
8403
8404         * docs/pwg/intro-preface.xml:
8405           fix dead links and remove reference to Wiki
8406
8407 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8408
8409         * gst/schedulers/gstbasicscheduler.c:
8410           make sure we can switch back to the main function if we're still in
8411           the main function (supposed to fix #139617)
8412         * gst/schedulers/gthread-cothreads.h:
8413           don't throw an error when switching to the same cothread
8414
8415 2004-04-09  Benjamin Otte  <otte@gnome.org>
8416
8417         * gst/gstbin.c: (gst_bin_get_type):
8418         * gst/gstclock.c: (gst_clock_get_type):
8419         * gst/gstindex.c: (gst_index_get_type):
8420         * gst/gstobject.c: (gst_object_get_type),
8421         (gst_signal_object_get_type):
8422         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
8423         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
8424         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
8425         * gst/gstqueue.c: (gst_queue_get_type):
8426         * gst/gstregistry.c: (gst_registry_get_type):
8427         * gst/gstsystemclock.c: (gst_system_clock_get_type):
8428         * gst/gstthread.c: (gst_thread_get_type):
8429           don't use memchunks for these objects, use malloc instead
8430
8431 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
8432
8433         * docs/gst/.cvsignore:
8434         * docs/gst/Makefile.am:
8435         * docs/gst/gstreamer-sections.txt:
8436         * docs/gst/tmpl/gstaggregator.sgml:
8437         * docs/gst/tmpl/gstbuffer.sgml:
8438         * docs/gst/tmpl/gstclock.sgml:
8439         * docs/gst/tmpl/gstelement.sgml:
8440         * docs/gst/tmpl/gstfakesink.sgml:
8441         * docs/gst/tmpl/gstfakesrc.sgml:
8442         * docs/gst/tmpl/gstfdsink.sgml:
8443         * docs/gst/tmpl/gstfdsrc.sgml:
8444         * docs/gst/tmpl/gstfilesink.sgml:
8445         * docs/gst/tmpl/gstfilesrc.sgml:
8446         * docs/gst/tmpl/gstidentity.sgml:
8447         * docs/gst/tmpl/gstindex.sgml:
8448         * docs/gst/tmpl/gstinfo.sgml:
8449         * docs/gst/tmpl/gstmd5sink.sgml:
8450         * docs/gst/tmpl/gstmultifilesrc.sgml:
8451         * docs/gst/tmpl/gstpad.sgml:
8452         * docs/gst/tmpl/gstpipefilter.sgml:
8453         * docs/gst/tmpl/gstpipeline.sgml:
8454         * docs/gst/tmpl/gstpluginfeature.sgml:
8455         * docs/gst/tmpl/gstqueue.sgml:
8456         * docs/gst/tmpl/gstregistry.sgml:
8457         * docs/gst/tmpl/gstscheduler.sgml:
8458         * docs/gst/tmpl/gstshaper.sgml:
8459         * docs/gst/tmpl/gstspider.sgml:
8460         * docs/gst/tmpl/gstspideridentity.sgml:
8461         * docs/gst/tmpl/gststatistics.sgml:
8462         * docs/gst/tmpl/gstsystemclock.sgml:
8463         * docs/gst/tmpl/gsttee.sgml:
8464         * docs/gst/tmpl/gstthread.sgml:
8465         * docs/gst/tmpl/gsttypefind.sgml:
8466         * docs/gst/tmpl/gstutils.sgml:
8467           further doc build fixes
8468
8469 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
8470
8471         * docs/gst/Makefile.am:
8472           make docs exit on scanning problems
8473           fix nonsrcdir build issues
8474         * docs/gst/gstreamer-sections.txt:
8475           adding stuff from -unused
8476         * gst/gstqueue.h:
8477           create GstQueueSize
8478         * gst/schedulers/cothreads_compat.h:
8479           fix cothread warnings
8480
8481 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
8482
8483         * docs/gst/gstreamer-sections.txt:
8484           remove defines deprecated by Benjamin
8485
8486 2004-04-07  Benjamin Otte  <otte@gnome.org>
8487
8488         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
8489           when the buffer is complete, don't check if other buffers are needed
8490         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
8491           check that the offset is >0 so we don't try to read before the
8492           beginning of the file
8493         * gst/gstpad.c: (gst_pad_set_pad_template):
8494           sink the template, so we don't end up with 130k pad templates
8495
8496 2004-04-06  Benjamin Otte  <otte@gnome.org>
8497
8498         * gst/autoplug/gstspider.c: (gst_spider_link_add):
8499           don't ref the element, adding already reffed it. And we didn't unref
8500           it later anyway... (huge memleak when you used many spider elements)
8501         * gst/gstelement.c: (gst_element_base_class_finalize):
8502         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
8503         (gst_element_register):
8504         * gst/gsturi.c: (gst_element_make_from_uri):
8505           use gst_object_(un)ref instead of g_object(un)ref
8506
8507 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8508
8509         * gst/gstbuffer.h:
8510           remove macro that wouldn't work anymore because struct member has
8511           been removed.
8512         * gst/schedulers/entryscheduler.c: (schedule_forward):
8513           fix segfault for unconnected pads
8514         
8515 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8516
8517         reviewed by David Schleef <ds@schleef.org>
8518
8519         * gst/gstinfo.h:
8520           *_FORMAT modifiers should require putting a % in front of them for
8521           consistency reasons.
8522
8523 2004-04-05  Colin Walters  <walters@redhat.com>
8524
8525         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
8526         space.
8527
8528 2004-04-05  Benjamin Otte  <otte@gnome.org>
8529
8530         * configure.ac:
8531         * gst/Makefile.am:
8532         * gst/gst_private.h:
8533         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
8534           add support for detecting if GStreamer runs inside valgrind.
8535           requires valgrind (d'oh) and --enable-debug for correct cdetection.
8536           print a big message in valgrind that GStreamer has detected it's
8537           running inside and might now use different code.
8538         * gst/gstmemchunk.c: (populate), (free_area),
8539         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
8540         (gst_mem_chunk_free):
8541           flag memchunks for valgrind, so it can detect leaking of chunks.
8542           This allows detecting leaks of GstBuffer and GstEvent correctly
8543           inside valgrind.
8544
8545 2004-04-05  David Schleef  <ds@schleef.org>
8546
8547         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
8548           jensgr@gmx.net (Jens Granseuer)
8549
8550 2004-04-05  David Schleef  <ds@schleef.org>
8551
8552         * gst/gstbuffer.c: (_gst_buffer_sub_free),
8553         (gst_buffer_default_free), (gst_buffer_default_copy),
8554         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
8555         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
8556         structures in one place.
8557
8558 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8559
8560         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
8561           (GST_TIME_FORMAT, GST_TIME_ARGS)
8562
8563 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8564
8565         * testsuite/elements/Makefile.am:
8566           disable test until it stops breaking make distcheck
8567
8568 2004-04-05  Johan Dahlin  <johan@gnome.org>
8569
8570         * po/sv.po: Updated translation
8571
8572 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8573
8574         * gst/gstplugin.c: (gst_plugin_load_file):
8575           fix segfault for when original plugin was loaded statically
8576
8577 2004-04-05  Benjamin Otte  <otte@gnome.org>
8578
8579         * testsuite/debug/category.c: (main):
8580         * testsuite/debug/commandline.c: (main):
8581         * testsuite/debug/output.c: (main):
8582           fix tests to work again with debugging enabled
8583
8584 2004-04-05  Benjamin Otte  <otte@gnome.org>
8585
8586         * gst/schedulers/gstbasicscheduler.c:
8587         (gst_basic_scheduler_pad_link):
8588           fix to work with recent scheduling changes
8589
8590 2004-04-05  Benjamin Otte  <otte@gnome.org>
8591
8592         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
8593         prepareChangeLog doesn't work when cvs indents):
8594           don't throw an error when no element can be scheduled, there's too
8595           many weird reasons why it doesn't work. Return STOPPED instead.
8596           decoupled elemts' schedulability doesn't depend on bufpens.
8597
8598 2004-04-04  Benjamin Otte  <otte@gnome.org>
8599
8600         * gst/schedulers/gstbasicscheduler.c:
8601         (gst_basic_scheduler_pad_select):
8602           fix uninitialized variable warnings
8603
8604 2004-04-04  Benjamin Otte  <otte@gnome.org>
8605
8606         * gst/gstpad.c: (gst_pad_collect_valist):
8607           fix uninitialized variable warning
8608         * gst/schedulers/entryscheduler.c: (schedule_forward):
8609           fix shadowed variable
8610
8611 2004-04-04  Benjamin Otte  <otte@gnome.org>
8612
8613         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
8614         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
8615         (gst_pad_select):
8616         * gst/gstpad.h:
8617         * gst/gstscheduler.c: (gst_scheduler_pad_select),
8618         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
8619         * gst/gstscheduler.h:
8620           implement gst_pad_collect as replacement for gst_pad_select.
8621           deprecate gst_pad_select and gst_scheduler_(un)lock_element
8622           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
8623           new pad_select, lock and unlock calls.
8624         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
8625         * gst/cothreads.h:
8626         * gst/schedulers/cothreads_compat.h:
8627         * gst/schedulers/gthread-cothreads.h:
8628           remove unused cothread_lock and cothread_unlock calls
8629         * gst/schedulers/entryscheduler.c:
8630         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
8631         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
8632         (gst_entry_scheduler_pad_select):
8633           update to new API
8634         * gst/schedulers/gstbasicscheduler.c:
8635         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
8636         (gst_basic_scheduler_pad_select):
8637           remove useless lock and unlock calls, update pad_select to new API
8638           (untested)
8639         * gst/schedulers/gstoptimalscheduler.c:
8640         (gst_opt_scheduler_class_init):
8641           remove useless select, lock and unlock function calls
8642         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
8643           use gst_pad_collect instead of gst_pad_select
8644
8645 2004-04-04  Benjamin Otte  <otte@gnome.org>
8646
8647         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
8648         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
8649         (schedule_next_element), (print_entry):
8650           add can_schedule_pad to handle element states.
8651           add schedule_forward to select the correct entry to schedule next
8652
8653 2004-04-03  Benjamin Otte  <otte@gnome.org>
8654
8655         * gst/schedulers/entryscheduler.c: 
8656           remove unused variable, fix error inside Rb, fix compile warning in
8657           unreachable code
8658
8659 2004-04-03  Benjamin Otte  <otte@gnome.org>
8660
8661         * gst/schedulers/entryscheduler.c:
8662           completely revamp the inner workings, so it's a lot easier to
8663           understand and extend
8664
8665 2004-04-03  Andy Wingo  <wingo@pobox.com>
8666
8667         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
8668         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
8669         This allows better introspection of pipeline topology.
8670         (add_to_chain): Don't do trickery to put loop elements first;
8671         rather, queue a chain sort by marking the chain as dirty.
8672         (remove_from_chain): Mark the chain dirty.
8673         (sort_chain): New function. Sorts the group list so that terminal
8674         sinks are first. This means elements on the sink side will be
8675         preferentially sscheduled before elements on the src side of the
8676         pipeline.
8677         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
8678         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
8679         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
8680         (group_inc_link): Change argument and variable names to match the
8681         new link structure member names (src and sink).
8682         (group_dec_link): Add some description
8683
8684 2004-04-03  Benjamin Otte  <otte@gnome.org>
8685
8686         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
8687         * gst/gstinfo.h:
8688         * testsuite/debug/category.c: (main):
8689         * testsuite/debug/commandline.c: (main):
8690         * testsuite/debug/output.c: (main):
8691         * testsuite/debug/printf_extension.c: (main):
8692           fix to successfully build and test with --disable-gst-debug
8693           configure switch (fixes #138705)
8694
8695 2004-04-03  Benjamin Otte  <otte@gnome.org>
8696
8697         * docs/pwg/building-boiler.xml:
8698           add cvs login line and s/anonymous/anoncvs/
8699
8700 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
8701
8702         reviewed by Benjamin Otte  <otte@gnome.org>
8703
8704         * gst/gststructure.c: (gst_structure_free):
8705           memleak fix: free fields array (partial fix for #134839)
8706
8707 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8708
8709         * docs/random/ds/0.9-suggested-changes:
8710           Add a note to change handoff use in fakesrc to be usable in
8711           a more generic way (fakesrc should be renamed to appsrc or so).
8712         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8713           Change signal type to scope, so we can fill the buffer in the
8714           handoff handler (that's the whole use of this signal...).
8715
8716 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8717
8718         * docs/pwg/other-ntoone.xml:
8719           Document muxers and n-to-1 elements.
8720
8721 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
8722
8723         * gst/registries/gstxmlregistry.c
8724         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
8725         determine if a file is a G_MODULE. The old one discards paths
8726         containing "so" somewhere in the middle. My home directory is
8727         called "soto". Go figure...
8728
8729 2004-03-31  David Schleef  <ds@schleef.org>
8730
8731         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
8732         to eventually deprecate gst_buffer_merge().  (bug: #136408)
8733         * gst/gstbuffer.h:
8734
8735 2004-03-31  David Schleef  <ds@schleef.org>
8736
8737         * gst/gstvalue.c: (gst_value_union_int_int_range),
8738         (gst_value_union_int_range_int_range), (gst_value_can_union),
8739         (gst_value_union), (_gst_value_initialize):  Add some union
8740         implementations.  We didn't have any previously.
8741         * testsuite/caps/Makefile.am:
8742         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
8743         (gst_audioscale_getcaps), (test_caps), (main): A little test
8744         that is the same as the caps manipulation in audioscale.
8745
8746 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8747
8748         * docs/faq/general.xml:
8749           add entry about "does gst support format X?"
8750
8751 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8752
8753         * gst/gstthread.c:
8754           fix docs
8755         * gst/gstutils.h:
8756           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
8757
8758 2004-03-30  Benjamin Otte  <otte@gnome.org>
8759
8760         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
8761           set the offset of the buffer to the requested offset
8762         * gst/elements/gsttypefind.c: (stop_typefinding):
8763           revert patch 1.18 (which I unfortunately don't know the reason for).
8764           This is needed to allow downstream elements to seek. Otherwise
8765           typefind might overwrite a previous seek by downstream elements.
8766           This lead to errors with id3tag and typefind on some mp3s.
8767         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8768         (gst_entry_scheduler_iterate):
8769           be more verbose when debugging
8770
8771 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8772
8773         * gst/gstcaps.c: (gst_caps_from_string_inplace):
8774           make sure we don't get NULL strings
8775
8776 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8777
8778         * gst/gstcaps.c:
8779         * gst/gstelement.c:
8780         * gst/gstelementfactory.c: (gst_element_factory_get_type):
8781         * gst/gstindex.c: (gst_index_resolver_get_type),
8782         (gst_index_get_type), (gst_index_factory_get_type):
8783         * gst/gstinfo.c:
8784         * gst/gstpad.c:
8785         * gst/gstplugin.c:
8786         * gst/gsturi.c: (gst_uri_handler_get_type):
8787         * gst/gstvalue.c:
8788           first batch of documentation fixes
8789
8790 2004-03-29  David Schleef  <ds@schleef.org>
8791
8792         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
8793         * docs/gst/gstreamer-docs.sgml:  More hacking
8794         * docs/gst/gstreamer-sections.txt:
8795         * docs/gst/tmpl/cothreads_compat.sgml:
8796         * docs/gst/tmpl/gstcaps.sgml:
8797         * docs/gst/tmpl/gstclock.sgml:
8798         * docs/gst/tmpl/gstelement.sgml:
8799         * docs/gst/tmpl/gstevent.sgml:
8800         * docs/gst/tmpl/gstpad.sgml:
8801         * docs/gst/tmpl/gstutils.sgml:
8802         * docs/gst/tmpl/gstxml.sgml:
8803         * docs/gst/tmpl/gthread-cothreads.sgml:
8804         * docs/random/ds/0.9-suggested-changes:
8805         * gst/elements/gstfakesink.h: doc fixes
8806         * gst/elements/gstfakesrc.h: doc fixes
8807         * gst/gstcaps.c: doc fixes
8808         * gst/gstcaps.h: doc fixes
8809         * gst/gstelement.c: doc fixes
8810         * gst/gstelement.h: doc fixes
8811         * gst/gstindex.c: doc fixes
8812         * gst/gstinfo.c: doc fixes
8813         * gst/gstpad.c: doc fixes
8814         * gst/gstpad.h: doc fixes
8815         * gst/gstplugin.c: doc fixes
8816         * gst/gsttypefind.h: doc fixes
8817         * gst/gsturi.c: doc fixes
8818         * gst/gstvalue.c: doc fixes
8819
8820 2004-03-29  Colin Walters  <walters@redhat.com>
8821
8822         * gst/registries/gstxmlregistry.c (get_time)
8823         (plugin_times_older_than_recurse):
8824         Use the result of stat to determine whether a path is a file,
8825         so we don't attempt to opendir() files.
8826
8827 2004-03-29  Benjamin Otte  <otte@gnome.org>
8828
8829         * gst/gstpad.c: (gst_pad_set_explicit_caps):
8830           print caps in debugging output when setting caps failed
8831         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8832         (schedule_next_element), (get_buffer), (run_chainhandler),
8833         (element_may_start), (gst_entry_scheduler_chain_handler),
8834         (gst_entry_scheduler_get_handler),
8835         (gst_entry_scheduler_state_transition),
8836         (gst_entry_scheduler_pad_link):
8837           make this scheduler a testcase for mandatory
8838           discont-before-first-buffer which is needed if we want to allow apps
8839           to release the sound device.
8840           add SCHED_ASSERT macro to print scheduler state before an assertion
8841           triggers.
8842
8843 2004-03-29  Benjamin Otte  <otte@gnome.org>
8844
8845         * COPYING:
8846           replace by LGPL (former COPYING.LIB). The core is completely
8847           licensed LGPL.
8848         * COPYING.LIB:
8849           remove
8850
8851 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8852
8853         * po/af.po:
8854         * po/sv.po:
8855           updated Afrikaans and Swedish
8856
8857 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8858
8859         * po/LINGUAS:
8860         * po/az.po:
8861           adding Azerbaijani (Mətin Əmirov)
8862
8863 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
8864
8865         * gst/gstelement.h: 
8866         * gst/gstelement.c (gst_element_set_time_delay): New function for
8867         setting element time taking into account a hardware buffering
8868         delay.
8869         (gst_element_set_time): Now just an invocation of
8870         gst_element_set_time_delay.
8871         * gst/gstclock.h: 
8872         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
8873         allowing to set event times in the future.
8874         (gst_clock_get_event_time): Now just an invocation of
8875         gst_clock_get_event_time_delay.
8876
8877 2004-03-28  Benjamin Otte  <otte@gnome.org>
8878
8879         * gst/gstbin.c: (gst_bin_set_element_sched),
8880         (gst_bin_unset_element_sched):
8881           don't add decoupled elements to schedulers - otherwise it's
8882           impossible to control if a link to a decoupled element was already
8883           removed from a scheduler or not.
8884         * gst/schedulers/cothreads_compat.h:
8885         * gst/schedulers/gthread-cothreads.h:
8886           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
8887           is no "unused" warning.
8888         * gst/schedulers/Makefile.am:
8889         * gst/schedulers/entryscheduler.c:
8890           add new scheduler, based on ideas from talking to David and Martin.
8891           It's supposed to be small and correct. Currently it's also slow (but
8892           it's not noticable)
8893         * examples/retag/retag.c: (main):
8894         * testsuite/bytestream/test1.c: (main):
8895           fix missing NULLs at end of variadic functions
8896         * testsuite/elements/.cvsignore:
8897           update
8898
8899 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
8900
8901         * gst/gstevent.h:
8902         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
8903
8904 2004-03-25  David Schleef  <ds@schleef.org>
8905
8906         * docs/gst/gstreamer-sections.txt:  More doc hacking.
8907         * docs/gst/tmpl/gstaggregator.sgml:
8908         * docs/gst/tmpl/gstautoplugfactory.sgml:
8909         * docs/gst/tmpl/gstbin.sgml:
8910         * docs/gst/tmpl/gstbuffer.sgml:
8911         * docs/gst/tmpl/gstbufferstore.sgml:
8912         * docs/gst/tmpl/gstfakesink.sgml:
8913         * docs/gst/tmpl/gstfakesrc.sgml:
8914         * docs/gst/tmpl/gstmd5sink.sgml:
8915         * docs/gst/tmpl/gstreamer-unused.sgml:
8916         * docs/gst/tmpl/gstsearchfuncs.sgml:
8917         * docs/gst/tmpl/gstshaper.sgml:
8918         * docs/gst/tmpl/gstspider.sgml:
8919         * docs/gst/tmpl/gsttee.sgml:
8920         * docs/gst/tmpl/gstutils.sgml:
8921         * docs/gst/tmpl/gstvalue.sgml:
8922         * docs/gst/tmpl/gstxml.sgml:
8923         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
8924         and we don't support it.
8925         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
8926         (gst_use_threads), (gst_has_threads): same
8927         * gst/gstthreaddummy.c: same
8928         * gst/autoplug/gstspider.c: Make gst_spider_details static.
8929         * gst/autoplug/gstspider.h: same
8930         * gst/elements/gstaggregator.h: Remove bogus function from header
8931         * gst/elements/gstfakesink.h: same
8932         * gst/elements/gstfakesrc.h: same
8933         * gst/elements/gstmd5sink.h: same
8934         * gst/elements/gstshaper.h: same
8935         * gst/elements/gsttee.h: same
8936         * gst/gstbin.c: doc fixes
8937         * gst/gstbin.h: Remove unused definition.
8938         * gst/gstbuffer.c: doc fixes
8939         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
8940         * gst/gstfilter.c: doc fixes
8941         * gst/gsttag.c: doc fixes
8942         * gst/gstvalue.c: doc fixes
8943
8944 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8945
8946         * docs/pwg/advanced-types.xml:
8947           Document typefinding.
8948         * docs/pwg/other-oneton.xml:
8949           Document one-to-n elements, demuxers and parsers.
8950
8951 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
8952
8953         reviewed by: David Schleef  <ds@schleef.org>
8954
8955         * configure.ac: Check bison version (bug #127838)
8956
8957 2004-03-25  David Schleef  <ds@schleef.org>
8958
8959         * docs/gst/gstreamer-docs.sgml: More fine tuning.
8960         * docs/gst/gstreamer-sections.txt:
8961         * docs/gst/tmpl/gstautoplug.sgml:
8962         * docs/gst/tmpl/gststaticautoplug.sgml:
8963         * docs/gst/tmpl/gststaticautoplugrender.sgml:
8964         * docs/gst/tmpl/gstutils.sgml:
8965         * docs/gst/tmpl/gstxml.sgml:
8966
8967 2004-03-24  David Schleef  <ds@schleef.org>
8968
8969         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
8970         manual being such complete crap, that I decided to do major
8971         hacking of it.  This checkin replaces any fine tuning that
8972         may have been done previously, with the benefit of actually
8973         being complete for much of the API that was changed since
8974         0.6.  Further fine tuning will occur shortly.  (bug #134721)
8975         * docs/gst/gstreamer-sections.txt:
8976         * docs/gst/tmpl/GstBin.sgml:
8977         * docs/gst/tmpl/GstBuffer.sgml:
8978         * docs/gst/tmpl/GstCaps.sgml:
8979         * docs/gst/tmpl/GstClock.sgml:
8980         * docs/gst/tmpl/GstCompat.sgml:
8981         * docs/gst/tmpl/GstData.sgml:
8982         * docs/gst/tmpl/GstElement.sgml:
8983         * docs/gst/tmpl/GstEvent.sgml:
8984         * docs/gst/tmpl/GstIndex.sgml:
8985         * docs/gst/tmpl/GstStructure.sgml:
8986         * docs/gst/tmpl/GstTag.sgml:
8987         * docs/gst/tmpl/cothreads.sgml:
8988         * docs/gst/tmpl/cothreads_compat.sgml:
8989         * docs/gst/tmpl/gettext.sgml:
8990         * docs/gst/tmpl/grammar.tab.sgml:
8991         * docs/gst/tmpl/gst-i18n-app.sgml:
8992         * docs/gst/tmpl/gst-i18n-lib.sgml:
8993         * docs/gst/tmpl/gst.sgml:
8994         * docs/gst/tmpl/gst_private.sgml:
8995         * docs/gst/tmpl/gstaggregator.sgml:
8996         * docs/gst/tmpl/gstarch.sgml:
8997         * docs/gst/tmpl/gstatomic.sgml:
8998         * docs/gst/tmpl/gstatomic_impl.sgml:
8999         * docs/gst/tmpl/gstbin.sgml:
9000         * docs/gst/tmpl/gstbuffer.sgml:
9001         * docs/gst/tmpl/gstbufferstore.sgml:
9002         * docs/gst/tmpl/gstcaps.sgml:
9003         * docs/gst/tmpl/gstclock.sgml:
9004         * docs/gst/tmpl/gstcompat.sgml:
9005         * docs/gst/tmpl/gstconfig.sgml:
9006         * docs/gst/tmpl/gstcpu.sgml:
9007         * docs/gst/tmpl/gstdata.sgml:
9008         * docs/gst/tmpl/gstdata_private.sgml:
9009         * docs/gst/tmpl/gstelement.sgml:
9010         * docs/gst/tmpl/gstenumtypes.sgml:
9011         * docs/gst/tmpl/gsterror.sgml:
9012         * docs/gst/tmpl/gstevent.sgml:
9013         * docs/gst/tmpl/gstfakesink.sgml:
9014         * docs/gst/tmpl/gstfakesrc.sgml:
9015         * docs/gst/tmpl/gstfilesink.sgml:
9016         * docs/gst/tmpl/gstfilter.sgml:
9017         * docs/gst/tmpl/gstindex.sgml:
9018         * docs/gst/tmpl/gstinfo.sgml:
9019         * docs/gst/tmpl/gstinterface.sgml:
9020         * docs/gst/tmpl/gstlog.sgml:
9021         * docs/gst/tmpl/gstmacros.sgml:
9022         * docs/gst/tmpl/gstmarshal.sgml:
9023         * docs/gst/tmpl/gstmd5sink.sgml:
9024         * docs/gst/tmpl/gstmultifilesrc.sgml:
9025         * docs/gst/tmpl/gstobject.sgml:
9026         * docs/gst/tmpl/gstpad.sgml:
9027         * docs/gst/tmpl/gstparse.sgml:
9028         * docs/gst/tmpl/gstpipeline.sgml:
9029         * docs/gst/tmpl/gstplugin.sgml:
9030         * docs/gst/tmpl/gstpluginfeature.sgml:
9031         * docs/gst/tmpl/gstqueue.sgml:
9032         * docs/gst/tmpl/gstreamer-unused.sgml:
9033         * docs/gst/tmpl/gstregistry.sgml:
9034         * docs/gst/tmpl/gstregistrypool.sgml:
9035         * docs/gst/tmpl/gstscheduler.sgml:
9036         * docs/gst/tmpl/gstsearchfuncs.sgml:
9037         * docs/gst/tmpl/gstshaper.sgml:
9038         * docs/gst/tmpl/gstspider.sgml:
9039         * docs/gst/tmpl/gstspideridentity.sgml:
9040         * docs/gst/tmpl/gststructure.sgml:
9041         * docs/gst/tmpl/gstsystemclock.sgml:
9042         * docs/gst/tmpl/gsttag.sgml:
9043         * docs/gst/tmpl/gsttaginterface.sgml:
9044         * docs/gst/tmpl/gsttee.sgml:
9045         * docs/gst/tmpl/gstthread.sgml:
9046         * docs/gst/tmpl/gsttrace.sgml:
9047         * docs/gst/tmpl/gsttrashstack.sgml:
9048         * docs/gst/tmpl/gsttypefind.sgml:
9049         * docs/gst/tmpl/gsttypes.sgml:
9050         * docs/gst/tmpl/gsturi.sgml:
9051         * docs/gst/tmpl/gsturitype.sgml:
9052         * docs/gst/tmpl/gstutils.sgml:
9053         * docs/gst/tmpl/gstvalue.sgml:
9054         * docs/gst/tmpl/gstversion.sgml:
9055         * docs/gst/tmpl/gstxml.sgml:
9056         * docs/gst/tmpl/gstxmlregistry.sgml:
9057         * docs/gst/tmpl/gthread-cothreads.sgml:
9058         * docs/gst/tmpl/types.sgml:
9059
9060 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9061
9062         * docs/pwg/other-sink.xml:
9063         * docs/pwg/other-source.xml:
9064           Documentation on how to write source and sink elements. Other
9065           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
9066           manager, autoplugger) are all still pending.
9067
9068 2004-03-25  Benjamin Otte  <otte@gnome.org>
9069
9070         * testsuite/elements/Makefile.am:
9071         * testsuite/elements/gst-compprep-check:
9072           add check to make sure gst-compprep works
9073         * testsuite/elements/gst-inspect-check.in:
9074           improve initialization output
9075         * testsuite/Makefile.am:
9076         * testsuite/gst-inspect-check:
9077           remove old file
9078
9079 2004-03-24  David Schleef  <ds@schleef.org>
9080
9081         * testsuite/elements/Makefile.am:
9082         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
9083         to the testsuite.
9084
9085 2004-03-24  Benjamin Otte  <otte@gnome.org>
9086
9087         * libs/gst/control/dparam.c: (gst_dparam_attach),
9088         (gst_dparam_detach):
9089         * libs/gst/control/dparammanager.c: (gst_dpman_init):
9090           fix lvalue casts for real
9091
9092 2004-03-24  Benjamin Otte  <otte@gnome.org>
9093
9094         * gst/schedulers/gstbasicscheduler.c:
9095         (gst_basic_scheduler_src_wrapper):
9096         * gst/schedulers/gstoptimalscheduler.c:
9097         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
9098         (pad_clear_queued), (gst_opt_scheduler_add_element),
9099         (gst_opt_scheduler_remove_element):
9100           fix GStreamer to not have issues with lvalue casts anymore (fixes
9101           #136841)
9102
9103 2004-03-24  Benjamin Otte  <otte@gnome.org>
9104
9105         * gst/gstelement.c:
9106           add documentation about a gobject quirk where the object hasn't the
9107           correct class pointer set on initialization
9108         * gst/schedulers/gstbasicscheduler.c:
9109         (gst_basic_scheduler_src_wrapper):
9110           make sure to not run into an infinite loop
9111
9112 2004-03-22  Benjamin Otte  <otte@gnome.org>
9113
9114         * gst/gstutils.c: (gst_util_dump_mem):
9115         * gst/gstutils.h:
9116           first argument of gst_util_dump_mem should be const
9117
9118 2004-03-22  Johan Dahlin  <johan@gnome.org>
9119
9120         * gst/gstvalue.h: Clean up a little bit.
9121
9122 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
9123
9124         reviewed by Benjamin Otte  <otte@gnome.org>
9125
9126         * gst/autoplug/gstspider.c: (gst_spider_dispose):
9127         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
9128         (gst_aggregator_class_init), (gst_aggregator_init):
9129         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9130         (gst_filesrc_dispose), (gst_filesrc_set_location):
9131         * gst/elements/gstidentity.c: (gst_identity_finalize),
9132         (gst_identity_class_init), (gst_identity_chain):
9133         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
9134         * gst/elements/gststatistics.c: (gst_statistics_finalize),
9135         (gst_statistics_class_init):
9136         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
9137         (gst_tee_get_property):
9138           clean up used memory in this elements correctly on teardown (closes
9139           #137279)
9140
9141 2004-03-20  Colin Walters  <walters@redhat.com>
9142
9143         * gst/registries/gstxmlregistry.c:
9144         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
9145         registry saving atomic.
9146
9147 2004-03-20  Colin Walters  <walters@redhat.com>
9148
9149         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
9150         Just use
9151         access() instead of actually creating and deleting files.
9152
9153 2004-03-18  David Schleef  <ds@schleef.org>
9154
9155         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
9156         (bug #137625)
9157
9158 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9159
9160         * po/sv.po: updated translation (Christian Rose)
9161
9162 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9163
9164         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
9165         (gst_filesink_get_query_types), (_do_init),
9166         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
9167           return FALSE silently
9168         * po/af.po: updated translation (Petri Jooste)
9169
9170 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9171
9172         * Makefile.am:
9173         * configure.ac:
9174           dist common properly
9175         * po/af.po:
9176         * po/fr.po:
9177         * po/nl.po:
9178         * po/sr.po:
9179         * po/sv.po:
9180           refreshing translations
9181
9182 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9183
9184         * po/LINGUAS:
9185         * po/sv.po:
9186         * po/af.po:
9187           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
9188
9189 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9190
9191         * Makefile.am: use common/release.mak
9192
9193 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9194
9195         * docs/faq/gst-uninstalled:
9196           adding gst-monkeysaudio to the list of possible plugin dirs
9197
9198 2004-03-16  David Schleef  <ds@schleef.org>
9199
9200         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
9201         (gst_init_check_with_popt_table):  Fix some gettext strings to
9202         make them easier to translate.  Required making the strings
9203         non-const.
9204
9205 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9206
9207         * configure.ac: bump nano to 1
9208
9209 === release 0.8.0 ===
9210
9211 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9212
9213         * configure.ac: release 0.8.0, "Executive Slacks"
9214
9215 2004-03-16  Johan Dahlin  <johan@gnome.org>
9216
9217         * gst/schedulers/gstoptimalscheduler.c
9218         (gst_opt_scheduler_pad_unlink): Remove double ;,
9219         spotted by Scott Wheeler
9220
9221 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9222
9223         * configure.ac: bump libtool version
9224
9225 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9226
9227         * gst/gstcaps.h:
9228         * gst/gststructure.h:
9229           add reserved padding
9230
9231 2004-03-15  Benjamin Otte  <otte@gnome.org>
9232
9233         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9234           set the first parameter for select call correctly.
9235           (fixes #137230)
9236
9237 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9238
9239         * *.c,*.h: don't mix tabs and spaces
9240
9241 2004-03-15  Johan Dahlin  <johan@gnome.org>
9242
9243         * gst/schedulers/gstoptimalscheduler.c
9244         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
9245         crash on MPEG playback. My boolean arithmetic is a bit rusty.
9246
9247         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
9248         
9249 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9250
9251         * testsuite/Rules:
9252           fix gst-register rules
9253
9254 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9255
9256         * testsuite/Rules:
9257           use versioned gst-register
9258
9259 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9260
9261         * docs/libs/gstreamer-libs-sections.txt:
9262           remove </SUBSECTION>
9263         * gst/gstplugin.c:
9264         * gst/gstregistry.c: (gst_registry_add_plugin):
9265         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
9266         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
9267           add debugging and fix some comment blocks
9268
9269 2004-03-15  Johan Dahlin  <johan@gnome.org>
9270
9271         * *.h: Revert indent changes.
9272         
9273 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9274
9275         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
9276           g_error_free the g_error
9277         * tools/gst-feedback-m.m:
9278           check for other versions of gstreamer
9279         * tools/gst-indent:
9280           use sh, not bash
9281
9282 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9283
9284         * tools/gst-register.c: do not spill paths when registries are not
9285           writable, until we fix the "user running gst-register" case.
9286
9287 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9288
9289         * *.c, *.h: commit of gst-indent run on core
9290
9291 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9292
9293         * tools/gst-indent:
9294         * tools/Makefile.am:
9295           add our indentation style as a script
9296
9297 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9298
9299         * po/sr.po:
9300         * po/LINGUAS:
9301           added Serbian translation
9302
9303 2004-03-13  Benjamin Otte  <otte@gnome.org>
9304
9305         * gst/gstelement.c:
9306           add documentation note about gst_element_found_tags_for_pad not
9307           being usable in getfunctions. (see #137042)
9308
9309 2004-03-12  David Schleef  <ds@schleef.org>
9310
9311         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
9312         change API right now!  Readd gst_caps_is_simple() macro.
9313         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
9314         uninitialized variable.  I'd bet this caused crashes.
9315         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
9316
9317 2004-03-12  Johan Dahlin  <johan@gnome.org>
9318
9319         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
9320         * gst/gstcaps.h: Clean up
9321
9322         * gst/gst.c (init_post): call gst_caps_get_type() instead of
9323         _gst_caps_initalize()
9324
9325         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
9326         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
9327
9328         * gst/gststructure.c (gst_structure_get_type): Ditto
9329
9330         * gst/gststructure.h: Ditto
9331         
9332 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9333
9334         * gst/gstqueue.c: (gst_queue_init):
9335           Reset default max. values in queues. Reason is simply to avoid
9336           braindead use. If you want wider values, use the properties. The
9337           default is supposed to always work. Wider values would make this
9338           beast a memory hog by default (250 full-PAL RGB32 video frames?
9339           That's 440 MB! No thank you).
9340
9341 2004-03-10  David Schleef  <ds@schleef.org>
9342
9343         * tools/gst-run.c: (main):  Fix crash when no relevant tools
9344         were found.  (bug #136793)
9345
9346 2004-03-10  Johan Dahlin  <johan@gnome.org>
9347
9348         * gst/schedulers/gstoptimalscheduler.c
9349         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
9350         links to elements within the same group, so we can finally remove
9351         that annoying warning. Refactor the code a little bit
9352         (group_dec_links_for_element): Split out
9353
9354 2004-03-09  David Schleef  <ds@schleef.org>
9355
9356         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
9357         (bug #134863)
9358
9359 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9360
9361         * configure.ac: first bug fix due to major/minor bump
9362
9363 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9364
9365         * configure.ac: bump nano to 1
9366
9367 === release 0.7.6 ===
9368
9369 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9370
9371         * NEWS:
9372         * RELEASE:
9373         * configure.ac:
9374           releasing 0.7.6, "Almost"
9375         * po/fr.po:
9376         * po/nl.po:
9377         * tools/Makefile.am:
9378         * tools/gst-feedback-m.m:
9379           unversioned source
9380
9381 2004-03-09  Johan Dahlin  <johan@gnome.org>
9382
9383         Reviewed by: Thomas Vander Stichele
9384
9385         * gst/gstelement.c (gst_element_class_init): register second
9386         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
9387         language bindings can (de)marshall correctly.
9388
9389         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
9390
9391         * gst/gsterror.c (gst_g_error_get_type): New function
9392
9393         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
9394         with VOID:OBJECT,OBJECT,STRING 
9395
9396 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
9397
9398         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
9399         Free a leaked g_timer on early returns.
9400
9401 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9402
9403         * docs/pwg/advanced-types.xml:
9404           Add cinepak description.
9405
9406 2004-03-07  David Schleef  <ds@schleef.org>
9407
9408         * docs/random/mimetypes:  Added cinepak description
9409
9410 2004-03-07  Andy Wingo  <wingo@pobox.com>
9411
9412         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
9413
9414         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
9415         there are no links to other groups when a group is destroyed.
9416         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
9417         removed from a group, make sure the link count to elements linked
9418         to other pads is appropriately decremented. This really fixes
9419         #135672.
9420
9421         The 1.60->1.61 patch has been reapplied in light of this fix.
9422
9423         * gst/gstelement.c (gst_element_dispose): Really protect against
9424         multiple invocations this time.
9425
9426 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9427
9428         * docs/gst/gstreamer-sections.txt:
9429         * docs/gst/tmpl/gsttag.sgml:
9430           remove some deprecated functions, document some existing ones
9431         * gst/gsttag.c: (gst_tag_get_flag):
9432         * gst/gsttag.h:
9433           add accessor function
9434
9435 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9436
9437         * docs/gst/gstreamer-sections.txt:
9438         * docs/gst/tmpl/gsttag.sgml:
9439         * docs/gst/tmpl/gstxml.sgml:
9440         * gst/gsttag.c: (gst_tag_get_flag):
9441         * gst/gsttag.h:
9442
9443 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
9444
9445         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
9446         leak
9447
9448 2004-03-05  David Schleef  <ds@schleef.org>
9449
9450         * REQUIREMENTS: Add bison and flex.
9451         * configure.ac: Fix comment about bison.
9452         * docs/random/ds/0.9-suggested-changes: yer ma
9453         * tools/gst-inspect.c: (print_element_info):  Fix warning.
9454
9455 2004-03-05  Benjamin Otte  <otte@gnome.org>
9456
9457         * gst/gstelement.c: (gst_element_error_full):
9458           revert recent recursive state changing commit - messing with other
9459           elements' states is evil and should be done by apps only.
9460
9461 2004-03-05  Benjamin Otte  <otte@gnome.org>
9462
9463         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
9464           check for empty intersection instead of NULL caps
9465         (gst_element_get_compatible_pad_filtered):
9466           remove old workaround that is only a bug nowadays
9467
9468 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9469
9470         * gst/gstelement.c: (gst_element_error_full):
9471           make elements try to recursively change state to PAUSED on all
9472           parents after an error to suppress ensuing warnings
9473         * gst/parse/grammar.y:
9474           make it check if it was able to sync the state, and throw an error
9475           if not, so stuff like
9476           oggdemux ! vorbisdec ! osssink gets caught
9477
9478 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9479
9480         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
9481           it contains lib64; use AS_AC_EXPAND to handle it properly
9482
9483 2004-03-05  David Schleef  <ds@schleef.org>
9484
9485         * gst/gstcpuid_i386.s:  Remove unused code
9486         * libs/gst/getbits/getbits.c: (gst_getbits_init),
9487         (gst_getbits_newbuf): Remove MMX code
9488         * libs/gst/getbits/getbits.h: Remove MMX code
9489
9490 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
9491
9492         * debian/.cvsignore:
9493         * debian/README.Debian:
9494         * debian/changelog:
9495         * debian/control:
9496         * debian/control.in:
9497         * debian/copyright:
9498         * debian/gstreamer-core-libs-dev.files:
9499         * debian/gstreamer-core-libs.files:
9500         * debian/gstreamer-core.files:
9501         * debian/gstreamer-core.postinst:
9502         * debian/gstreamer-core.postrm:
9503         * debian/gstreamer-doc.files:
9504         * debian/gstreamer-doc.links:
9505         * debian/gstreamer-doc.lintian:
9506         * debian/gstreamer-runtime.files:
9507         * debian/gstreamer-runtime.manpages:
9508         * debian/gstreamer-runtime.postinst:
9509         * debian/gstreamer-runtime.postrm:
9510         * debian/gstreamer-tools.files:
9511         * debian/gstreamer-tools.manpages:
9512         * debian/libgstreamer-dev.files:
9513         * debian/libgstreamer0.4.1.files:
9514         * debian/libgstreamerVERSION.files:
9515         * debian/rules:
9516         Debian package info not maintained here.
9517
9518 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9519
9520         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9521         * gst/gstbin.c: (gst_bin_class_init):
9522         * gst/gstelement.c: (gst_element_class_init):
9523         * gst/gstindex.c: (gst_index_class_init):
9524         * gst/gstobject.c: (gst_object_class_init),
9525         (gst_signal_object_class_init):
9526         * gst/gstpad.c: (gst_pad_template_class_init):
9527         * gst/gstregistry.c: (gst_registry_class_init):
9528         * gst/gsturi.c: (gst_uri_handler_base_init):
9529         * gst/gstxml.c: (gst_xml_class_init):
9530         * libs/gst/control/dparam.c: (gst_dparam_class_init):
9531         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
9532           make all signal names use dashes instead of underscore
9533
9534 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9535
9536         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
9537
9538 2004-03-03  Benjamin Otte  <otte@gnome.org>
9539
9540         * gst/schedulers/gstoptimalscheduler.c:
9541           revert last commit by Andy Wingo. It causes segfaults on unreffing
9542           in Rhythmbox. (see bug #135672)
9543
9544 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
9545
9546         * po/fr.po: fix typo
9547
9548 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
9549
9550         * tools/gst-inspect.c: (main): 
9551         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
9552
9553 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9554
9555         * configure.ac:
9556           get GLIB_ONLY and POPT flags for the nonversioned binaries
9557         * tools/Makefile.am:
9558           use them
9559
9560 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9561
9562         * gst/gst.c: (init_post):
9563           change so that GST_REGISTRY now is where the global registry gets
9564           saved, since that is where plugins now get attached to first, and
9565           spilled over to the user registry.  Note that in the case of using
9566           GST_REGISTRY env var, we don't want to affect any real registries
9567           beyond the one given by this var, and thus we don't set a user
9568           registry to spill to.  So make sure GST_REGISTRY is writable.
9569
9570 2004-03-01  David Schleef  <ds@schleef.org>
9571
9572         * AUTHORS:  Added some names.  Add yourself if you're missing.
9573
9574 2004-03-01  David Schleef  <ds@schleef.org>
9575
9576         * MAINTAINERS: Add
9577
9578 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
9579
9580         * configure.ac:
9581           remove whitespace
9582         * docs/gst/tmpl/gstbuffer.sgml:
9583         * docs/gst/tmpl/gstdata.sgml:
9584         * docs/gst/tmpl/gstreamer-unused.sgml:
9585         * docs/gst/tmpl/gstxml.sgml:
9586           doc update
9587         * docs/manuals.mak:
9588           add a FIXME
9589         * docs/pwg/intro-preface.xml:
9590         * docs/pwg/pwg.xml:
9591           remove GNOME
9592         * gst/gst.c: (init_post):
9593           try GST_PLUGIN_PATH paths for the _global_registry first
9594         * gst/gstelement.h:
9595           add the error message as well, otherwise (null) debug info doesn't
9596           make much sense
9597         * tools/gst-register.c: (main):
9598           spill paths to next registry if this registry is not writable
9599         * po/fr.po:
9600         * po/nl.po:
9601           translation updates
9602
9603 2004-03-01  Johan Dahlin  <johan@gnome.org>
9604
9605         * gst/gstbuffer.c (_gst_buffer_initialize): 
9606         * gst/gstdata.c (gst_data_get_type): 
9607         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
9608         instead of ref, since some applications that uses GBoxed
9609         routines depends on a function that actually returns a copy.
9610
9611 2004-02-27  Benjamin Otte  <otte@gnome.org>
9612
9613         * gst/gstbuffer.h:
9614           remove gst_buffer_free, use gst_data_unref
9615         * gst/gstdata.c: (gst_data_get_type):
9616           use refcounting in GstData GBoxed registration
9617         * gst/gstdata.h:
9618           remove gst_data_free, use gst_data_unref
9619
9620 2004-02-27  Johan Dahlin  <johan@gnome.org>
9621
9622         * gst/gstdata.c (gst_data_get_type): New function, register
9623         GstData as a GBoxed type.
9624
9625         * gst/gstdata.h (GST_TYPE_DATA): New macro
9626
9627 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
9628
9629         * Makefile.am:
9630         * gstreamer.spec.in:
9631           put back RELEASE
9632         * gst/Makefile.am:
9633           clean up non-disting of built files
9634         * testsuite/debug/commandline.c:
9635           test fix for option rename
9636
9637 2004-02-26  David Schleef  <ds@schleef.org>
9638
9639         * configure.ac:  We don't really need glib-2.3.  Also remove
9640         some unneeded checks for library functions.
9641         * gst/Makefile.am:  Instead, we need to not dist files created
9642         by glib-genmarshal.
9643
9644 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9645
9646         * configure.ac:
9647           bump glib required version to 2.3.0 for g_value_takes_boxed
9648
9649  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
9650
9651         * common/m4/gst-docs.m4
9652         change flavour text from enable to disable as enable is our default
9653         closes bug Bug 135304
9654
9655 === release 0.7.5 ===
9656  
9657  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9658  
9659         * NEWS:
9660           instate NEWS file
9661         * Makefile.am:
9662         * gstreamer.spec.in:
9663         * RELEASE:
9664           put back release
9665         * configure.ac:
9666         * docs/random/release:
9667           more updates
9668
9669 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9670
9671         * gst/gsttag.c: (_gst_tag_initialize):
9672         * po/fr.po:
9673         * po/nl.po:
9674           remove hyphen from codec tags
9675
9676 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9677
9678         * gst/parse/Makefile.am:
9679           fix dependency so that a make from a clean build works the first
9680           time
9681
9682 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9683
9684         * docs/random/release:
9685           update release strategy
9686         * po/fr.po:
9687           auto-update po file
9688         * po/nl.po:
9689           update dutch translation
9690
9691 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
9692
9693         * docs/manual/debugging.xml:
9694         fix manual for new debugging system
9695
9696 2004-02-25  Andy Wingo  <wingo@pobox.com>
9697
9698         * gst/gstpad.c (gst_pad_link_prepare): Re-add
9699         gst_pad_link_prepare. Please email the list with specific reasons
9700         for reverting.
9701
9702 2004-02-24  Andy Wingo  <wingo@pobox.com>
9703
9704         * gst/gstelement.c (gst_element_dispose): Protect against multiple
9705         invocations.
9706
9707         * gst/schedulers/gstoptimalscheduler.c:
9708         I added a mess of prototypes at the top of the file by way of
9709         documentation. Some of the operations on chains and groups were
9710         re-organized.
9711
9712         (create_group): Added a type argument so if the group is enabled,
9713         the setup_group_scheduler knows what to do.
9714         (group_elements): Added a type argument here, too, to be passed on
9715         to create_group.
9716         (group_element_set_enabled): If an unlinked PLAYING element is
9717         added to a bin, we have to create a new group to hold the element,
9718         and this function will be called before the group is added to the
9719         chain. Thus we have a valid case for group->chain==NULL. Instead
9720         of calling chain_group_set_enabled, just set the flag on the group
9721         (the chain's status will be set when the group is added to it).
9722         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
9723         Setup the group scheduler when the group is enabled, not
9724         specifically when an element goes PAUSED->PLAYING. This means
9725         PLAYING elements can be added, linked, and scheduled into a
9726         PLAYING pipeline, as was intended.
9727         (add_to_group): Don't ref the group twice. I don't know when this
9728         double-ref got in here. Removing it has the potential to cause
9729         segfaults if other parts of the scheduler are buggy. If you find
9730         that the scheduler is segfaulting for you, put in an extra ref
9731         here and see if that hacks over the underlying issue. Of course,
9732         then find out what code is unreffing a group it doesn't own...
9733         (create_group): Make the extra refcount floating, and remove it
9734         after adding the element. This means that...
9735         (unref_group): Destroy when the refcount reaches 0, not 1, like
9736         every other refcounted object in the known universe.
9737         (remove_from_group): When a group becomes empty, set it to be not
9738         active, and remove it from its chain. Don't unref it again,
9739         there's no floating reference any more.
9740         (destroy_group): We have to remove the group from the chain in
9741         remove_from_group (rather than here) to break refcounting cycles
9742         (the chain always has a ref on the group). So assert that
9743         group->chain==NULL.
9744         (ref_group_by_count): Removed, it was commented out anyway.
9745         (merge_chains): Use the remove_from_chain and add_to_chain
9746         primitives to do the reparenting, instead of rolling our own
9747         implementation.
9748         (add_to_chain): The first non-disabled group in the chain's group
9749         list will be the entry point for the chain. Because buffers can
9750         accumulate in loop elements' peer bufpens, we preferentially
9751         schedule loop groups before get groups to avoid unnecessary
9752         execution of get-based groups when the bufpens are already full.
9753         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
9754         (get_group_schedule_function): Ditto.
9755         (loop_group_schedule_function): Ditto.
9756         (gst_opt_scheduler_loop_wrapper): Ditto.
9757         (gst_opt_scheduler_iterate): Ditto.
9758
9759         I understand the opt scheduler now, yippee!
9760
9761         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
9762         (gst_pad_get_name, gst_pad_set_chain_function) 
9763         (gst_pad_set_get_function, gst_pad_set_event_function) 
9764         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
9765         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
9766         (gst_pad_set_query_function, gst_pad_get_query_types) 
9767         (gst_pad_get_query_types_default) 
9768         (gst_pad_set_internal_link_function) 
9769         (gst_pad_set_formats_function, gst_pad_set_link_function) 
9770         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
9771         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
9772         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
9773         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
9774         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
9775         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
9776         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
9777         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
9778         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
9779         (gst_pad_event_default_dispatch, gst_pad_event_default) 
9780         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
9781         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
9782         (gst_pad_get_formats_default, gst_pad_get_formats): Better
9783         argument checks, and some doc fixes.
9784
9785         (gst_pad_custom_new_from_template): Um, does anyone
9786         use these functions? Actually make a custom pad instead of a
9787         normal one.
9788         (gst_pad_try_set_caps): Transpose some checks.
9789         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
9790         the pad is in negotiation.
9791         (gst_pad_try_relink_filtered): Use pad_link_prepare.
9792         
9793         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
9794
9795         * gst/gstelement.h: 
9796         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
9797         on the list.
9798
9799 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
9800
9801         * gst/gstbin.c: (gst_bin_add):
9802           add error for not being able to add elements
9803
9804 2004-02-22  Julien MOUTTE <julien@moutte.net>
9805
9806         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
9807         audio-codec and video-codec.
9808
9809 2004-02-22  Benjamin Otte  <otte@gnome.org>
9810
9811         reported by: Padraig O'Briain <padraig.obriain@sun.com>
9812
9813         * autogen.sh:
9814           replace test -e with test -x for mkinstalldirs to be more portable.
9815           (fixes #134816)
9816
9817 2004-02-22  Benjamin Otte  <otte@gnome.org>
9818
9819         * gst/gstpad.c:
9820           revert last patch from Andy, it makes gst_pad_can_link_filtered much
9821           too noisy
9822         * gst/gsttag.c: (_gst_tag_initialize):
9823         * gst/gsttag.h:
9824           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
9825         * libs/gst/control/dparam.c: (gst_dparam_attach):
9826         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
9827           check that types for attached dparams match
9828
9829 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
9830
9831         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
9832         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9833         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
9834           fix errors
9835
9836 2004-02-20  Andy Wingo  <wingo@pobox.com>
9837
9838         * gst/gstbin.c:
9839         * gst/gstbuffer.c:
9840         * gst/gstplugin.c:
9841         * gst/registries/gstxmlregistry.c: 
9842         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
9843
9844         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
9845         (gst_element_add_pad): DEBUG->INFO, some fixes.
9846         (gst_element_get_compatible_pad_template): Just see if the
9847         templates' caps intersect, not if one is a strict subset of the
9848         other. This conforms more to what gst_pad_link_intersect() does.
9849         (gst_element_class_add_pad_template): Don't memcpy the pad
9850         template, just ref it.
9851         (gst_element_get_compatible_pad_filtered): Clean up debug messages
9852
9853         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
9854         (gst_pad_link_filtered): Debug changes.
9855         (gst_pad_link_prepare): New function, consolidated from
9856         can_link_filtered and link_filtered.
9857
9858         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
9859         look more like that of the functions in gstelement.c
9860
9861         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
9862         object, and return the empty string if object is NULL.
9863
9864         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
9865         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
9866         LOG, not DEBUG. We still get flex info on debug.
9867
9868         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
9869         debug string more verbose.
9870         (plugin_times_older_than): DEBUG->LOG.
9871
9872 2004-02-20  Julien MOUTTE <julien@moutte.net>
9873
9874         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
9875         will emit found_tag for each stream they demux with the codec.
9876
9877 2004-02-20  Benjamin Otte  <otte@gnome.org>
9878
9879         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
9880           copy navigation event correctly. Check freeing tag lists. 
9881         * gst/gstthread.c: (gst_thread_change_state):
9882           don't abort() on state changing mess - it might happen because of
9883           bugs.
9884         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
9885           use boxed functions
9886         * gst/gstvalue.h:
9887           fix GST_VALUE_HOLDS_CAPS
9888
9889 2004-02-19  David Schleef  <ds@schleef.org>
9890
9891         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
9892         and use it for GST_FUNCTION.  (bug #134750)
9893
9894 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9895
9896         * po/fr.po:
9897         * po/nl.po:
9898           updating translations
9899
9900 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9901
9902         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
9903
9904 2004-02-18  kost@imn.htwk-leipzig.de
9905
9906         reviewed by: David Schleef  <ds@schleef.org>
9907
9908         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
9909         for libgstcontrol.
9910
9911 2004-02-18  David Schleef  <ds@schleef.org>
9912
9913         * libs/gst/control/dparam.c: (gst_dparam_class_init):
9914         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9915         (gst_dpsmooth_new): Additional fixes to get double dparams working.
9916         * tools/gst-inspect.c: (print_element_info): Support dumping of
9917         double dparam information.
9918
9919 2004-02-17  David Schleef  <ds@schleef.org>
9920
9921         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9922         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
9923         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
9924         Use GST_TYPE_CAPS in signal prototype.
9925         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
9926         Convert GST_TYPE_CAPS to boxed.
9927         * gst/gstelement.c: (gst_element_class_init):
9928         Use GST_TYPE_TAG_LIST in signal prototype.
9929         * gst/gstindex.c: (gst_index_class_init):
9930         * gst/gstindex.h:
9931         Add GST_TYPE_INDEX_ENTRY type.
9932         * gst/gstmarshal.list:
9933         Add necessary marshal types.
9934         * gst/gstpad.c: (gst_real_pad_class_init),
9935         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
9936         (gst_pad_recover_caps_error):
9937         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
9938         * gst/gststructure.c: (_gst_structure_initialize),
9939         (gst_structure_copy), (_gst_structure_copy_conditional):
9940         * gst/gststructure.h:
9941         Convert GST_TYPE_STRUCTURE to boxed.
9942         * gst/gsttag.c: (gst_tag_list_get_type):
9943         * gst/gsttag.h:
9944         Add GST_TYPE_TAG_LIST type.
9945
9946 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9947
9948         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
9949         to what we agreed with david.
9950         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
9951
9952 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9953
9954         * po/nl.po: update translation
9955
9956 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9957
9958         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9959           throw an error if spider is trying to play a mime type there is
9960           no decoder for
9961         * po/POTFILES.in:
9962           add gst/autoplug/gstspider.c for translation
9963
9964 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9965
9966         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
9967         silently when the pad is negotiating.
9968
9969 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9970
9971         * docs/faq/Makefile.am:
9972           add script to run gstreamer uninstalled 
9973         * docs/faq/faq.xml:
9974         * docs/faq/developing.xml:
9975         * docs/faq/gst-uninstalled:
9976           extract script to run gstreamer uninstalled
9977         * docs/manuals.mak:
9978           add EXTRA_SOURCES variable for Makefile.am's to set to
9979           use additional SOURCE files for the doc build
9980
9981 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9982
9983         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
9984
9985 2004-02-15  Julien MOUTTE  <julien@moutte.net>
9986
9987         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
9988         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
9989         an error was thrown by osssink. Basically a state change failure for
9990         an element in a different scheduling group was considered as
9991         successful, which means that caps nego was going on and weird stuff
9992         happened. Like I wrote in the comment there, if someone wants to
9993         revert that please drop me a mail explaining why because I really see
9994         no point in keeping that broken behaviour there.
9995         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
9996         be empty, we then return NULL which will trigger a nice error when 
9997         pulling from the pad.
9998
9999 2004-02-13  David Schleef  <ds@schleef.org>
10000
10001         * libs/gst/control/dparam.c: (gst_dparam_class_init),
10002         (gst_dparam_get_property), (gst_dparam_set_property),
10003         (gst_dparam_do_update_default):
10004         * libs/gst/control/dparam.h:
10005         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
10006         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
10007         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
10008         (gst_dpsmooth_do_update_double):
10009         * libs/gst/control/dparam_smooth.h:
10010         * libs/gst/control/dparammanager.c:
10011         (gst_dpman_inline_direct_update):
10012         Add support for double dparams.
10013
10014 2004-02-13  David Schleef  <ds@schleef.org>
10015
10016         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
10017         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
10018
10019 2004-02-13  Mattias Wadman  <mattias@sudac.org>
10020
10021         reviewed by: David Schleef  <ds@schleef.org>
10022
10023         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
10024         (gst_fdsrc_init), (gst_fdsrc_set_property),
10025         (gst_fdsrc_get_property), (gst_fdsrc_get):
10026         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
10027         and sends an EOS event if file descriptor reading times out.
10028
10029 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10030
10031         * configure.ac:
10032           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
10033
10034 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10035
10036         * configure.ac: pass required libxml version as argument
10037         (bug reported by Christophe Fergeau)
10038
10039 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10040   
10041         * docs/gst/gstreamer-docs.sgml:
10042         * docs/gst/tmpl/gstxml.sgml:
10043         * docs/libs/gstreamer-libs-docs.sgml:
10044           version API docs
10045
10046 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10047
10048         * gst/gstinfo.c:
10049         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
10050         (gst_registry_pool_feature_filter):
10051         * gst/gstthread.c: (gst_thread_class_init):
10052         * gst/gstvalue.c:
10053           add includes exposed by building without libxml
10054         * gst/indexers/Makefile.am:
10055           do not build fileindex when LOADSAVE disabled; we should have
10056           a better libxml check later since fileindex depends on xml, not
10057           LOADSAVE or REGISTRY
10058         * libs/gst/control/Makefile.am:
10059           link with m
10060         * tools/Makefile.am:
10061           fix wrong source code for gst-xmlinspect
10062
10063 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10064
10065         * configure.ac:
10066           fix gcov help output
10067           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
10068         * docs/random/release:
10069           some updated releasing notes
10070         * gstreamer.spec.in:
10071           more updates
10072
10073 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10074
10075         * docs/faq/faq.xml:
10076         * docs/manual/manual.xml:
10077         * docs/pwg/pwg.xml:
10078         * docs/pwg/titlepage.xml:
10079           put version in documentation
10080
10081 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10082
10083         * tools/Makefile.am: fix man page installation
10084
10085 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10086
10087         * configure.ac:
10088           don't check for libxml when load/save and registry disabled (#105844)
10089         * gstreamer.spec.in:
10090           sync with fedora candidate spec
10091
10092 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10093
10094         * po/fr.po:
10095         * po/nl.po:
10096           replace multidisksrc with multifilesrc
10097
10098 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10099
10100         * po/POTFILES.in:
10101           update to multidisksrc => multifilesrc file renaming (#134145)
10102
10103 2004-02-11  David Schleef  <ds@schleef.org>
10104
10105         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
10106         * docs/gst/tmpl/gstpadtemplate.sgml: same
10107         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
10108         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
10109         fixing dance.
10110         * gst/gstutils.c: Remove disabled code that uses GstProps.
10111         * gst/registries/gstxmlregistry.h: same
10112         * docs/random/ds/0.9-suggested-changes: random notes
10113
10114 2004-02-11  kost@imn.htwk-leipzig.de
10115
10116         reviewed by: David Schleef  <ds@schleef.org>
10117
10118         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
10119         initialisation of clock (bug #134128)
10120
10121 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10122
10123         * configure.ac:
10124         * gst/elements/Makefile.am:
10125         * gst/elements/gstelements.c:
10126         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
10127         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
10128         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
10129         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
10130         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
10131         * gst/elements/gstmultifilesrc.h:
10132           rename multidisksrc to multifilesrc (part of #122200)
10133
10134 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10135
10136         * docs/manuals.mak:
10137           fix automake complaints
10138         * gst-element-check.m4:
10139           fix unquotedness
10140
10141 2004-02-11  David Schleef  <ds@schleef.org>
10142
10143         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
10144         * gst/gstatomic_impl.h: Disable sparc implementation.
10145
10146 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10147
10148         * gst-element-check.m4:
10149           fix underquoted macros as reported by automake 1.8.x (#133800)
10150         * configure.ac:
10151           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
10152           by autopoint (fixes #132996)
10153
10154 2004-02-10  Andy Wingo  <wingo@pobox.com>
10155
10156         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
10157         way to do inheritance.
10158         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
10159         (gst_pad_get_query_types, gst_pad_get_query_types_default):
10160         Routine docs.
10161         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
10162         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
10163         doc.
10164         (gst_pad_unlink, gst_pad_is_linked): Docs.
10165         (gst_pad_renegotiate): A brief description of capsnego.
10166         (gst_pad_try_set_caps): Document.
10167         (gst_pad_try_set_caps_nonfixed): Document.
10168         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
10169         (gst_pad_set_parent): Deprecated (although not out of the API).
10170         (gst_pad_get_parent): Deprecated, although many plugins use this.
10171         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
10172         are private and will go away in 0.9.
10173         (gst_pad_perform_negotiate): Doc.
10174         (gst_pad_link_unnegotiate): I think this is meant to be static.
10175         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
10176         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
10177         (gst_pad_get_peer): Doc updates.
10178         (gst_pad_caps_change_notify): Doc.
10179         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
10180         (gst_ghost_pad_new): Doc fixes.
10181
10182         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
10183         (gst_object_check_uniqueness): 
10184
10185         * gst/gstelement.c (gst_element_add_pad) 
10186         (gst_element_add_ghost_pad, gst_element_remove_pad) 
10187         (gst_element_remove_ghost_pad, gst_element_get_pad) 
10188         (gst_element_get_static_pad, gst_element_get_pad_list) 
10189         (gst_element_class_get_pad_template_list) 
10190         (gst_element_class_get_pad_template): Work on the docs.
10191         (gst_element_get_pad_template_list): Uses the class method.
10192         (gst_element_get_compatible_pad_template): Docs, and consolidate
10193         some test conditions. 
10194         (gst_element_get_pad_from_template): New static function.
10195         (gst_element_request_compatible_pad): Docs, and work with
10196         non-request compatible templates. 
10197         (gst_element_get_compatible_pad_filtered): Docs and remove
10198         redundant checks.
10199         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
10200         (gst_element_link_filtered, gst_element_link_many) 
10201         (gst_element_link, gst_element_link_pads) 
10202         (gst_element_unlink_many): Docs.
10203
10204 2004-02-05  Andy Wingo  <wingo@pobox.com>
10205
10206         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
10207         s/pointer/boxed/.
10208
10209         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
10210
10211         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
10212         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
10213         with the type=GST_TYPE_CAPS. This allows language bindings to know
10214         what kind of data they're dealing with.
10215
10216         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
10217         to NULL when g_value_init is called. GstCaps, which rolls its own
10218         type implementation, now does the same instead of allocating empty
10219         caps.
10220         (_gst_caps_initialize, _gst_caps_collect_value,
10221         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
10222         table methods. This allows G_VALUE_COLLECT to work.
10223
10224 2004-02-05  Andy Wingo  <wingo@pobox.com>
10225
10226         * configure.ac:
10227         * testsuite/Makefile.am (SUBDIRS): 
10228         * testsuite/ghostpads/Makefile.am: 
10229         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
10230
10231         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
10232         These two routines are the only ones that set
10233         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
10234         pad template. They should be made static, depending on ABI needs.
10235         (gst_real_pad_dispose): Handle the case of ghost pads without a
10236         parent. Assert after dealing with ghost pads that the ghost pad
10237         list is empty.
10238         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
10239         set after creation.
10240         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
10241         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
10242         functions. set_property will call add_ghost_pad/remove_ghost_pad
10243         as appropriate.
10244         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
10245
10246         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
10247         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
10248         (gst_element_remove_pad): Handle ghost pads as well.
10249         (gst_element_remove_ghost_pad): Deprecated (could be removed,
10250         depending on API-stability needs).
10251
10252 2004-02-05  Andy Wingo  <wingo@pobox.com>
10253
10254         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
10255         of course they're const
10256
10257 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10258
10259         * tools/Makefile.am:
10260         * tools/gst-feedback:
10261         * tools/gst-feedback-0.7:
10262           make gst-feedback versioned too for consistency
10263
10264 2004-02-11  David Schleef  <ds@schleef.org>
10265
10266         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10267         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
10268
10269 2004-02-10  Julien MOUTTE <julien@moutte.net>
10270
10271         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
10272         the structure does not contain a valid tag list. Adding a safety check
10273         to remove a noisy warning in that case.
10274
10275 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
10276
10277         * gst/gst.c: fix name to be in line with others
10278
10279 2004-02-09  Julien MOUTTE <julien@moutte.net>
10280
10281         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
10282         not shout that loud when len is 0. Just return 0 silently.
10283
10284 2004-02-09  Julien MOUTTE  <julien@moutte.net>
10285
10286         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
10287         because data_unref has one and I prefer the debug to be symetric.
10288         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
10289         were refed when added to the queue and unrefed only once when the queue
10290         was flushed. Now the flush handler unref the buffers two times : first
10291         unref for the ref added when pushing in the queue's tail and second
10292         unref to destroy the flushed buffer.
10293
10294 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10295
10296         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
10297
10298 2004-02-06  David Schleef  <ds@schleef.org>
10299
10300         * docs/random/ds/0.9-suggested-changes: Random ramblings
10301         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
10302         to int before printing.
10303         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
10304         * gst/parse/parse.l: same.  See bug #129600
10305
10306 2004-02-06  David Schleef  <ds@schleef.org>
10307
10308         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
10309         (gst_index_add_entry), (gst_index_add_associationv),
10310         (gst_index_add_association): Add gst_index_add_associationv()
10311         and clean up gst_index_add_association(). #127133
10312
10313 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10314
10315         * autogen.sh: check out common with right tag if CVS/Tag exists
10316
10317 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10318
10319         * testsuite/ghostpads/ghostpads.c: (main):
10320           fix testsuite from segfaulting
10321
10322 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10323
10324         * Makefile.am: add release target
10325         * configure.ac: bump nano to 1
10326         * docs/random/release:
10327
10328 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10329
10330         * gst/gstcaps.h:
10331         * gst/gstelement.c: (gst_element_base_class_init),
10332         (gst_element_class_set_details), (gst_element_clear_pad_caps):
10333         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10334         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
10335         (gst_real_pad_dispose):
10336         * gst/gststructure.c: (gst_structure_free),
10337         (gst_structure_from_string):
10338           put reverted patch back in
10339         * gst/gstelement.c: (gst_element_remove_pad):
10340           free explicit caps if they're set
10341         * gst/gstpad.c: (_gst_pad_default_fixate_func):
10342           copy the structure when fixating
10343
10344 2004-02-05  David Schleef  <ds@schleef.org>
10345
10346         * gst/gstmarshal.list:
10347         * gst/gstpad.c: (gst_real_pad_class_init),
10348         (_gst_real_pad_fixate_accumulator):
10349         Revert POINTER->BOXED change in signal marshaller.
10350
10351 === release 0.7.4 ===
10352                                                                                 
10353 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10354                                                                                 
10355         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
10356         * configure.ac: changed for release
10357
10358 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
10359
10360         * gstreamer.spec.in:
10361           bump required version of gtk-doc
10362
10363 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10364
10365         * gst/gstcaps.h:
10366         * gst/gstelement.c: (gst_element_base_class_init),
10367         (gst_element_class_set_details), (gst_element_clear_pad_caps):
10368         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10369         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
10370         (gst_real_pad_dispose):
10371         * gst/gststructure.c: (gst_structure_free),
10372         (gst_structure_from_string):
10373           revert patch that breaks applications, reapply after release
10374           to get this fixed properly
10375
10376 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10377
10378         * gst/gsttag.c: (_gst_tag_initialize):
10379         * gst/gsttag.h:
10380           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
10381
10382 2004-02-04  David Schleef  <ds@schleef.org>
10383
10384         Fix some memleaks:
10385         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
10386         (gst_spider_plug_from_srcpad):
10387         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
10388
10389 2004-02-04  David Schleef  <ds@schleef.org>
10390
10391         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
10392         a GstRealPad before accessing its structure members.
10393
10394 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10395
10396         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
10397         (gst_clock_get_speed):
10398         * gst/gstclock.h:
10399           reset padding, remove unused fields
10400
10401 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10402
10403         * gst/autoplug/gstspideridentity.c:
10404         (gst_spider_identity_sink_loop_type_finding):
10405           use get_allowed_caps, not get_caps (fixes #132519)
10406         * gst/elements/gsttypefind.c: (stop_typefinding):
10407           use correct order when sending buffers and seeking
10408
10409 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10410
10411         * configure.ac:
10412         * gst/gstelement.h:
10413         * gst/gstpad.h:
10414         * gst/gstqueue.h:
10415           upgrade libtool CURRENT, reset padding
10416
10417 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10418
10419         * configure.ac:
10420           bump to prerelease
10421           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
10422
10423 2004-02-04  David Schleef  <ds@schleef.org>
10424
10425         * docs/random/ds/0.9-suggested-changes: random notes
10426         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
10427         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
10428         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
10429         expansion.
10430         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10431         (gst_filesink_get_query_types): same
10432         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
10433         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
10434         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
10435         to use new GST_PTR_FORMAT.
10436         * gst/gstelement.h: deprecate function factory macros
10437         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
10438         These are our last variadic macros that can't be replaced with
10439         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
10440         attempting to deprecate gst_element_clock_wait().
10441         * gst/gstevent.h: same
10442         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10443         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
10444         * gst/gstpad.h: deprecate function factory macros similar to above.
10445
10446 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10447
10448         * configure.ac:
10449         * tools/Makefile.am:
10450         * tools/gst-run.c: (popt_callback), (hash_print_key),
10451         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
10452         (get_candidates), (main):
10453           add new source file to generate non-versioned wrapper binaries
10454           for our tools.
10455
10456 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10457
10458         * gst/gstevent.c: (_gst_event_free):
10459           actually break; inside the switch statement
10460         * gst/parse/grammar.y:
10461           fix memleak where GValues weren't unset
10462
10463 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10464
10465         * gst/gststructure.c: (gst_structure_from_string):
10466           fix huge memleak
10467         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
10468         (new_entry), (gst_type_find_element_chain):
10469         * gst/gstelement.c: (gst_element_base_class_init),
10470         (gst_element_class_set_details):
10471         * gst/gstpad.c: (gst_pad_can_link_filtered):
10472           fix smaller memleaks
10473         * gst/gstpad.c: (gst_real_pad_dispose):
10474           check that explicit caps are gone
10475         * gst/gststructure.c: (gst_structure_free):
10476           actually free the structure
10477         * gst/gstelement.c: (gst_element_clear_pad_caps):
10478           unset explicit caps
10479
10480 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10481
10482         * tools/Makefile.am:
10483           use AM_CFLAGS since all the CFLAGS are the same
10484           use AM_LDFAGS
10485
10486 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10487
10488         * docs/manual/gnome.xml:
10489           expand example a little
10490         * gst/gst.c: (gst_init_with_popt_table),
10491         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
10492           make sure popt option displays are done with right textdomain
10493           use GstPoptOption type
10494         * gst/gst.h:
10495           create GstPoptOption type
10496
10497 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10498
10499         * gst/gsterror.c: (_gst_stream_errors_init):
10500         * gst/gsterror.h:
10501           adding error type for no codec
10502         * po/POTFILES.in:
10503           add gst-inspect
10504         * po/nl.po:
10505           update dutch translation
10506         * tools/gst-inspect.c: (print_element_list), (main):
10507           do proper internationalization
10508         * tools/gst-launch.c: (idle_func):
10509           remove commented out function call
10510
10511 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10512
10513         * docs/README:
10514           add some error fixing notes
10515         * docs/gst/gstreamer-sections.txt:
10516           remove double entries
10517         * docs/gst/tmpl/gstbin.sgml:
10518         * docs/gst/tmpl/gstclock.sgml:
10519           remove override
10520         * docs/gst/tmpl/gstelement.sgml:
10521         * docs/gst/tmpl/gstindex.sgml:
10522         * docs/gst/tmpl/gstobject.sgml:
10523         * docs/gst/tmpl/gstpadtemplate.sgml:
10524         * docs/gst/tmpl/gstreamer-unused.sgml:
10525         * docs/gst/tmpl/gsttag.sgml:
10526         * docs/gst/tmpl/gstthread.sgml:
10527         * docs/gst/tmpl/gstxml.sgml:
10528         * gst/gsttag.h:
10529           sync header prototypes with c decls
10530         * gst/gsttaginterface.c:
10531           fix doc headers
10532
10533 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10534
10535         * gst/parse/Makefile.am:
10536         * gst/gstobject.h:
10537           get rid of gstmarshal.h dependency. It's not needed.
10538         * gst/gst.h:
10539         * gst/elements/gstfakesink.c:
10540         * gst/elements/gstfakesrc.c:
10541         * gst/elements/gstidentity.c:
10542         * gst/gstbin.c:
10543         * gst/gstelement.c:
10544         * gst/gstindex.c:
10545         * gst/gstobject.c:
10546         * gst/gstpad.c:
10547         * gst/gstthread.c:
10548         * gst/gstxml.c:
10549         * libs/gst/control/dparam.c:
10550         * libs/gst/control/dparammanager.c:
10551           include gstmarshal.h.
10552         Fixes #132045
10553
10554 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10555
10556         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10557         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
10558         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
10559         * gst/elements/gstfilesrc.h:
10560           don't ref the filesrc when creating mmaped buffers. Don't keep a
10561           list of not-yet-destroyed buffers.
10562         * gst/gstbuffer.h:
10563           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
10564
10565 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10566
10567         * gst/gst.c: (init_pre):
10568           remove textdomain
10569
10570 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10571
10572         * docs/pwg/advanced-events.xml:
10573         * docs/pwg/advanced-scheduling.xml:
10574         * docs/pwg/intro-basics.xml:
10575         * docs/pwg/other-manager.xml:
10576         * docs/pwg/other-nton.xml:
10577         * docs/pwg/other-ntoone.xml:
10578         * docs/pwg/other-oneton.xml:
10579         * docs/pwg/pwg.xml:
10580           All sort of documentation... Forgot what. Point is that I want this
10581           in before I leave. The 'other-*' will be the last section and will
10582           explain issues specific to these type of elements.
10583
10584 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10585
10586         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10587         (gst_filesrc_get_read):
10588           set all the values on buffers that we can
10589
10590 2004-02-02  David Schleef  <ds@schleef.org>
10591
10592         Change usage of isblah() to g_ascii_isblah() to be more locale
10593         independent.  (#133076)
10594         * gst/gsturi.c: (gst_uri_protocol_check_internal):
10595         * gst/gstutils.c:
10596         * gst/parse/parse.l:
10597
10598 2004-02-02  Jon Trowbridge  <trow@gnu.org>
10599
10600         reviewed by: David Schleef  <ds@schleef.org>
10601
10602         Fix memory leaks:
10603         * gst/gstcaps.c: (gst_caps_to_string):
10604         * gst/registries/gstxmlregistry.c:
10605         (gst_xml_registry_add_path_list_func),
10606         (gst_xml_registry_parse_padtemplate):
10607
10608 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10609
10610         * gst/gstelement.c: (gst_element_default_error):
10611           suffix error messages with period
10612
10613 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10614
10615         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10616         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10617         * gst/gsterror.c: (gst_error_get_message):
10618           Suffix with dots
10619         * po/fr.po:
10620         * po/nl.po:
10621           Update translation files
10622
10623 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10624
10625         * gst/autoplug/gstspideridentity.c:
10626         (gst_spider_identity_sink_loop_type_finding):
10627         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10628         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10629         (gst_filesink_close_file), (gst_filesink_handle_event),
10630         (gst_filesink_chain):
10631         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10632         (gst_filesrc_get_read), (gst_filesrc_open_file):
10633         * gst/elements/gstidentity.c: (gst_identity_chain):
10634         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10635         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10636         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10637         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10638         * gst/gsterror.c: (_gst_core_errors_init),
10639         (_gst_library_errors_init), (_gst_resource_errors_init),
10640         (_gst_stream_errors_init), (gst_error_get_message):
10641         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10642         (gst_pad_recover_caps_error), (gst_pad_pull):
10643         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10644         * gst/schedulers/gstbasicscheduler.c:
10645         (gst_basic_scheduler_chainhandler_proxy),
10646         (gst_basic_scheduler_gethandler_proxy),
10647         (gst_basic_scheduler_cothreaded_chain):
10648           Suffix error messages with period.
10649           Use (NULL) instead of NULL
10650
10651 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10652
10653         * docs/gst/tmpl/gstelement.sgml:
10654         * docs/gst/tmpl/gstxml.sgml:
10655         * gst/gstelement.c: (gst_element_error_full):
10656           add element path to error
10657
10658 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10659
10660         * docs/random/mimetypes:
10661           update raw int/float info
10662         * gst/gsttag.c: (_gst_tag_initialize):
10663         * gst/gsttag.h:
10664           add GST_TAG_ENCODER
10665
10666 2004-01-30  David Schleef  <ds@schleef.org>
10667
10668         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
10669           missing (#132991)
10670
10671 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
10672
10673         reviewed by Benjamin Otte 
10674           parts of the patch submitted in bug #113913
10675
10676         * configure.ac:
10677           use AC_C_INLINE. Use = instead of == with test
10678         * examples/plugins/example.c:
10679         * gst/autoplug/gstspideridentity.c:
10680         * gst/elements/gstfdsrc.c:
10681         * gst/elements/gstfilesrc.c:
10682         * gst/elements/gstidentity.c:
10683         * gst/elements/gstmultidisksrc.c:
10684         * gst/elements/gststatistics.c:
10685         * gst/gstelement.c:
10686         * gst/gstobject.c:
10687         * gst/gstpad.c:
10688         * gst/gstpipeline.c:
10689         * gst/gstthread.c:
10690           don't end enums with a comma
10691         * gst/gstindex.c: (gst_index_compare_func):
10692           do explicit casting to gint
10693         * gst/gsttrace.c: (gst_trace_text_flush):
10694           #define strsize as a macro
10695
10696 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10697
10698         * docs/README:
10699         * docs/gst/gstreamer-docs.sgml:
10700         * docs/gst/gstreamer-sections.txt:
10701         * docs/gst/tmpl/gstelement.sgml:
10702         * docs/gst/tmpl/gsterror.sgml:
10703         * docs/gst/tmpl/gstinterface.sgml:
10704         * docs/gst/tmpl/gstreamer-unused.sgml:
10705         * docs/gst/tmpl/gststructure.sgml:
10706         * docs/gst/tmpl/gsttag.sgml:
10707         * docs/gst/tmpl/gsttaginterface.sgml:
10708         * docs/gst/tmpl/gstvalue.sgml:
10709         make sure all API ends up in the built docs
10710         * gst/gstinterface.c:
10711         * gst/gststructure.c: (gst_structure_id_set_value),
10712         (gst_structure_set_value), (gst_structure_id_get_value):
10713         * gst/gststructure.h:
10714         * gst/gstvalue.h:
10715         sync .h with .c declarations
10716
10717 2004-01-30  Julien Moutte  <julien@moutte.net>
10718
10719         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
10720         Ronald will fix riffread.
10721
10722 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10723
10724         * docs/pwg/advanced-interfaces.xml:
10725           Added tuner interface docs.
10726
10727 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10728
10729         * docs/random/mimetypes:
10730           correct Theora information
10731         * gst/gstelement.h:
10732           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
10733
10734 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10735
10736         * gst/gstelement.c: (gst_element_error_full):
10737         * gst/gstelement.h:
10738           GST_ELEMENT_ERROR in enum -> _IN_ERROR
10739
10740 2004-01-29  Julien MOUTTE  <julien@moutte.net>
10741
10742         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10743         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
10744         again and even before DISCONT.
10745         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
10746         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
10747         bytestream so that it's not stopping to fill the bytestream if events
10748         different than EOS or DISCONT are received. Instead it process them so
10749         that they go downstream.
10750
10751 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10752
10753         * docs/gst/tmpl/gstelement.sgml:
10754         * docs/gst/tmpl/gstreamer-unused.sgml:
10755         * docs/gst/tmpl/gstxml.sgml:
10756         * gst/autoplug/gstspideridentity.c:
10757         (gst_spider_identity_sink_loop_type_finding):
10758         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10759         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10760         (gst_filesink_close_file), (gst_filesink_handle_event),
10761         (gst_filesink_chain):
10762         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10763         (gst_filesrc_get_read), (gst_filesrc_open_file):
10764         * gst/elements/gstidentity.c: (gst_identity_chain):
10765         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10766         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10767         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10768         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10769         * gst/gstelement.h:
10770         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10771         (gst_pad_recover_caps_error), (gst_pad_pull):
10772         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10773         * gst/schedulers/gstbasicscheduler.c:
10774         (gst_basic_scheduler_chainhandler_proxy),
10775         (gst_basic_scheduler_gethandler_proxy),
10776         (gst_basic_scheduler_cothreaded_chain):
10777           gst_element_error -> GST_ELEMENT_ERROR
10778
10779 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10780
10781         * docs/Makefile.am:
10782         * docs/gst/tmpl/gstelement.sgml:
10783         * docs/gst/tmpl/gstxml.sgml:
10784         * docs/manuals.mak:
10785         * docs/pwg/advanced-request.xml:
10786         * docs/pwg/advanced-scheduling.xml:
10787         * docs/pwg/advanced-tagging.xml:
10788           fix non-validating docbook using CDATA
10789           make sure make check-local gets run first to check if it validates
10790
10791 2004-01-29  Julien MOUTTE <julien@moutte.net>
10792
10793         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
10794         handling (up and downstream).
10795         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
10796         my_filter thing.
10797
10798 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10799
10800         * docs/pwg/advanced-tagging.xml:
10801           Add docs about tag writing.
10802
10803 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10804
10805         * docs/pwg/advanced-tagging.xml:
10806           Add a part about tag reading and application signalling... Tag
10807           writing still needs to be documented.
10808         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10809           We can set file locations in READY, too.
10810
10811 2004-01-29  Julien MOUTTE <julien@moutte.net>
10812
10813         * docs/random/ds/element-checklist: Adding some notes about src
10814         events.
10815
10816 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10817
10818         * docs/random/mimetypes:
10819           Update docs to point to correct elements for various mimetypes, and
10820           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
10821           <stephane.loeuillet@tiscali.fr>.
10822
10823 2004-01-28  David Schleef  <ds@schleef.org>
10824
10825         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
10826
10827 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10828
10829         * docs/random/mimetypes:
10830           update docs for audio/x-raw-float. Add "buffer-frames=0 means
10831           undefined"
10832         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10833           make it only work in NULL.
10834         * gst/gstcaps.c:
10835           don't posion NULL caps
10836         * gst/gstelement.c: (gst_element_set_time):
10837           add debugging statement
10838         * gst/gstelement.c: (gst_element_emit_found_tag),
10839         (gst_element_found_tag_func), (gst_element_found_tags):
10840         * gst/gstelement.h:
10841           These functions take const taglists
10842         * gst/gstpad.c: (gst_pad_proxy_getcaps):
10843           fix memleak
10844         * gst/gstpad.c: (gst_pad_event_default):
10845           make more effort on handling discont and clocks, g_warn if everything
10846           fails
10847         * gst/gststructure.c: (gst_structure_remove_fields),
10848         (gst_structure_remove_fields_valist):
10849         * gst/gststructure.h:
10850           add gst_structure_remove_fields(_valist)
10851         * gst/gsttag.c:
10852           fix doc glitch
10853
10854 2004-01-28  David Schleef  <ds@schleef.org>
10855
10856         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
10857         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
10858         Fix memory leakage of gst_caps_to_string().
10859
10860         Use GST_PTR_FORMAT instead of gst_caps_to_string():
10861         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
10862         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
10863         (gst_spider_identity_sink_loop_type_finding):
10864         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
10865         (find_suggest):
10866         * gst/gstpad.c: (gst_pad_try_relink_filtered),
10867         (gst_pad_set_explicit_caps):
10868         * gst/parse/grammar.y:
10869
10870 2004-01-28  David Schleef  <ds@schleef.org>
10871
10872         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
10873         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
10874         * docs/random/ds/0.9-suggested-changes: Notes from Company.
10875         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
10876         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
10877         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
10878         (gst_debug_log_default), (_gst_info_printf_extension),
10879         (_gst_info_printf_extension_arginfo):  Add printf extension.
10880         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
10881         * gst/gststructure.c: (gst_structure_to_string),
10882         (_gst_structure_parse_value): Use gst_value_deserialize() and
10883         remove old code.
10884         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
10885         (gst_value_deserialize_boolean), (gst_strtoi),
10886         (gst_value_deserialize_int), (gst_value_deserialize_double),
10887         (gst_value_deserialize_string), (gst_value_deserialize): Implement
10888         a bunch of deserialize functions and gst_value_deserialize.
10889         * gst/gstvalue.h: er, _de_serialize, not unserialize
10890         * testsuite/caps/string-conversions.c: (main): We don't currently
10891         handle (float) in caps, so convert these to (double).
10892         * testsuite/debug/Makefile.am: Add new test for the printf extension
10893         * testsuite/debug/printf_extension.c: (main): same
10894
10895 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10896
10897         * docs/random/company/time:
10898           Add some docs about clocking and time
10899
10900 2004-01-28  Julien MOUTTE <julien@moutte.net>
10901
10902         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
10903
10904 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10905
10906         * docs/pwg/advanced-clock.xml:
10907         * docs/pwg/advanced-dparams.xml:
10908         * docs/pwg/advanced-events.xml:
10909         * docs/pwg/advanced-interfaces.xml:
10910         * docs/pwg/advanced-midi.xml:
10911         * docs/pwg/advanced-request.xml:
10912         * docs/pwg/advanced-scheduling.xml:
10913         * docs/pwg/advanced-tagging.xml:
10914         * docs/pwg/advanced-types.xml:
10915         * docs/pwg/appendix-checklist.xml:
10916         * docs/pwg/building-boiler.xml:
10917         * docs/pwg/building-chainfn.xml:
10918         * docs/pwg/building-filterfactory.xml:
10919         * docs/pwg/building-pads.xml:
10920         * docs/pwg/building-props.xml:
10921         * docs/pwg/building-signals.xml:
10922         * docs/pwg/building-state.xml:
10923         * docs/pwg/building-testapp.xml:
10924         * docs/pwg/intro-basics.xml:
10925         * docs/pwg/intro-preface.xml:
10926         * docs/pwg/other-autoplugger.xml:
10927         * docs/pwg/other-sink.xml:
10928         * docs/pwg/other-source.xml:
10929         * docs/pwg/titlepage.xml:
10930           fix up id's
10931
10932 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10933
10934         * docs/95NonPath:
10935         * docs/HACKING:
10936         * docs/README:
10937         * docs/building-the-docs-on-debian:
10938           collect relevant bits of doc info
10939
10940 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10941
10942         * docs/pwg/advanced_tagging.xml:
10943           Half-assed commit so Thomas can re-arrange document IDs here to be
10944           consistent, too.
10945
10946 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10947
10948         * docs/manual/autoplugging.xml:
10949         * docs/manual/bins-api.xml:
10950         * docs/manual/bins.xml:
10951         * docs/manual/buffers-api.xml:
10952         * docs/manual/buffers.xml:
10953         * docs/manual/clocks.xml:
10954         * docs/manual/components.xml:
10955         * docs/manual/cothreads.xml:
10956         * docs/manual/debugging.xml:
10957         * docs/manual/dparams-app.xml:
10958         * docs/manual/dynamic.xml:
10959         * docs/manual/elements-api.xml:
10960         * docs/manual/elements.xml:
10961         * docs/manual/factories.xml:
10962         * docs/manual/gnome.xml:
10963         * docs/manual/goals.xml:
10964         * docs/manual/helloworld.xml:
10965         * docs/manual/helloworld2.xml:
10966         * docs/manual/init-api.xml:
10967         * docs/manual/intro.xml:
10968         * docs/manual/links-api.xml:
10969         * docs/manual/links.xml:
10970         * docs/manual/manual.xml:
10971         * docs/manual/motivation.xml:
10972         * docs/manual/pads-api.xml:
10973         * docs/manual/pads.xml:
10974         * docs/manual/plugins-api.xml:
10975         * docs/manual/plugins.xml:
10976         * docs/manual/programs.xml:
10977         * docs/manual/queues.xml:
10978         * docs/manual/quotes.xml:
10979         * docs/manual/schedulers.xml:
10980         * docs/manual/states-api.xml:
10981         * docs/manual/states.xml:
10982         * docs/manual/threads.xml:
10983         * docs/manual/typedetection.xml:
10984         * docs/manual/xml.xml:
10985           use chapter, part, section or misc as id starts for all bits
10986
10987 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10988
10989         * docs/gst/gstreamer-sections.txt:
10990           Fix up TITLE of the sections
10991
10992 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10993
10994         * docs/pwg/advanced_interfaces.xml:
10995           Add documentation on propertyprobing.
10996         * docs/pwg/advanced_events.xml:
10997         * docs/pwg/advanced_tagging.xml:
10998         * docs/pwg/building_boiler.xml:
10999         * docs/pwg/building_filterfactory.xml:
11000         * docs/pwg/pwg.xml:
11001           Move filterfactory and tagging into their own chapter, add a chapter
11002           on events. all these are empty placeholders that will be filled in
11003           some day.
11004
11005 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11006
11007         * docs/pwg/advanced_interfaces.xml:
11008           Docs for mixer interface. Also a check for website uploading.
11009
11010 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11011
11012         * docs/HACKING:
11013         * docs/Makefile.am:
11014         * docs/faq/Makefile.am:
11015         * docs/gst/Makefile.am:
11016         * docs/gst/tmpl/gstelement.sgml:
11017         * docs/gst/tmpl/gstplugin.sgml:
11018         * docs/gst/tmpl/gstreamer-unused.sgml:
11019         * docs/libs/Makefile.am:
11020         * docs/manual/Makefile.am:
11021         * docs/manuals.mak:
11022         * docs/pwg/Makefile.am:
11023         * docs/upload.mak:
11024           Separate out upload target and make it similar for
11025           both docbook and gtk-doc docs
11026
11027 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11028
11029         * docs/manuals.mak:
11030           Fix upload target to work with freedesktop
11031
11032 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11033
11034         * docs/pwg/advanced_types.xml:
11035           Add notes on creating your own types.
11036         * docs/pwg/building_boiler.xml:
11037         * docs/pwg/building_pads.xml:
11038         * docs/pwg/building_state.xml:
11039           Add some stuff about how to retrieve values from structures, how
11040           that relates to types and change layout slightly again to be almost
11041           perfect.
11042
11043 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11044
11045         * docs/pwg/advanced_dparams.xml:
11046         * docs/pwg/advanced_scheduling.xml:
11047           Change index layout slightly.
11048
11049 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11050
11051         * docs/pwg/advanced_clock.xml:
11052         * docs/pwg/advanced_interfaces.xml:
11053         * docs/pwg/advanced_midi.xml:
11054           General placeholders for now.
11055         * docs/pwg/advanced_request.xml:
11056           Explanation about sometimes and request pads.
11057         * docs/pwg/advanced_scheduling.xml:
11058           Concept of bytestream, loopfunctions and schedulers.
11059         * docs/pwg/building_boiler.xml:
11060           Add something about plugin-init.
11061
11062 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11063
11064         * docs/pwg/building_pads.xml:
11065           Fix broken docbook
11066
11067 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11068
11069         * docs/pwg/advanced_interfaces.xml:
11070         * docs/pwg/pwg.xml:
11071           Add as a placeholder for future filling-in.
11072         * docs/pwg/basics_autoplugging.xml:
11073         * docs/pwg/basics_buffers.xml:
11074         * docs/pwg/basics_elements.xml:
11075         * docs/pwg/basics_events.xml:
11076         * docs/pwg/basics_plugins.xml:
11077         * docs/pwg/basics_types.xml:
11078           Remove, because unused (this is all in intro_basics.xml).
11079         * docs/pwg/building_signals.xml:
11080           Short intro to signals + reference to GObject docs - we really
11081           shouldn't go into these sort of things to deply because we don't
11082           use them that extensively anyway.
11083         * docs/pwg/building_state.xml:
11084           Explanation of states. Benjamin, please check.
11085         * docs/pwg/building_testapp.xml:
11086           Put everything in one page - putting only a few lines of content
11087           per page doesn't really make sense.
11088
11089           Time to get into the advanced topics. ;).
11090
11091 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11092
11093         * docs/pwg/advanced_types.xml:
11094           Finish documenting the current state of mimetypes.
11095         * docs/pwg/building_boiler.xml:
11096         * docs/pwg/building_chainfn.xml:
11097         * docs/pwg/building_pads.xml:
11098         * docs/pwg/building_props.xml:
11099         * docs/pwg/building_testapp.xml:
11100           Start documenting the "how to build a simple audio filter" part
11101           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
11102           states and (maybe?) a short introduction to capsnego in the chapter
11103           on pads (building_pads.xml). Capsnego should probably be explained
11104           fully in advanced_capsnego.xml or so.
11105
11106 2004-01-26  David Schleef  <ds@schleef.org>
11107
11108         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
11109         * gst/gstpad.h: Add new function to allow element to (somewhat)
11110         specify non-fixed caps on a pad.
11111         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
11112         that I added a few weeks ago.
11113
11114 2004-01-26  David Schleef  <ds@schleef.org>
11115
11116         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
11117           making try_set_caps() work with non-fixed caps.
11118
11119 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11120
11121         * docs/pwg/advanced_types.xml:
11122         * docs/pwg/intro_basics.xml:
11123         * docs/pwg/intro_preface.xml:
11124         * docs/pwg/pwg.xml:
11125         * docs/pwg/titlepage.xml:
11126           First try to resurrect the PWG. I'm halfway integrating the mimetypes
11127           in here (docs/random/mimetypes), and will from there on work on both
11128           updating outdated parts and adding missing parts.
11129           That doesn't mean I'll fix it completely, but I'll try at least. ;).
11130
11131 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11132
11133         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
11134           policy is set
11135
11136 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11137
11138         * gst/gstelement.h:
11139           remove gst_element_factory_get_version. It doesn't exist anymore.
11140         * gst/gstplugin.c:
11141         * gst/gstplugin.h:
11142           remove gst_plugin_set_name and change gst_plugin_get_longname to
11143           gst_plugin_get_description to match code.
11144         * gst/gsterror.h:
11145           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
11146         * gst/gstpad.c: (gst_pad_try_set_caps):
11147           make it work with nonfixed caps.
11148           Note that even in the nonfixed case the link function of the pad
11149           that tries to set caps isn't called.
11150
11151 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11152
11153         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
11154           fix bug where buffer was not assembled correctly
11155         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
11156           silence by default
11157         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11158           only seek if there's no more buffers that could work without seeking
11159
11160 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11161
11162         * gst/gsttag.c: (_gst_tag_initialize):
11163         * gst/gsttag.h:
11164           Add application tag (for encoding/muxing app).
11165
11166 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11167
11168         * autogen.sh:
11169           make autopoint force, and libtoolize not copy
11170         * common/m4/as-docbook.m4:
11171           added docbook xml catalog setup check
11172         * common/m4/gst-doc.m4:
11173           use docbook check
11174
11175 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11176
11177         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
11178         * gst/gsttag.h:
11179           add GstTagFlag
11180
11181 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11182
11183         * docs/gst/gstreamer-sections.txt:
11184         * docs/gst/tmpl/gst.sgml:
11185         * docs/gst/tmpl/gstbuffer.sgml:
11186         * docs/gst/tmpl/gstclock.sgml:
11187         * docs/gst/tmpl/gstelement.sgml:
11188         * docs/gst/tmpl/gstreamer-unused.sgml:
11189         * docs/gst/tmpl/gstxml.sgml:
11190           sync latest API changes to docs
11191
11192 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11193
11194         * gst/gstpluginfeature.c:
11195           fix doc snippet
11196         * tools/gst-inspect.c: (print_element_list):
11197           fix output of typefind
11198           add GPL header
11199         * tools/gst-launch.c:
11200           add GPL header
11201
11202 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11203
11204         * gst/elements/Makefile.am:
11205         * gst/elements/gstelements.c:
11206         * gst/elements/gsttypefindelement.c:
11207         * gst/elements/gsttypefindelement.h:
11208         * po/POTFILES.in:
11209         * po/fr.po:
11210         * po/nl.po:
11211           renamed gsttypefindelement to gsttypefind, conserving CVS history
11212
11213 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11214
11215         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
11216         * gst/gsttag.h:
11217           add some tags used in ogg as well
11218           fix _ in replaygain tags
11219
11220 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11221
11222         * gst/gsterror.h:
11223           fix wrong GST_LIBRARY_ERROR_ENCODE addition
11224
11225 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11226
11227         * gst/gstelement.c: (gst_element_error_full):
11228         * gst/gstelement.h:
11229           change _extended to _full
11230
11231 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11232
11233         reviewed by: <delete if not using a buddy>
11234
11235         * docs/gst/tmpl/gst.sgml:
11236         * docs/gst/tmpl/gstbuffer.sgml:
11237         * docs/gst/tmpl/gstclock.sgml:
11238         * docs/gst/tmpl/gstelement.sgml:
11239         * docs/gst/tmpl/gstreamer-unused.sgml:
11240         * docs/gst/tmpl/gstxml.sgml:
11241         * gst/gstelement.c: (gst_element_error_full):
11242         * gst/gstelement.h:
11243
11244 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11245
11246         * gst/gstelement.h: fix _gst_element_error_printf prototype
11247
11248 2004-01-20  David Schleef  <ds@schleef.org>
11249
11250         * gst/gststructure.c: (gst_structure_to_string):
11251         Convert function to use gst_value_serialize().
11252         * gst/gstvalue.c: (gst_value_serialize_list),
11253         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
11254         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
11255         (gst_value_serialize_int), (gst_value_serialize_double),
11256         (gst_string_wrap), (gst_value_serialize_string),
11257         (gst_value_serialize), (gst_value_deserialize):
11258         * gst/gstvalue.h:
11259         Add implementations for serialize.
11260
11261 2004-01-20  Julien MOUTTE  <julien@moutte.net>
11262
11263         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
11264         we want to keep that one in the future or change xvidenc.c to use 
11265         another error.
11266
11267 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11268
11269         * gst/gstelement.c: (_gst_element_error_printf):
11270         * gst/gstelement.h:
11271           privatise function
11272
11273 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11274
11275         * docs/random/error:
11276           doc explaining error system
11277         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11278           cleanup
11279
11280 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11281
11282         * gst/gst-i18n-app.h:
11283         * gst/gst-i18n-lib.h:
11284           remove inclusion of config.h
11285         * po/POTFILES.in:
11286         * po/nl.po:
11287           add gst/gstelement.c
11288
11289 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11290
11291         * po/nl.po: updated Dutch translation
11292
11293 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11294
11295         * gst/gsterror.c: (_gst_core_errors_init),
11296         (_gst_library_errors_init), (_gst_resource_errors_init),
11297         (_gst_stream_errors_init):
11298         remove ending punctuation dots
11299
11300 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11301
11302         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11303         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
11304         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11305         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11306         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11307         use GST_ERROR_SYSTEM
11308
11309 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11310
11311         * gst/gstelement.c: (gst_element_error_printf),
11312         (gst_element_error_extended):
11313         * gst/gstelement.h:
11314           add a helper printf function so we can have NULL values passed.
11315
11316 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11317
11318         * gst/gstelement.h:
11319           add G_STMT macros to gst_element_error, which isn't strictly
11320           necessary but people tell me to anyway.
11321
11322 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11323
11324         * gst/Makefile.am:
11325         * gst/autoplug/gstspideridentity.c:
11326         (gst_spider_identity_sink_loop_type_finding):
11327         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11328         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11329         (gst_filesink_close_file), (gst_filesink_handle_event),
11330         (gst_filesink_chain):
11331         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
11332         (gst_filesrc_map_region), (gst_filesrc_get_read),
11333         (gst_filesrc_open_file):
11334         * gst/elements/gstidentity.c: (gst_identity_chain):
11335         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11336         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11337         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11338         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
11339         * gst/gst.h:
11340         * gst/gst_private.h:
11341         * gst/gstelement.c: (gst_element_class_init),
11342         (gst_element_default_error), (gst_element_error_func),
11343         (gst_element_error_extended):
11344         * gst/gstelement.h:
11345         * gst/gsterror.c: (_gst_core_errors_init),
11346         (_gst_library_errors_init), (_gst_resource_errors_init),
11347         (_gst_stream_errors_init), (gst_error_get_message):
11348         * gst/gsterror.h:
11349         * gst/gstinfo.c: (_gst_debug_init):
11350         * gst/gstmarshal.list:
11351         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11352         (gst_pad_recover_caps_error), (gst_pad_pull):
11353         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11354         * gst/schedulers/gstbasicscheduler.c:
11355         (gst_basic_scheduler_chainhandler_proxy),
11356         (gst_basic_scheduler_gethandler_proxy),
11357         (gst_basic_scheduler_cothreaded_chain):
11358         * po/POTFILES.in:
11359         * po/fr.po:
11360         * po/nl.po:
11361           change error signal
11362           add error categories
11363
11364 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
11365
11366         * gst/gsttag.c: (_gst_tag_initialize):
11367         * gst/gsttag.h:
11368         Add replaygain tag
11369
11370 2004-01-18  Colin Walters  <walters@verbum.org>
11371
11372         * examples/retag/retag.c: Call gst_init before processing
11373         program args.  Add g_assert to _link_many call.
11374
11375 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11376
11377         * gst/gstpad.c: (gst_pad_alloc_buffer):
11378           Return a newly allocated buffer when the pad has no peer.
11379
11380 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11381
11382         * gst/gstclock.c: (gst_clock_get_time):
11383           make it compile with gcc 2.95 again.
11384           Patch by Scott Wheeler
11385
11386 2004-01-15  David Schleef  <ds@schleef.org>
11387
11388         * gst/gstcaps.h:
11389         Added gst_caps_is_simple() macro.
11390         * testsuite/caps/caps.c: (test1):
11391         * testsuite/caps/intersect2.c: (main):
11392         * testsuite/caps/intersection.c: (main):
11393         Fixes to make 'make check' work again after removing
11394         gst_caps_is_chained().
11395
11396 2004-01-15  Leif Johnson <leif@ambient.2y.net>
11397
11398         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
11399         and additions to the MIDI document.
11400
11401 2004-01-15  David Schleef  <ds@schleef.org>
11402
11403         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
11404         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
11405         of GST_RPAD_, since we don't know if it's a real or ghost pad.
11406
11407 2004-01-15  David Schleef  <ds@schleef.org>
11408
11409         * gst/gstqueue.c:
11410         * gst/gstqueue.h:
11411         Fix the spelling of "treshold" and make min_threshold actually
11412         affect the queue.
11413
11414 2004-01-15  David Schleef  <ds@schleef.org>
11415
11416         * gst/gstcaps.c:
11417         Add lots of documentation.
11418         * gst/gstcaps.h:
11419         Deprecate a few functions.
11420         * gst/gstpad.c:
11421         Removed use of deprecated functions.
11422
11423 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11424
11425         * gst/gstpad.c: (gst_pad_is_linked):
11426         * gst/gstpad.h:
11427           implement gst_pad_is_linked
11428         * gst/gstelement.h:
11429           reserve space for initiate_state_change
11430
11431 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11432
11433         * gst/autoplug/gstspideridentity.c:
11434         (gst_spider_identity_sink_loop_type_finding):
11435           break infinite loop by just returning instead of looping
11436         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
11437           set event time difference correctly. Set it to 1 second instead
11438           of 100ms to be more tolerant
11439         * gst/gstelement.c: (gst_element_set_time):
11440           add debugging output
11441
11442 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11443
11444         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
11445           query if buffers are inside the pool, ignore events
11446
11447 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11448
11449         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
11450         (gst_clock_set_speed), (gst_clock_set_active),
11451         (gst_clock_is_active), (gst_clock_reset),
11452         (gst_clock_handle_discont):
11453         * gst/gstclock.h:
11454           deprecate old interface and disable functions that aren't in use
11455           anymore.
11456         * gst/gstelement.h:
11457         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
11458         (gst_element_set_time), (gst_element_adjust_time):
11459           add concept of "element time" and functions to get/set this time.
11460         * gst/gstelement.c: (gst_element_change_state):
11461           update element time correctly.
11462         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
11463           This is a debug message, not a g_critical.
11464         * gst/gstpad.c: (gst_pad_event_default):
11465           handle discontinuous events right with element time.
11466         * gst/gstscheduler.c: (gst_scheduler_state_transition):
11467           update to clocking fixes.
11468           set clocks on elements in READY=>PAUSED. The old behaviour caused
11469           a wrong element time on the first element that started playing.
11470         * gst/schedulers/gstbasicscheduler.c:
11471         (gst_basic_scheduler_class_init):
11472         * gst/schedulers/gstoptimalscheduler.c:
11473         (gst_opt_scheduler_class_init):
11474           remove code that just implements the default behaviour.
11475         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
11476           update to use new clocking functions
11477         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
11478         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
11479           update to test new element time.
11480         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
11481           use _get_allowed_caps instead of _get_caps. This catches filtered
11482           caps correctly.
11483         * testsuite/debug/commandline.c:
11484           update for new GST_DEBUG syntax.
11485         * testsuite/threads/Makefile.am:
11486           disable a test that only works sometimes.
11487
11488 2004-01-13  Julien MOUTTE <julien@moutte.net>
11489
11490         * po/LINGUAS: Adding fr.
11491         * po/fr.po: Adding french translation.
11492
11493 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11494
11495         * gst/parse/grammar.y:
11496         * po/POTFILES.in:
11497         * po/nl.po:
11498         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
11499           translate parsing error messages
11500
11501 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11502
11503         * po/POTFILES.in: adding gst-launch
11504         * po/nl.po: updated translation, all 99 strings translated
11505         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
11506         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
11507           fix strings for translation
11508
11509 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11510
11511         * gst/gst.c:
11512           - capitalize beginnings of popt options
11513           - fix strings for translation
11514           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
11515
11516 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11517
11518         * po/README: add some notes on how to update translations
11519
11520 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11521
11522         * ABOUT-NLS: removed, is autogenerated from autopoint
11523         * autogen.sh: add autopoint stuff
11524         * configure.ac: fix up gettext stuff
11525         * gst/Makefile.am: add i18n headers to noinst_HEADERS
11526         * gst/elements/gsttypefindelement.c: add header include
11527         * gst/gettext.h: add header, copy from system-installed header
11528         * gst/gst-i18n-app.h: to be included by each app having translations
11529         * gst/gst-i18n-lib.h: to be included by each lib having translations
11530         * gst/gst.c: (init_pre): fix up gettext calls
11531         * gst/gst_private.h: remove i18n stuff, moving to separate headers
11532         * po/LINGUAS: the new way to specify translations present
11533         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
11534         * po/Makevars: the variables filled in for GStreamer
11535         * po/POTFILES.in: added new files with translations
11536         * po/de.po: has new strings
11537         * po/nl.po: readded, has new strings
11538
11539 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11540
11541         * gst/gsttag.c: fix some strings marked for translation
11542
11543 2004-01-13  Iain <iain@prettypeople.org>
11544
11545         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
11546         group when we add an element to it, cos we unref it when we remove one
11547
11548 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11549
11550         * testsuite/debug/commandline.c: (debug_not_reached):
11551         * testsuite/debug/output.c: (check_message):
11552           fix testsuite
11553
11554 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11555
11556         * examples/cutter/.cvsignore:
11557         * examples/helloworld/.cvsignore:
11558         * examples/launch/.cvsignore:
11559         * examples/manual/.cvsignore:
11560         * examples/mixer/.cvsignore:
11561         * examples/pingpong/.cvsignore:
11562         * examples/plugins/.cvsignore:
11563         * examples/queue/.cvsignore:
11564         * examples/queue2/.cvsignore:
11565         * examples/queue3/.cvsignore:
11566         * examples/queue4/.cvsignore:
11567         * examples/retag/.cvsignore:
11568         * examples/thread/.cvsignore:
11569         * examples/typefind/.cvsignore:
11570         * examples/xml/.cvsignore:
11571         * gst/.cvsignore:
11572         * gst/autoplug/.cvsignore:
11573         * gst/elements/.cvsignore:
11574         * gst/indexers/.cvsignore:
11575         * gst/parse/.cvsignore:
11576         * gst/registries/.cvsignore:
11577         * gst/schedulers/.cvsignore:
11578         * libs/gst/bytestream/.cvsignore:
11579         * libs/gst/control/.cvsignore:
11580         * libs/gst/getbits/.cvsignore:
11581         * tests/.cvsignore:
11582         * tests/bufspeed/.cvsignore:
11583         * tests/instantiate/.cvsignore:
11584         * tests/memchunk/.cvsignore:
11585         * tests/muxing/.cvsignore:
11586         * tests/sched/.cvsignore:
11587         * tests/seeking/.cvsignore:
11588         * tests/threadstate/.cvsignore:
11589         * testsuite/.cvsignore:
11590         * testsuite/caps/.cvsignore:
11591         * testsuite/cleanup/.cvsignore:
11592         * testsuite/dynparams/.cvsignore:
11593         * testsuite/plugin/.cvsignore:
11594         * tools/.cvsignore:
11595           update - this is huge, because it includes *.bb, *.bbg and *.da files
11596           which are generated for gcov.
11597
11598 2004-01-11  David Schleef  <ds@schleef.org>
11599
11600         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
11601         a function to parse integers in ways that strto[u]l() does not.
11602
11603 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11604
11605         * tools/gst-inspect.c: (print_caps):
11606           improve output of caps a bit
11607
11608 2004-01-11  David Schleef  <ds@schleef.org>
11609
11610         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
11611         inherit correct flags (READONLY and DONTKEEP).
11612
11613 2004-01-11  David Schleef  <ds@schleef.org>
11614
11615         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
11616         (gst_filesrc_map_region):
11617         * gst/gstbuffer.c: (_gst_buffer_initialize),
11618         (_gst_buffer_sub_free), (gst_buffer_default_copy),
11619         (gst_buffer_new), (gst_buffer_create_sub),
11620         (gst_buffer_is_span_fast), (gst_buffer_span):
11621         * gst/gstbuffer.h:
11622         Change GstBuffer private structure element names. (all files)
11623         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
11624         (gst_queue_link):
11625         * gst/gstqueue.h:
11626         Implement getcaps/pad_link functions that handle the case where
11627         there are data in the queue.
11628
11629 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11630
11631         * gst/elements/gstbufferstore.c:
11632           initialize debugging structure correctly
11633         * gst/elements/gsttee.c: (gst_tee_set_property):
11634           g_object_notify when property was changed
11635         * gst/elements/gsttypefindelement.c:
11636         (gst_type_find_element_change_state):
11637           clear caps correctly
11638
11639 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11640
11641         * gst/gstqueue.c: (gst_queue_init):
11642           Use better defaults for when a queue should block. This
11643           gets rid of jerky playback for quite a few files.
11644           It takes more memory.
11645
11646 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11647
11648         (gst_xml_registry_parse_padtemplate):
11649           make critical message slightly more useful
11650
11651 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11652
11653         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
11654         (gst_debug_message_get), (gst_debug_log_default):
11655         * gst/gstinfo.h:
11656           Change gst_debug_log(_valist) to take a const format string.
11657           Change prototype of log function and functions using those to 
11658           take a GstDebugMessage instead of a string that requires using
11659           gst_debug_message_get.
11660
11661 2004-01-08  David Schleef  <ds@schleef.org>
11662
11663         * Makefile.am:
11664         * configure.ac:
11665         Add option --enable-gcov to build GStreamer with -fprofile-arcs
11666         and -ftest-coverage, which allows gcov to show information about
11667         testsuite coverage.
11668
11669 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11670
11671         * gst/gstutils.h:
11672           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
11673           GST_PARENT_CALL_WITH_DEFAULT
11674         * gst/elements/gstaggregator.c: 
11675         * gst/elements/gstbufferstore.c: 
11676         * gst/elements/gstfakesink.c: 
11677         * gst/elements/gstfakesrc.c: 
11678         * gst/elements/gstfdsink.c: 
11679         * gst/elements/gstfdsrc.c: 
11680         * gst/elements/gstfilesink.c: 
11681         * gst/elements/gstfilesrc.c: 
11682         * gst/elements/gstidentity.c: 
11683         * gst/elements/gstmd5sink.c: 
11684         * gst/elements/gstmultidisksrc.c:
11685         * gst/elements/gstpipefilter.c: 
11686         * gst/elements/gstshaper.c:
11687         * gst/elements/gststatistics.c:
11688         * gst/elements/gsttee.c:
11689         * gst/elements/gsttypefindelement.c:
11690           use them.
11691
11692 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
11693
11694         * docs/gst/gstreamer-docs.sgml: remove props
11695         * docs/gst/gstreamer-sections.txt: remove props
11696         * docs/gst/tmpl/gst.sgml:
11697         * docs/gst/tmpl/gstbin.sgml:
11698         * docs/gst/tmpl/gstbuffer.sgml:
11699         * docs/gst/tmpl/gstcaps.sgml:
11700         * docs/gst/tmpl/gstclock.sgml:
11701         * docs/gst/tmpl/gstelement.sgml:
11702         * docs/gst/tmpl/gstindex.sgml:
11703         * docs/gst/tmpl/gstobject.sgml:
11704         * docs/gst/tmpl/gstpad.sgml:
11705         * docs/gst/tmpl/gstpadtemplate.sgml:
11706         * docs/gst/tmpl/gstreamer-unused.sgml:
11707         * docs/gst/tmpl/gstthread.sgml:
11708         * docs/gst/tmpl/gstxml.sgml:
11709           sync with code reorganization
11710
11711 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
11712
11713         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
11714         Make the 'Could not find compatible pad' message more informative.
11715
11716 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11717                                                                                 
11718         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
11719           Fix for if we pass NULL as property to location.
11720         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
11721         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
11722           Fix for instantiate-test (see below).
11723         * gst/gststructure.c: (_gst_structure_parse_value):
11724           Fix compile error on gcc-2.96.
11725         * configure.ac:
11726         * tests/Makefile.am:
11727         * tests/instantiate/Makefile.am:
11728         * tests/instantiate/create.c: (create_all_elements), (main):
11729           Add a test that instantiates all elements. This makes it easy to
11730           track dead code for old API/design (like setting event functions
11731           on sink pads and so on).
11732
11733 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
11734
11735         * gst/gstcaps.c: (gst_caps_append_structure):
11736           Move the poisoning to allow a NULL structure
11737         * gst/gstevent.c: (_gst_event_free):
11738           When freeing a navigation event, free the structure
11739           also
11740
11741 2004-01-04  David Schleef  <ds@schleef.org>
11742
11743         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11744         Remove usage of gst_pad_proxy_fixate.
11745         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
11746         (gst_caps_split_one), (gst_caps_replace):
11747         Add poisoning code.
11748         * gst/gstmarshal.list:
11749         Add pointer__pointer for fixate signal
11750         * gst/gstpad.c: (gst_real_pad_class_init),
11751         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11752         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
11753         (gst_pad_set_explicit_caps), (gst_pad_template_new):
11754         Add poisoning code. Add fixate signal on RealPad. Change
11755         set_explicit_caps() to take const GstCaps, like try_set_caps().
11756         * gst/gstpad.h:
11757         * testsuite/caps/Makefile.am:
11758         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
11759
11760 2004-01-03  David Schleef  <ds@schleef.org>
11761
11762         * gst/elements/gsttypefindelement.c:
11763         (gst_type_find_element_have_type), (gst_type_find_element_init):
11764         Use gst_pad_use_explicit_caps for src pad.
11765         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
11766         before using it.
11767
11768 2004-01-03  David Schleef  <ds@schleef.org>
11769
11770         * gst/gstelement.c: (gst_element_link_pads_filtered),
11771         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
11772         that linking was successful.
11773         * gst/gstpad.c: (gst_pad_link_free),
11774         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
11775         (gst_pad_link_try), (gst_pad_link_unnegotiate),
11776         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
11777         GstPadLinkReturn correctly between functions, and don't fail
11778         when DELAYED is used (DELAYED is very important).  Better
11779         cleanup on unlinking and unnegotiation.  Should fix some spider
11780         bugs.
11781
11782 2004-01-02  David Schleef  <ds@schleef.org>
11783
11784         * gst/gstelement.c: (gst_element_class_init),
11785         (gst_element_base_class_init): ->padtemplates should be cleared
11786         in base_init, since we need to have a fresh list for every
11787         class.  (Alternately, we chould copy the list and share the
11788         actual pad templates (not the list), but that would require
11789         changing every plugin to move pad template registration from
11790         base_init to class_init.)
11791
11792 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11793
11794         * gst/gstelement.c: (gst_element_class_add_pad_template):
11795           Refuse registering a pad template if another pad template
11796           with the same name already exists (#114715).
11797
11798 2004-01-02  David Schleef  <ds@schleef.org>
11799
11800         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
11801         (gst_caps_is_equal_fixed): Add new function.
11802         * gst/gstcaps.h: ditto.
11803         * gst/gstpad.c: (gst_real_pad_class_init),
11804         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
11805         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
11806         check new caps against existing caps -- if they're the same, return
11807         OK without renegotiating.  caps-nego-failed signal fixed so that
11808         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
11809         to save an extra caps copy.  Don't complete negotiation if a pad
11810         link function returns DELAYED.
11811
11812 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11813
11814         * gst/gstpad.c: (gst_pad_try_relink_filtered):
11815           Fix wrong g_return_if_fail
11816
11817 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
11818
11819         * gst/gstbin.c: (gst_bin_class_init):
11820         Change the marshalling of element_added/element_removed
11821         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
11822         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
11823
11824 2004-01-01  David Schleef  <ds@schleef.org>
11825
11826         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11827         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
11828         (gst_pad_use_explicit_caps):
11829         * gst/gstpad.h:
11830         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
11831         to use an internal getcaps and link fuction so that negotiation
11832         always results in the explicitly set caps.
11833         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
11834         are particularly useful for decoders.
11835
11836 2003-12-31  David Schleef  <ds@schleef.org>
11837
11838         * gst/elements/gstidentity.c: (gst_identity_class_init),
11839         (gst_identity_init), (gst_identity_chain),
11840         (gst_identity_set_property), (gst_identity_get_property):
11841         * gst/elements/gstidentity.h:
11842         * gst/gstqueue.c: (gst_queue_init):
11843           Negotiation fixes.
11844
11845 2003-12-31  David Schleef  <ds@schleef.org>
11846
11847         * gst/gstcaps.c: (gst_caps_intersect),
11848         (_gst_caps_normalize_foreach), (gst_caps_normalize):
11849           Implement gst_caps_normalize().
11850         * testsuite/caps/normalisation.c: (main):
11851           Add an additional test
11852
11853 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11854
11855         * gst/gstqueue.c: (gst_queue_init):
11856           use gst_pad_proxy_getcaps()
11857
11858 2003-12-31  David Schleef  <ds@schleef.org>
11859
11860         * gst/elements/gstshaper.c: (gst_shaper_link):
11861         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11862         * gst/gstqueue.c: (gst_queue_link):
11863           Negotiation fixes.
11864
11865 2003-12-31  David Schleef  <ds@schleef.org>
11866
11867         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
11868         * gst/gstpad.h: Add functions that are useful as default pad
11869         link and fixate functions for elements.
11870
11871 2003-12-30  David Schleef  <ds@schleef.org>
11872
11873         * gst/gstpad.c: (gst_pad_link_try):
11874           Fix segfault when attempting to return to old caps
11875
11876 2003-12-29  David Schleef  <ds@schleef.org>
11877
11878         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
11879         (gst_caps_structure_simplify), (gst_caps_simplify):
11880         * gst/gstcaps.h:
11881           Add simplify function
11882         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
11883         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
11884         * gst/gstpad.h:
11885           Copy over srcnotify, sinknotify when calling old pad_link
11886           functions.  Add new is_negotiated() function.
11887         * gst/gststructure.c: (gst_structure_copy):
11888           Fix an incredibly stupid bug that should have been noticed
11889           weeks ago.  _copy() returned the argument, not the new copy.
11890
11891 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11892
11893         * gst/gstcaps.c: (gst_caps_append):
11894           add sanity checks
11895         * gst/gstcaps.h: (gst_caps_debug):
11896           remove, it doesn't exist anymore.
11897         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
11898         (gst_element_threadsafe_properties_post_run):
11899           make debugging messages not clutter up THREAD debug category
11900         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
11901         (gst_element_change_state):
11902           update to new caps API
11903         * gst/gstinterface.c: (gst_implements_interface_cast):
11904           don't put vital code in g_return_if_fail
11905         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
11906         (gst_pad_link_filtered):
11907           add pst_pad_try_link and use it.
11908         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
11909           implement correctly, deprecate first one.
11910         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
11911           add and implement.
11912         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
11913           implement.
11914         (gst_pad_get_negotiated_caps):
11915           add and implement. Make GST_PAD_CAPS call this function.
11916         (gst_pad_get_caps):
11917           remove unneeded check..
11918         (gst_pad_recover_caps_error):
11919           disable, always return FALSE.
11920         (gst_real_pad_dispose):
11921           don't free caps and appfilter anymore, they're unused.
11922         * gst/gstpad.h:
11923           Reflect changes mentioned above.
11924         * gst/gstsystemclock.c: (gst_system_clock_wait):
11925           Make 'clock is way behind' a debugging message.
11926         * gst/gstthread.c: (gst_thread_change_state):
11927           Fix debugging message
11928
11929 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11930
11931         * gst/gstinfo.h:
11932           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
11933         * docs/gst/tmpl/gstreamer-unused.sgml:
11934           removed all traces of cvs conflicts
11935
11936 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11937
11938         * configure.ac:
11939         * gst/schedulers/cothreads_compat.h:
11940         * libs/Makefile.am:
11941           remove last instances of wingo cothread usage
11942
11943 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11944
11945         * gst/gstplugin.c:
11946         * gst/gstversion.h.in:
11947         * gst/parse/grammar.y:
11948           change comment block from /** to /* when not gtk-doc comments
11949
11950 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11951
11952         * gst/gst.c: whitespace and doc style fixes
11953
11954 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11955
11956         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
11957
11958 2003-12-24  Colin Walters  <walters@verbum.org>
11959
11960         * gst/elements/gsttypefindelement.c:
11961           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
11962           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
11963           Don't double-free caps.
11964
11965 2003-12-23  David Schleef  <ds@schleef.org>
11966
11967         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
11968           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
11969           Many little fixes and additions of debug statements to
11970           get rhythmbox working.
11971
11972 2003-12-23  Colin Walters  <walters@verbum.org>
11973
11974         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
11975         Use GST_PAD_LINK_SUCCESSFUL.
11976
11977 2003-12-23  David Schleef  <ds@schleef.org>
11978
11979         * gst/elements/gstaggregator.c:
11980         * gst/elements/gsttee.c:
11981           Use gst_pad_proxy_getcaps().
11982         * gst/gstpad.c:
11983         * gst/gstpad.h:
11984           Add gst_pad_proxy_getcaps(), which filter elements can use
11985           as a generic getcaps implementation.
11986           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
11987           was advertised.
11988
11989 2003-12-23  David Schleef  <ds@schleef.org>
11990
11991         * gst/gstpad.c:
11992           Rearrange/rewrite much of the pad negotiation code, since it
11993           resembled pasta.  This actually changes the way some
11994           negotiation works, since the previous code was inconsistent
11995           depending on how it was invoked.  Add (internal) structure
11996           GstPadLink, which is used to hold some information (more in
11997           the future) about the link between two pads.  Fixes a number
11998           of bugs, including random lossage of filter caps when the
11999           initial negotiation is delayed.  A few functions are still
12000           unimplemented.
12001         * gst/gstpad.h:
12002           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
12003           these when testing GstPadLinkReturn values instead of comparing
12004           directly.
12005
12006 2003-12-23  David Schleef  <ds@schleef.org>
12007
12008         * gst/gstvalue.c: 
12009         * gst/gstvalue.h:
12010           Rearrange lots of code.  Change registration of compare function
12011           into registration of compare/serialize/deserialize functions.
12012           Doesn't include implementation of gst_value_[de]serialize(),
12013           but that should be easy.
12014
12015 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12016
12017         * docs/gst/gstreamer-sections.txt:
12018         * docs/gst/tmpl/gstprops.sgml: removed
12019         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
12020           David removed props and caps code, so let's remove their docs as well.
12021           Removed all no longer existing symbols from gstreamer-sections.txt
12022           
12023 2003-12-22  Colin Walters  <walters@verbum.org>
12024
12025         * gst/gsttaginterface.c, gst/gsttaginterface.h,
12026           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
12027           of tags directly.
12028
12029 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12030
12031         * gst/elements/gstelements.c:
12032           Set ranks of elements to NONE, so the autoplugger doesn't use them.
12033         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
12034           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
12035           gst_caps (peer).
12036
12037 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12038
12039         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
12040         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
12041         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
12042         (gst_spider_identity_sink_loop_type_finding):
12043         * gst/autoplug/gstspideridentity.h:
12044           Fix autoplugging in spider element, so it works with new caps.
12045           This was mainly caused by identifying empty caps incorrectly.
12046
12047 2003-12-22  David Schleef  <ds@schleef.org>
12048
12049         * gststructure.c, gstvalue.c, gstvalue.h: Add
12050           gst_value_init_and_copy() and use it, to avoid silly mistakes in
12051           using g_value_copy()
12052
12053 2003-12-21  David Schleef  <ds@schleef.org>
12054
12055         * many, many files: Merge CAPS branch.  This includes:
12056           - implemention of GstValue and several GstValue types
12057           - implemention of GstStructure
12058           - entire rewrite of GstCaps
12059           - removal of GstProps
12060           - many changes to GstPad to compensate for new caps paradigm
12061           - removal of GstBufferpool
12062         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
12063         gstvalue.h, gst/gstcaps[2]*.[ch]:
12064           - rename gstcaps2.[ch] to gstcaps.[ch]
12065
12066 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12067
12068         * gst/gstqueue.c: (gst_queue_handle_pending_events),
12069         (gst_queue_chain), (gst_queue_handle_src_event):
12070           implement timeout for sending events. Workaround for if the
12071           pipeline on this queue is not passing any data.
12072
12073 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
12074                                                                                 
12075         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
12076         * moved CVS to freedesktop.org
12077