gst/: Removed atomic operations, use existing LOCK.
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-06-30  Wim Taymans  <wim@fluendo.com>
2
3         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
4         (default_have_data), (gst_pad_class_init), (gst_pad_init),
5         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
6         (gst_pad_check_pull_range), (gst_pad_get_range),
7         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
8         * gst/gstpad.h:
9         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
10         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
11         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
12         (gst_pad_remove_buffer_probe):
13         Removed atomic operations, use existing LOCK.
14         Move exception handling out of main code path.
15
16 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
17
18         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
19         (silly_return_true_function), (gst_pad_class_init),
20         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
21         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
22         (gst_pad_send_event):
23           Fix accumulator, add default value by using _emitv() instead
24           of _emit() for signal emission.
25
26 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
27
28         * docs/manual/advanced-dataaccess.xml:
29         * examples/manual/Makefile.am:
30           Add probe example.
31         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
32           Make work (??).
33
34 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
35
36         * gst/elements/gstfilesink.c: (gst_filesink_render):
37           Simplify code so that we don't have to handle short
38           writes and return GST_FLOW_ERROR if an error occured.
39
40 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
41
42         * docs/gst/gstreamer-docs.sgml:
43           Remove probes more.
44
45 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
46
47         * docs/gst/gstreamer-sections.txt:
48         * docs/gst/tmpl/gstpad.sgml:
49         * docs/gst/tmpl/gstprobe.sgml:
50         * gst/Makefile.am:
51         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
52         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
53         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
54         (gst_pad_push_event), (gst_pad_send_event):
55         * gst/gstpad.h:
56         * gst/gstutils.c: (gst_pad_add_data_probe),
57         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
58         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
59         (gst_pad_remove_buffer_probe):
60         * gst/gstutils.h:
61           Remove old probes, add new g-signal-based probes and some utility
62           functions.
63
64 2005-06-29  Edward Hervey  <edward@fluendo.com>
65
66         * gst/gstelementfactory.c:
67         * gst/gstutils.h:
68         * gst/gstutils.c:
69         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
70         the definition to the header file.
71
72 2005-06-29  Andy Wingo  <wingo@pobox.com>
73
74         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
75         plugins from the source directory.
76
77 2005-06-29  Wim Taymans  <wim@fluendo.com>
78
79         * docs/gst/tmpl/gstbuffer.sgml:
80         * docs/gst/tmpl/gstclock.sgml:
81         Some fixings for blantently wrong text.
82
83 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
84
85         * check/Makefile.am:
86         * gst/gst.c: (add_path_func), (init_pre):
87         * gst/gstregistry.c: (gst_registry_add_path):
88           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
89           only scan the GST_PLUGIN_PATH locations, and not add
90           system locations
91
92 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
93
94         * docs/gst/gstreamer-sections.txt:
95         * docs/gst/tmpl/gstbasesrc.sgml:
96         * gst/gstelement.c:
97         * gst/gstelement.h:
98         * gst/gstevent.c:
99         * gst/gstutils.c:
100           doc fixes
101
102 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
103
104         * docs/manual/advanced-autoplugging.xml:
105           Fix autoplugging example.
106
107 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
108
109         * docs/manual/advanced-autoplugging.xml:
110         * docs/manual/mime-world.fig:
111           Try to get autoplugging working, fix type detection. Fix text
112           in hello-world image.
113
114 2005-06-29  Wim Taymans  <wim@fluendo.com>
115
116         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
117         (gst_base_sink_change_state):
118         Small debug line.
119
120         * gst/gstclock.h:
121         map SIGNAL and BROADCAST to the right function.
122
123         * gst/gstobject.h:
124         Remove redundant braces.
125
126         * gst/gstpad.c: (gst_pad_set_caps):
127         Don't call setcaps function when reseting caps to NULL.
128
129         * gst/gstsystemclock.c: (gst_system_clock_dispose),
130         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
131         (gst_system_clock_id_unschedule):
132         Use BROADCAST as this is what we do.
133
134 2005-06-29  Wim Taymans  <wim@fluendo.com>
135
136         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
137         We are actually prerolling before commiting the state
138         change. 
139
140 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
141
142         * docs/manual/advanced-clocks.xml:
143         * docs/manual/advanced-interfaces.xml:
144         * docs/manual/advanced-metadata.xml:
145         * docs/manual/advanced-position.xml:
146         * docs/manual/advanced-schedulers.xml:
147         * docs/manual/advanced-threads.xml:
148         * docs/manual/appendix-porting.xml:
149         * docs/manual/basics-bins.xml:
150         * docs/manual/basics-bus.xml:
151         * docs/manual/basics-elements.xml:
152         * docs/manual/basics-helloworld.xml:
153         * docs/manual/basics-pads.xml:
154         * docs/manual/highlevel-components.xml:
155         * docs/manual/manual.xml:
156         * docs/manual/thread.fig:
157           Update (until threads/scheduling) Application Development Manual;
158           remove GstThread, add GstBus, add simple porting checklist, add
159           documentation for tag writing, clocks, make all examples until this
160           part compile and run.
161         * examples/manual/Makefile.am:
162           Update from changes to Application Development Manual; add bus
163           example, remove thread example.
164
165 2005-06-28  Wim Taymans  <wim@fluendo.com>
166
167         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
168         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
169         (gst_bus_source_dispatch):
170         Add debugging messages.
171         Make internal methods static.
172         Handle the case where the bus is flushed in the handler.
173         
174         * gst/gstelement.c: (gst_element_get_bus):
175         Fix refcount in _get_bus();
176
177         * gst/gstpipeline.c: (gst_pipeline_change_state),
178         (gst_pipeline_get_clock_func):
179         Clock refcounting fixes.
180         Handle the case where preroll timed out more gracefully.
181         
182         * gst/gstsystemclock.c: (gst_system_clock_dispose):
183         Clean up the internal thread in dispose. This is needed
184         for subclasses that actually get disposed.
185         
186         * gst/schedulers/threadscheduler.c:
187         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
188         (gst_thread_scheduler_dispose):
189         Free thread pool in dispose.
190
191 2005-06-28  Andy Wingo  <wingo@pobox.com>
192
193         * tests/network-clock-utils.scm (debug, print-event): New utils.
194
195         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
196         (*packet-loss*): Unified loss probability.
197         (network-time): Report out-of-band events.
198
199         * tests/plot-data: Add support for out-of-band events. Hack it
200         into this script instead of passing it down the pipe; should fix
201         this later.
202
203 2005-06-28  Wim Taymans  <wim@fluendo.com>
204
205         * docs/gst/gstreamer.types:
206         * docs/gst/tmpl/gstbasesrc.sgml:
207         * docs/gst/tmpl/gstpad.sgml:
208         Docs fixes.
209
210 2005-06-28  Wim Taymans  <wim@fluendo.com>
211
212         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
213         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
214         (gst_proxy_pad_do_fixatecaps):
215         Correctly proxy the check_pull_range function.
216
217 2005-06-28  Andy Wingo  <wingo@pobox.com>
218
219         * tests/network-clock.scm: Removed need for slib.
220         
221 2005-06-28  Wim Taymans  <wim@fluendo.com>
222
223         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
224         (gst_basesink_preroll_queue_flush):
225         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
226         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
227         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
228         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
229         (gst_proxy_pad_set_property):
230         * gst/gstpad.c:
231         * gst/gstpad.h:
232         * gst/gstqueue.c: (gst_queue_init):
233         The deprecated pad loop function is removed now.
234
235 2005-06-28  Andy Wingo  <wingo@pobox.com>
236
237         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
238         New parameters, simulate network packet loss.
239
240         * tests/network-clock-utils.scm: Initialize the RNG.
241
242 2005-06-28  Wim Taymans  <wim@fluendo.com>
243
244         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
245         (gst_basesink_event), (gst_basesink_deactivate):
246         Flushing the preroll queue always needs to unlock the waiters.
247
248 2005-06-28  Edward Hervey  <edward@fluendo.com>
249
250         * gst/gstpipeline.c: (gst_pipeline_send_event): 
251         Wheen a seek was successful on a pipeline, set the stream_time to the
252         seek offset in order to have a synchronized stream_time.
253
254 2005-06-28  Wim Taymans  <wim@fluendo.com>
255
256         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
257         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
258         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
259         (gst_proxy_pad_do_fixatecaps):
260         Call wrapper function instead of just calling the function
261         pointers. This takes care of any locking and whatmore.
262
263 2005-06-28  Wim Taymans  <wim@fluendo.com>
264
265         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
266         (gst_pad_pull_range):
267         * gst/gstpad.h:
268         CONNECTED -> LINKED.
269
270 2005-06-28  Andy Wingo  <wingo@pobox.com>
271
272         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
273         source-munging commit!!!
274
275         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
276         (gst_object_sink): Take gpointer arguments, not GstObject --
277         avoids casts. Like GLib.
278
279         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
280         activate.
281
282 2005-06-27  Andy Wingo  <wingo@pobox.com>
283
284         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
285         remaining buffer.
286
287         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
288         returns a sorted copy of the trace list.
289         (gst_alloc_trace_print_live): New API, only prints traces with
290         live objects. Sort the list.
291         (gst_alloc_trace_print_all): Sort the list.
292         (gst_alloc_trace_print): Align columns.
293
294         * gst/elements/gstttypefindelement.c:
295         * gst/elements/gsttee.c:
296         * gst/base/gstbasesrc.c:
297         * gst/base/gstbasesink.c:
298         * gst/base/gstbasetransform.c:
299         * gst/gstqueue.c: Adapt for pad activation changes.
300
301         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
302         sched.
303         (gst_pipeline_dispose): Drop ref on sched.
304
305         * gst/gstpad.c (gst_pad_init): Set the default activate func.
306         (gst_pad_activate_default): Push mode by default.
307         (pre_activate_switch, post_activate_switch): New stubs, things to
308         do before and after switching activation modes on pads.
309         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
310         the pad's activate function to choose which mode to activate.
311         Shortcut on deactivation and call the right function directly.
312         (gst_pad_activate_pull): New API, (de)activates a pad in pull
313         mode.
314         (gst_pad_activate_push): New API, same for push mode.
315         (gst_pad_set_activate_function) 
316         (gst_pad_set_activatepull_function) 
317         (gst_pad_set_activatepush_function): Setters for new API.
318
319         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
320         Trace all miniobjects.
321         (gst_mini_object_make_writable): Unref the arg if we copy, like
322         gst_caps_make_writable.
323
324         * gst/gstmessage.c (_gst_message_initialize): No trace init.
325
326         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
327         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
328         Adapt for new pad API.
329
330         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
331
332         * gst/gstelement.h:
333         * gst/gstelement.c (gst_element_iterate_src_pads) 
334         (gst_element_iterate_sink_pads): New API functions.
335         
336         * gst/gstelement.c (iterator_fold_with_resync): New utility,
337         should fold into gstiterator.c in some form.
338         (gst_element_pads_activate): Simplified via use of fold and
339         delegation of decisions to gstpad->activate.
340
341         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
342         help in debugging.
343
344         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
345         class once in init, like gstmessage. Didn't run into this issue
346         but it seems correct. Don't initialize a trace, gstminiobject does
347         that.
348
349         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
350         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
351         to the bus.
352         (assert_live_count): New util function, uses alloc traces to check
353         cleanup.
354
355         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
356         To be modified when unlink drops the internal pad.
357
358 2005-06-27  Wim Taymans  <wim@fluendo.com>
359
360         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
361         (gst_bin_change_state):
362         Cleanup the get_state() function a little, make sure it
363         iterates the same set of elements.
364         Added stub iterate_state_order().
365
366 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
367
368         * docs/gst/gstreamer-docs.sgml:
369         * docs/gst/gstreamer-sections.txt:
370         * docs/gst/gstreamer.types:
371         * docs/gst/tmpl/gstbasesink.sgml:
372         * docs/gst/tmpl/gstbasesrc.sgml:
373         * docs/gst/tmpl/gstbasetransform.sgml:
374         * docs/gst/tmpl/gstelement.sgml:
375         * docs/gst/tmpl/gstiterator.sgml:
376         * gst/base/gstbasesrc.c:
377         * gst/base/gstbasesrc.h:
378         * gst/base/gstbasetransform.h:
379         * gst/gstelement.c:
380         * gst/gstiterator.h:
381           adding basetransform and iterator docs
382
383 2005-06-27  Andy Wingo  <wingo@pobox.com>
384
385         * docs/design/part-activation.txt: Notes on how activation should
386         work -- not quite implemented yet.
387
388 2005-06-25  Wim Taymans  <wim@fluendo.com>
389
390         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
391         At least get the chain function correct, needs more
392         fixing.
393
394 2005-06-25  Wim Taymans  <wim@fluendo.com>
395
396         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
397         (gst_basesink_handle_object), (gst_basesink_event),
398         (gst_basesink_do_sync), (gst_basesink_handle_event),
399         (gst_basesink_change_state):
400         * gst/gsttask.h:
401         Right, two problems here: ghostpads don't take locks and
402         glib _rec_mutex_lock_full() with depth==0 still locks.
403         Catch illegal locking and g_warn them.
404
405 2005-06-25  Wim Taymans  <wim@fluendo.com>
406
407         * check/states/sinks.c: (START_TEST), (gst_object_suite):
408         Have to check for completion now...
409
410 2005-06-25  Wim Taymans  <wim@fluendo.com>
411
412         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
413         (gst_basesink_handle_object), (gst_basesink_event),
414         (gst_basesink_do_sync), (gst_basesink_handle_event),
415         (gst_basesink_change_state):
416         * gst/gstpad.h:
417         Unlock STREAM_LOCK whatever the recursion was.
418
419 2005-06-25  Wim Taymans  <wim@fluendo.com>
420
421         * gst/base/gstbasesink.c: (gst_basesink_set_property),
422         (gst_basesink_preroll_queue_empty),
423         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
424         (gst_basesink_event), (gst_basesink_do_sync),
425         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
426         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
427         (gst_basesink_change_state):
428         Reworked the base sink, handle event and buffer serialisation
429         correctly and removed possible deadlock.
430         Handle EOS correctly.
431
432 2005-06-25  Wim Taymans  <wim@fluendo.com>
433
434         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
435         (gst_pipeline_change_state):
436         * tools/gst-launch.c: (check_intr), (event_loop), (main):
437         Allow elements to post EOS in the state change function.
438         Fix up -launch, make it exit the poll loop when the
439         pipeline actually changed state.
440         Fix up warning parsing in -launch.
441
442 2005-06-25  Wim Taymans  <wim@fluendo.com>
443
444         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
445         (gst_tee_sink_activate):
446         Core takes STREAM_LOCK for us now.
447
448 2005-06-25  Wim Taymans  <wim@fluendo.com>
449
450         * gst/gstelement.c: (gst_element_get_state_func),
451         (gst_element_set_state):
452         * gst/gstelement.h:
453         * gst/gstmessage.c: (gst_message_parse_error),
454         (gst_message_parse_warning):
455         Keep track of current target state while performing a state
456         change so that subclasses can do something interesting.
457         Fix parsing of warning/error messages when GError is NULL.
458
459 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
460
461         * docs/gst/Makefile.am:
462         * docs/gst/gstreamer-docs.sgml:
463         * docs/gst/gstreamer-sections.txt:
464         * docs/gst/gstreamer.types:
465         * docs/gst/tmpl/gstbasesink.sgml:
466         * docs/gst/tmpl/gstbasesrc.sgml:
467         * docs/gst/tmpl/gstbin.sgml:
468         * docs/gst/tmpl/gstcompat.sgml:
469         * docs/gst/tmpl/gstfakesink.sgml:
470         * docs/gst/tmpl/gstfakesrc.sgml:
471         * docs/gst/tmpl/gstfilesink.sgml:
472         * docs/gst/tmpl/gstfilesrc.sgml:
473         * docs/gst/tmpl/gstindex.sgml:
474         * docs/manual/appendix-quotes.xml:
475         * gst/base/gstbasesrc.h:
476         * gst/elements/gstfakesrc.h:
477         * gst/gstmessage.h:
478           start pulling in base classes and elements in our docs
479
480 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
481
482         * docs/gst/Makefile.am:
483         * docs/libs/Makefile.am:
484           fixed make distcheck with gtk-doc 1.3
485
486 2005-06-23  Wim Taymans  <wim@fluendo.com>
487
488         * gst/gstelement.c: (gst_element_get_state_func),
489         (gst_element_set_state), (gst_element_change_state):
490         When the state did not change, also report NO_PREROLL
491         when it matters.
492
493 2005-06-23  Wim Taymans  <wim@fluendo.com>
494
495         * gst/gstpad.c: (gst_pad_event_default):
496         * gst/gstqueue.c: (gst_queue_loop):
497         No unsafe task pausing please.
498
499 2005-06-23  Wim Taymans  <wim@fluendo.com>
500
501         * gst/schedulers/threadscheduler.c:
502         (gst_thread_scheduler_task_start),
503         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
504         Ref the task before pushing it on the threadpool. This
505         makes sure that we have a ref when the threadfunction is
506         actually called.
507
508 2005-06-23  Andy Wingo  <wingo@pobox.com>
509
510         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
511         offset is greater than the file's size.
512
513         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
514         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
515         * gst/gstobject.c (gst_object_class_init): Make the class lock
516         recursive. Wim won't let me drop deep_notify. Decodebin works
517         again, whoopdy doo.
518
519         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
520         internal pad, and hacks accordingly. Doesn't do it on the target
521         pad because we change its caps. Probably catches all cases of
522         interest tho.
523         (gst_ghost_pad_set_property): Connect to notify::caps as
524         appropritate.
525
526         * tests/network-clock.scm (plot-simulation): Pipe data to the
527         elite python skript.
528
529         * tests/network-clock-utils.scm (define-parameter): New macro,
530         defines a parameter that can be set via the command line.
531         (set-parameter!, parse-parameter-arguments): Command line args
532         parser.
533
534         * tests/plot-data: Simple matplotlib-based plotter, takes input on
535         stdin.
536
537 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
538
539         * gst/elements/gsttypefindelement.c:
540         (gst_type_find_element_handle_event):
541           Don't restart typefinding on a discont.
542         * gst/gstelement.c: (gst_element_set_state):
543           Debug spelling fix.
544         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
545           Allow changing mode of an active pad.
546           Debug output fixes.
547         * gst/registries/gstlibxmlregistry.c: (load_feature):
548           Don't cast a static pad template to a normal pad template.
549
550 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
551
552         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
553         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
554           remove gst_strtoll completely, since it didn't actually do
555           anything more than what g_ascii_strtoull already does.
556           check for range errors when deserializing
557           do a cast for the unsigned cases; but further fixing needs
558           a decision on what the interpretation of "(int)" and
559           deserialization should be for values that fall outside the
560           type's boundaries (ie, refuse, or interpret as casting)
561
562 2005-06-23  Wim Taymans  <wim@fluendo.com>
563
564         * check/Makefile.am:
565         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
566         * docs/design/part-live-source.txt:
567         * docs/design/part-states.txt:
568         * gst/base/gstbasesrc.c: (gst_basesrc_init),
569         (gst_basesrc_set_live), (gst_basesrc_is_live),
570         (gst_basesrc_get_range), (gst_basesrc_activate),
571         (gst_basesrc_change_state):
572         * gst/base/gstbasesrc.h:
573         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
574         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
575         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
576         * gst/gstelement.c: (gst_element_get_state_func),
577         (gst_element_set_state):
578         * gst/gstelement.h:
579         * gst/gsttypes.h:
580         * tools/gst-launch.c: (event_loop), (main):
581         Added support for live sources and other elements that
582         cannot do preroll.
583         Updated design docs, added live-source design doc.
584         Implemented live source functionality in basesrc
585         Fix error condition in _bin_get_state()
586         Implement live source handling in -launch.
587         Added check for live sources.
588         Fixed case in GstBin where elements were changed state
589         multiple times.
590
591
592 2005-06-23  Andy Wingo  <wingo@pobox.com>
593
594         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
595         borken refcounting.
596
597         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
598         gst_caps_replace takes care of this for us.
599
600         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
601         gst_pad_set_caps on the target, not just its setcaps() function.
602
603         * tests/network-clock.scm: 
604         * tests/network-clock-utils.scm: A network clock simulator.
605         Something of an algorithmic testbed before doing something in C.
606
607 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
608
609         * check/Makefile.am:
610         * check/gst/capslist.h:
611           copy over from 0.8, and add two with bitmasks specified with
612           (int) 0xFF...
613         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
614           add test to parse everything from capslist.h
615         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
616         (main):
617           add test for structure deserialization
618         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
619           add tests for deserialization of strings to int types
620         * gst/gststructure.c: (gst_structure_nth_field_name):
621         * gst/gststructure.h:
622           add a way to get the name of a field referenced by index
623         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
624           instead of checking if the resulting long long lies between
625           min and max, we check if the long long would fit into
626           a number of bytes for the final type.
627           This fixes cases where a string represents 2^32 - 1, which
628           when cast to int would be the (valid) -1, but is bigger than
629           G_MAXINT
630
631 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
632
633         * gst/parse/grammar.y:
634           add a log line for type deserialization
635
636 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
637
638         * check/gst/gstvalue.c: (START_TEST):
639         * gst/gstvalue.c: (gst_value_deserialize):
640           return long long, not int, so gint64 deserialization actually
641           works.  Is there any flag that makes the compiler check this ?
642           Fixes #308559
643
644 2005-06-22  Wim Taymans  <wim@fluendo.com>
645
646         * gst/gstbuffer.h:
647         Added convenience macros for setting buffers in GValue.
648
649 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
650
651         * check/gst/.cvsignore:
652         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
653           add a test deserializing int64, and comment part out because
654           it fails, yay !
655
656 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
657
658         * check/Makefile.am:
659         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
660         * testsuite/Makefile.am:
661         * testsuite/caps/Makefile.am:
662         * testsuite/caps/value_serialize.c:
663         * testsuite/test_gst_init.c:
664           move a value_serialize test over
665
666 2005-06-20  Wim Taymans  <wim@fluendo.com>
667
668         * gst/gstpad.c:
669         Small doc updates.
670         
671         * gst/gstvalue.c: (gst_value_compare_buffer),
672         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
673         (gst_value_compare_flags), (gst_value_serialize_flags),
674         (gst_value_deserialize_flags), (_gst_value_initialize):
675         Fix serialisation of buffers, they are not boxed types anymore
676
677 2005-06-20  Wim Taymans  <wim@fluendo.com>
678
679         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
680         Testcase to show error in buffer-on-caps serialisation.
681
682 2005-06-20  Andy Wingo  <wingo@pobox.com>
683
684         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
685         will be adding to later.
686
687         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
688         if its socks fill with rocks.
689         (gst_system_clock_obtain): Set the name on object construction.
690         Avoid double-checked locking.
691
692 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
693
694         * gst/gsturi.c: (gst_element_make_from_uri):
695           Fix potential endless loop.
696
697 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
698
699         * check/Makefile.am:
700           add gsttag
701         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
702         (main):
703           move over from testsuite dir and clean up
704         * configure.ac:
705         * gst/gsttag.c:
706         * testsuite/Makefile.am:
707         * testsuite/tags/.cvsignore:
708         * testsuite/tags/Makefile.am:
709         * testsuite/tags/merge.c:
710           remove testsuite/tags
711
712 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
713
714         * docs/gst/gstreamer-sections.txt:
715         * docs/gst/tmpl/gstenumtypes.sgml:
716         * win32/gstenumtypes.c:
717           clean up documentation build a little
718
719 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
720
721         * check/gstcheck.h:
722           add macros for checking refcounts on objects and caps
723         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
724           add some more unit tests
725         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
726         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
727           fix leaked refcounts (I hope :)) so unittest works
728         * gst/gstpad.h:
729           whitespace removal
730
731 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
732
733         * configure.ac: back to HEAD
734
735 === release 0.9.1 ===
736
737 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
738
739         * NEWS:
740         * RELEASE:
741           updated
742
743 2005-06-17  Andy Wingo  <wingo@pobox.com>
744
745         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
746         assert; it's always possible that the pad gets deactivated in
747         between the checks in gstpad.c and the implementation. Rely on
748         finish_preroll() to return a FLUSHING or similar instead of on the
749         assert.
750         
751         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
752         clock and post an EOS message if we come out of finish_preroll in
753         the playing state.
754
755 2005-06-16  David Schleef  <ds@schleef.org>
756
757         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
758         (gst_capsfilter_set_property): Allow NULL as possible value
759         for filter_caps property, indicating GST_CAPS_ANY.
760
761 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
762
763         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
764           fix debug output
765         * gst/schedulers/Makefile.am:
766           use libgst prefix
767         * gstreamer.spec.in:
768           fix spec for it
769
770 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
771
772         * gstreamer.spec.in:
773           clean up
774
775 2005-06-08  Andy Wingo  <wingo@pobox.com>
776
777         * gst/gstutils.c: RPAD fixes all around.
778         (gst_element_link_pads): Refcounting fixes.
779
780         * tools/gst-inspect.c:
781         * tools/gst-xmlinspect.c:
782         * parse/grammar.y:
783         * gst/base/gsttypefindhelper.c:
784         * gst/base/gstbasesink.c:
785         * gst/gstqueue.c: RPAD fixes.
786
787         * gst/gstghostpad.h:
788         * gst/gstghostpad.c: New ghost pad implementation as full proxy
789         pads. The tricky thing is they provide both source and sink
790         interfaces, since they proxy the internal pad for the external
791         pad, and vice versa. Implement with lower-level ProxyPad objects,
792         with the interior proxy pad as a child of the exterior ghost pad.
793         Should write a doc on this.
794         
795         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
796         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
797         gst_object API.
798         
799         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
800         pads are real pads. No ghost pads in this file. Not documenting
801         the myriad s/RPAD/PAD/ and REALIZE fixes.
802         (gst_pad_class_init): Add properties for "direction" and
803         "template". Both are construct-only, so they can't change during
804         the life of the pad. Fixes properly deriving from GstPad.
805         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
806         derived objects, just set properties when creating the objects via
807         g_object_new.
808         (gst_pad_get_parent): Implement as a function, return NULL if the
809         parent is not an element.
810         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
811         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
812         
813         * gst/gstobject.c (gst_object_class_init): Make name a construct
814         property. Don't set it in the object init.
815
816         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
817         with UNKNOWN direction.
818         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
819         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
820         (gst_element_remove_pad): Remove ghost-pad special cases.
821         (gst_element_pads_activate): Remove rpad cruft.
822
823         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
824         catch the pad's-parent-not-an-element case.
825
826         * gst/gst.h: Include gstghostpad.h.
827
828         * gst/gst.c (init_post): No more real, ghost pads.
829
830         * gst/Makefile.am: Add gstghostpad.[ch].
831
832         * check/Makefile.am:
833         * check/gst/gstbin.c:
834         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
835         into a bin creates ghost pads, and that the refcounts are right.
836         Partly moved from gstbin.c.
837
838 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
839
840         * check/gst-libs/.cvsignore:
841         * check/gst/.cvsignore:
842         * check/pipelines/.cvsignore:
843           ignore more
844         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
845         (START_TEST), (cleanup_suite), (main):
846           add some tests related to cleanup after running pipelines
847
848 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
849
850         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
851           add a testsuite for GstBuffer
852
853 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
854
855         * gst/gstminiobject.h:
856           add defines for accessing the refcount
857
858 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
859
860         * Makefile.am: added support for html unit test coverage reports
861
862 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
863
864         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
865           Free existing caps if the capsfilter changes. Add a FIXME about
866           setting those caps on the pads.
867
868         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
869           Before adding a ghost pad to a parent bin, check that there isn't
870           already one for the element on the bin. Prevents infinite recursion
871           when using decodebin in parse pipelines. Andy says he'll rewrite the
872           way this works anyway, so ignore the hack.
873
874 2005-06-02  Andy Wingo  <wingo@pobox.com>
875
876         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
877         file size, pass it on to the type find helper.
878
879         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
880         segment_start and segment_end properly according to the seek
881         method. Segment_end is still a bit flaky because offset can be
882         negative for CUR and END cases, but it takes -1 as an "unset"
883         value.
884
885 2005-06-02  Wim Taymans  <wim@fluendo.com>
886
887         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
888         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
889         (gst_basesink_activate):
890         * gst/base/gstbasesink.h:
891         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
892         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
893         (gst_pad_query), (gst_pad_start_task):
894         * gst/gstpad.h:
895         * gst/gstqueue.c: (gst_queue_bufferalloc),
896         (gst_queue_handle_sink_event), (gst_queue_chain):
897         Bufferalloc: return GstFlowReturn to more accuratly report
898         why allocation failed.
899
900 2005-06-02  Wim Taymans  <wim@fluendo.com>
901
902         * gst/gstpipeline.c: (gst_pipeline_send_event):
903         Take snapshot of state without blocking.
904
905 2005-06-02  Wim Taymans  <wim@fluendo.com>
906
907         * docs/design/part-TODO.txt:
908         * docs/design/part-caps.txt:
909         * docs/design/part-clocks.txt:
910         * docs/design/part-negotiation.txt:
911         * docs/design/part-preroll.txt:
912         Small doc updates 
913
914 2005-05-30  Wim Taymans  <wim@fluendo.com>
915
916         * gst/elements/gstidentity.c: (gst_identity_event),
917         (gst_identity_transform), (gst_identity_get_property):
918         Protect last_message property as it is accessed from
919         multiple threads.
920
921 2005-05-30  Wim Taymans  <wim@fluendo.com>
922
923         * gst/gstelement.c: (gst_element_init),
924         (gst_element_pads_activate), (gst_element_change_state):
925         Slicker pad activation code.
926
927 2005-05-30  Wim Taymans  <wim@fluendo.com>
928
929         * gst/Makefile.am:
930         * gst/gstelement.h:
931         * gst/gstelementfactory.h:
932         * gst/gsttypes.h:
933         Move elementfactory methods to separate .h file.
934
935 2005-05-30  Wim Taymans  <wim@fluendo.com>
936
937         * docs/design/part-overview.txt:
938         * gst/gstsystemclock.h:
939         Small typo fixes, doc updates.
940
941 2005-05-30  Wim Taymans  <wim@fluendo.com>
942
943         * gst/gst.c: (gst_init_get_popt_table), (init_post),
944         (init_popt_callback):
945         Remove cpu-opt flag.
946
947 2005-05-30  Wim Taymans  <wim@fluendo.com>
948
949         * gst/gstbuffer.c: (gst_subbuffer_finalize),
950         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
951         * gst/gstbuffer.h:
952         Avoid typechecking in places where not needed.
953         Added accessor for malloc_data.
954
955 2005-05-30  Wim Taymans  <wim@fluendo.com>
956
957         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
958         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
959         (gst_pad_configure_sink), (gst_pad_configure_src),
960         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
961         (gst_pad_start_task):
962         Propagate errors from _set_caps() in configure_src/sink
963         functions instead of returning TRUE.
964         FLUSH events can travel up and downstream
965
966
967 2005-05-30  Wim Taymans  <wim@fluendo.com>
968
969         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
970         (gst_basesink_activate):
971         Handle EOS in preroll.
972
973 2005-05-30  Wim Taymans  <wim@fluendo.com>
974
975         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
976         (gst_queue_loop), (gst_queue_handle_src_event):
977         Remove old pieces of code
978         Flushing the queue in an upstream event is a very bad idea.
979
980 2005-05-26  Andy Wingo  <wingo@pobox.com>
981
982         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
983         gst_value_set_mini_object so as to add a ref on the object (which
984         will be removed when the value is unset).
985
986         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
987         arg type in ::handoff.
988
989         * gst/gstelement.c (gst_element_change_state): Also deactivate
990         pads in READY->NULL, just in case the element didn't make it to
991         PAUSED. Wingo tested, Wim approved.
992
993 2005-05-26  Wim Taymans  <wim@fluendo.com>
994
995         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
996         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
997         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
998         A flushing pad cannot be used to alloc_buffer from.
999
1000 2005-05-26  Wim Taymans  <wim@fluendo.com>
1001
1002         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
1003         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
1004         (gst_bus_source_dispatch), (gst_bus_source_finalize),
1005         (gst_bus_create_watch), (gst_bus_add_watch_full):
1006         * gst/gstbus.h:
1007         Implement a real GSource and use g_main_context_wakeup() to
1008         signal new messages instead of the socketpair.
1009
1010 2005-05-25  Wim Taymans  <wim@fluendo.com>
1011
1012         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
1013         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
1014         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1015         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
1016         (gst_pad_send_event), (gst_pad_start_task):
1017         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
1018         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
1019         (gst_queue_sink_activate), (gst_queue_src_activate),
1020         (gst_queue_change_state):
1021         * gst/gstqueue.h:
1022         Fix state changes for non sinks. We now change sinks, then elements
1023         with unconnected srcpads, then the rest.
1024         More efficient queue unlocking in flush and state changes.
1025         Set the pad activate mode even if it does not have an activate
1026         function.
1027
1028 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1029
1030         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
1031           Don't go in pull mode for non-seekable sources.
1032         * gst/elements/gsttypefindelement.h:
1033         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
1034         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
1035         (free_entry), (stop_typefinding),
1036         (gst_type_find_element_handle_event), (find_peek),
1037         (gst_type_find_element_chain), (do_pull_typefind),
1038         (gst_type_find_element_change_state):
1039           Allow typefinding (w/o seeking) in push-mode, simplified version
1040           of what was in 0.8.
1041         * gst/gstutils.c: (gst_buffer_join):
1042         * gst/gstutils.h:
1043           gst_buffer_join() from 0.8.
1044
1045 2005-05-25  Wim Taymans  <wim@fluendo.com>
1046
1047         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1048         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
1049         (gst_pad_send_event), (gst_pad_start_task):
1050         Disable attempt at mode switching until it is figured out.
1051
1052 2005-05-25  Wim Taymans  <wim@fluendo.com>
1053
1054         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
1055         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
1056         (gst_basesink_finish_preroll), (gst_basesink_chain),
1057         (gst_basesink_loop), (gst_basesink_activate),
1058         (gst_basesink_change_state):
1059         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
1060         (gst_basesrc_get_range), (gst_basesrc_loop),
1061         (gst_basesrc_activate):
1062         * gst/elements/gsttee.c: (gst_tee_sink_activate):
1063         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
1064         (gst_real_pad_init), (gst_real_pad_set_property),
1065         (gst_real_pad_get_property), (gst_pad_set_active),
1066         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
1067         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
1068         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
1069         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
1070         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1071         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
1072         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
1073         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1074         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
1075         (gst_pad_stop_task):
1076         * gst/gstpad.h:
1077         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
1078         (gst_queue_loop), (gst_queue_src_activate):
1079         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
1080         (gst_task_get_state):
1081         * gst/gsttask.h:
1082         * gst/schedulers/threadscheduler.c:
1083         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
1084         Implement gst_pad_pause/start/stop_task(), take STREAM lock
1085         in task function.
1086         Remove ACTIVE pad flag, use FLUSHING everywhere
1087         Added _pad_chain(), _pad_get_range() to call chain/getrange 
1088         functions.
1089         Add locks around IS_FLUSHING when reading.
1090         Take STREAM lock in chain(), get_range() functions so plugins
1091         don't need to take it anymore.
1092         
1093
1094
1095 2005-05-25  Wim Taymans  <wim@fluendo.com>
1096
1097         * tools/gst-launch.c: (event_loop):
1098         Unref message after using its contents instead of
1099         before.
1100
1101 2005-05-24  Wim Taymans  <wim@fluendo.com>
1102
1103         * docs/design/draft-ghostpads.txt:
1104         * docs/design/draft-push-pull.txt:
1105         * docs/design/draft-query.txt:
1106         * docs/design/part-overview.txt:
1107         Docs updates, added general overview doc.
1108
1109 2005-05-21  David Schleef  <ds@schleef.org>
1110
1111         * docs/gst/tmpl/old/GstBin.sgml:
1112         * docs/gst/tmpl/old/GstBuffer.sgml:
1113         * docs/gst/tmpl/old/GstCaps.sgml:
1114         * docs/gst/tmpl/old/GstClock.sgml:
1115         * docs/gst/tmpl/old/GstCompat.sgml:
1116         * docs/gst/tmpl/old/GstData.sgml:
1117         * docs/gst/tmpl/old/GstElement.sgml:
1118         * docs/gst/tmpl/old/GstEvent.sgml:
1119         * docs/gst/tmpl/old/GstIndex.sgml:
1120         * docs/gst/tmpl/old/GstStructure.sgml:
1121         * docs/gst/tmpl/old/GstTag.sgml:
1122         * docs/gst/tmpl/old/cothreads.sgml:
1123         * docs/gst/tmpl/old/cothreads_compat.sgml:
1124         * docs/gst/tmpl/old/gettext.sgml:
1125         * docs/gst/tmpl/old/gobject2gtk.sgml:
1126         * docs/gst/tmpl/old/grammar.tab.sgml:
1127         * docs/gst/tmpl/old/gst-i18n-app.sgml:
1128         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
1129         * docs/gst/tmpl/old/gst_private.sgml:
1130         * docs/gst/tmpl/old/gstaggregator.sgml:
1131         * docs/gst/tmpl/old/gstarch.sgml:
1132         * docs/gst/tmpl/old/gstatomic_impl.sgml:
1133         * docs/gst/tmpl/old/gstbufferstore.sgml:
1134         * docs/gst/tmpl/old/gstdata_private.sgml:
1135         * docs/gst/tmpl/old/gstdisksink.sgml:
1136         * docs/gst/tmpl/old/gstdisksrc.sgml:
1137         * docs/gst/tmpl/old/gstelementfactory.sgml:
1138         * docs/gst/tmpl/old/gstextratypes.sgml:
1139         * docs/gst/tmpl/old/gstfakesink.sgml:
1140         * docs/gst/tmpl/old/gstfakesrc.sgml:
1141         * docs/gst/tmpl/old/gstfdsink.sgml:
1142         * docs/gst/tmpl/old/gstfdsrc.sgml:
1143         * docs/gst/tmpl/old/gstfilesink.sgml:
1144         * docs/gst/tmpl/old/gstfilesrc.sgml:
1145         * docs/gst/tmpl/old/gsthttpsrc.sgml:
1146         * docs/gst/tmpl/old/gstidentity.sgml:
1147         * docs/gst/tmpl/old/gstindexfactory.sgml:
1148         * docs/gst/tmpl/old/gstmarshal.sgml:
1149         * docs/gst/tmpl/old/gstmd5sink.sgml:
1150         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
1151         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
1152         * docs/gst/tmpl/old/gstpadtemplate.sgml:
1153         * docs/gst/tmpl/old/gstpipefilter.sgml:
1154         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
1155         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
1156         * docs/gst/tmpl/old/gstshaper.sgml:
1157         * docs/gst/tmpl/old/gstspider.sgml:
1158         * docs/gst/tmpl/old/gstspideridentity.sgml:
1159         * docs/gst/tmpl/old/gststatistics.sgml:
1160         * docs/gst/tmpl/old/gsttee.sgml:
1161         * docs/gst/tmpl/old/gsttimecache.sgml:
1162         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
1163         * docs/gst/tmpl/old/gstxmlregistry.sgml:
1164         * docs/gst/tmpl/old/gthread-cothreads.sgml:
1165         * docs/gst/tmpl/old/types.sgml:
1166           I didn't intend to add these or check them in.
1167
1168 2005-05-19  David Schleef  <ds@schleef.org>
1169
1170         * configure.ac: Use -no-common everywhere.  In a sane world, it
1171           would be the default in libtool, because without it, you can't
1172           build DLLs on Windows.
1173         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
1174         * docs/gst/gstreamer-sections.txt:
1175         * docs/gst/tmpl/gstcpu.sgml:
1176         * docs/gst/tmpl/gstdata.sgml:
1177         * docs/gst/tmpl/gstthread.sgml:
1178
1179 2005-05-19  David Schleef  <ds@schleef.org>
1180
1181         * gst/gstminiobject.c: (gst_value_set_mini_object),
1182         (gst_value_take_mini_object), (gst_value_get_mini_object):
1183         * gst/gstminiobject.h: Add GValue set/get functions.
1184
1185 2005-05-19  Wim Taymans  <wim@fluendo.com>
1186
1187         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
1188         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
1189         (gst_subbuffer_init), (gst_buffer_is_span_fast):
1190         * gst/gstbuffer.h:
1191         * gst/gstbus.c: (gst_bus_post):
1192         * gst/gstelement.c: (gst_element_get_random_pad):
1193         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
1194         Make subbufer unref the parent in finalize.
1195         some more debugging info.
1196
1197
1198 2005-05-19  Wim Taymans  <wim@fluendo.com>
1199
1200         * gst/base/gstbasesink.c: (gst_basesink_class_init),
1201         (gst_basesink_init), (gst_basesink_finalize),
1202         (gst_basesink_activate), (gst_basesink_change_state):
1203         Don't free preroll queue too early.
1204
1205 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1206
1207         * gst/Makefile.am:
1208         * gst/ROADMAP:
1209           Hi, I'm outdated. Please shoot me.
1210
1211 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1212
1213         * gst/gstpipeline.c: (gst_pipeline_send_event):
1214           Do not access variables after they have been deleted.
1215
1216 2005-05-19  Wim Taymans  <wim@fluendo.com>
1217
1218         * tools/gst-inspect.c: (print_plugin_features):
1219         A plugin feature does unfortunatly not use the
1220         object name yet...
1221
1222 2005-05-18  Wim Taymans  <wim@fluendo.com>
1223
1224         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
1225         Port _span() functions to new subbuffers.
1226
1227 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1228
1229         * gst/gstbin.c: (gst_bin_add_func):
1230           Fix clock settery in bins when adding kids after the clock has
1231           been selected.
1232
1233 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1234
1235         * gst/elements/gstidentity.c: (gst_identity_class_init):
1236           Workaround until signals support GstMiniObject.
1237
1238 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
1239
1240         * gst/gstbuffer.c:
1241         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
1242
1243 2005-05-18  Wim Taymans  <wim@fluendo.com>
1244
1245         * gst/base/Makefile.am:
1246         * gst/base/gstadapter.c: (gst_adapter_base_init),
1247         (gst_adapter_class_init), (gst_adapter_init),
1248         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
1249         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
1250         (gst_adapter_flush), (gst_adapter_available),
1251         (gst_adapter_available_fast):
1252         * gst/base/gstadapter.h:
1253         Ported and added adapter to the base classes.
1254
1255 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1256
1257         * gst/gst.c:
1258         * gst/gstmessage.c:
1259           Make sure the class is reffed/unreffed once before threads can be
1260           used.  Fixes #304551.
1261
1262 2005-05-17  Wim Taymans  <wim@fluendo.com>
1263
1264         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
1265         (gst_basesink_chain_unlocked), (gst_basesink_activate):
1266         * gst/gstminiobject.c: (gst_mini_object_get_type),
1267         (gst_mini_object_free):
1268         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
1269         (gst_pad_push), (gst_pad_push_event):
1270         * gst/gstqueue.c: (gst_queue_change_state):
1271         Don't queue buffers in basesink when we are flushing.
1272         Unref buffer when flushing in basesink.
1273         Flush queue when going to READY
1274         Unref buffer when _push() returns an error.
1275         Don't free MiniObject instance when refcount is incremented
1276         in _finalize() so that we can recover objects.
1277
1278 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1279
1280         * docs/manual/advanced-schedulers.xml:
1281         * docs/manual/appendix-checklist.xml:
1282         * docs/pwg/advanced-clock.xml:
1283         * docs/pwg/advanced-interfaces.xml:
1284         * docs/pwg/advanced-request.xml:
1285         * docs/pwg/advanced-types.xml:
1286         * docs/pwg/intro-preface.xml:
1287         * examples/plugins/example.c: (gst_example_get_type),
1288         (gst_example_class_init), (gst_example_chain),
1289         (gst_example_set_property), (gst_example_get_property),
1290         (gst_example_change_state), (plugin_init):
1291         * examples/plugins/example.h:
1292           small doc fixes
1293
1294 2005-05-17  Wim Taymans  <wim@fluendo.com>
1295
1296         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
1297         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
1298         * gst/gstqueue.c: (gst_queue_change_state):
1299         Clear queue when going to READY.
1300         Remove IN_SETCAPS flag too.
1301
1302 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
1303
1304         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
1305           Remove implicit cast from gboolean to GstElementStateReturn;
1306           make sure we still return failure in paused => ready case if
1307           the parent class fails to change state and our own stop 
1308           vfunc succeeds.
1309
1310 2005-05-17  Wim Taymans  <wim@fluendo.com>
1311
1312         * tools/gst-launch.c: (event_loop):
1313         Message was unreffed too soon.
1314
1315 2005-05-16  Andy Wingo  <wingo@pobox.com>
1316
1317         * gst/gstbin.c (sink_iterator_filter): Err... um...
1318
1319         * check/gst/gstbin.c (test_ghost_pads): New test for the
1320         ghosting-if-elements-not-in-same-bin behavior.
1321
1322 2005-05-16  David Schleef  <ds@schleef.org>
1323
1324         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
1325         accessing refcount directly.
1326
1327 2005-05-15  David Schleef  <ds@schleef.org>
1328
1329         * check/Makefile.am: remove GstData checks
1330         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
1331         * gst/Makefile.am: add miniobject, remove data
1332         * gst/gst.h: add miniobject, remove data
1333         * gst/gstdata.c: remove
1334         * gst/gstdata.h: remove
1335         * gst/gstdata_private.h: remove
1336         * gst/gsttypes.h: remove GstEvent and GstMessage
1337         * gst/gstelement.c: (gst_element_post_message): fix for API changes
1338         * gst/gstmarshal.list: change BOXED -> OBJECT
1339
1340         Implement GstMiniObject.
1341         * gst/gstminiobject.c:
1342         * gst/gstminiobject.h:
1343
1344         Modify to be subclasses of GstMiniObject.
1345         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
1346         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
1347         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
1348         (gst_subbuffer_get_type), (gst_subbuffer_init),
1349         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
1350         (gst_buffer_span):
1351         * gst/gstbuffer.h:
1352         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
1353         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
1354         (_gst_event_copy), (gst_event_new):
1355         * gst/gstevent.h:
1356         * gst/gstmessage.c: (_gst_message_initialize),
1357         (gst_message_get_type), (gst_message_class_init),
1358         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
1359         (gst_message_new), (gst_message_new_error),
1360         (gst_message_new_warning), (gst_message_new_tag),
1361         (gst_message_new_state_changed), (gst_message_new_application):
1362         * gst/gstmessage.h:
1363         * gst/gstprobe.c: (gst_probe_perform),
1364         (gst_probe_dispatcher_dispatch):
1365         * gst/gstprobe.h:
1366         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
1367         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
1368         (_gst_query_copy), (gst_query_new):
1369
1370         Update elements for GstData -> GstMiniObject changes
1371         * gst/gstquery.h:
1372         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
1373         (gst_queue_chain), (gst_queue_loop):
1374         * gst/elements/gstbufferstore.c:
1375         (gst_buffer_store_add_buffer_func),
1376         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
1377         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1378         (gst_fakesink_render):
1379         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
1380         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
1381         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
1382         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
1383         (gst_filesrc_create_read):
1384         * gst/elements/gstidentity.c: (gst_identity_class_init):
1385         * gst/elements/gsttypefindelement.c:
1386         (gst_type_find_element_src_event), (free_entry_buffers),
1387         (gst_type_find_element_handle_event):
1388         * libs/gst/dataprotocol/dataprotocol.c:
1389         (gst_dp_header_from_buffer):
1390         * libs/gst/dataprotocol/dataprotocol.h:
1391         * libs/gst/dataprotocol/dp-private.h:
1392
1393 2005-05-15  David Schleef  <ds@schleef.org>
1394
1395         * gst/elements/gstelements.c: Don't include headers that were
1396         just removed.
1397
1398 2005-05-15  David Schleef  <ds@schleef.org>
1399
1400         * gst/elements/Makefile.am: Remove some elements that don't
1401         need to be in the core (or even exist at all).
1402         * gst/elements/gstaggregator.c:
1403         * gst/elements/gstaggregator.h:
1404         * gst/elements/gstmd5sink.c:
1405         * gst/elements/gstmd5sink.h:
1406         * gst/elements/gstmultifilesrc.c:
1407         * gst/elements/gstmultifilesrc.h:
1408         * gst/elements/gstpipefilter.c:
1409         * gst/elements/gstpipefilter.h:
1410         * gst/elements/gstshaper.c:
1411         * gst/elements/gstshaper.h:
1412         * gst/elements/gststatistics.c:
1413         * gst/elements/gststatistics.h:
1414         * po/POTFILES.in: Remove above files.
1415
1416 2005-05-14  Andy Wingo  <wingo@pobox.com>
1417
1418         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
1419         so as to get the refs right.
1420         (sink_iterator_filter): New function, wraps bin_element_is_sink,
1421         unreffing objects that don't pass the filter.
1422
1423         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
1424         gst_element_set_bus.
1425         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
1426         normal cases, this will destroy the bus.
1427
1428         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
1429         object.
1430
1431         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
1432         has no sinks.
1433
1434 2005-05-13  Andy Wingo  <wingo@pobox.com>
1435
1436         * gst/gstutils.c (gst_element_link_pads): Instead of calling
1437         gst_pad_link, call pad_link_maybe_ghosting,
1438         (pad_link_maybe_ghosting): Links pads, making sure that the
1439         elements being linked are in the same bin.
1440         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
1441         Helpers for pad_link_maybe_ghosting.
1442
1443 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
1444
1445         * configure.ac:
1446           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
1447
1448 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
1449
1450         * docs/design/part-element-source.txt:
1451           Mention GstPushSrc
1452
1453 2005-05-12  Wim Taymans  <wim@fluendo.com>
1454
1455         * gst/base/gstbasesink.c: (gst_basesink_init),
1456         (gst_basesink_activate):
1457         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
1458         (gst_basesrc_is_seekable):
1459         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
1460         (bin_element_is_sink), (gst_bin_change_state):
1461         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
1462         * gst/gstelement.h:
1463         Identify sinks by their flag to avoid overly complicated
1464         checks (fow now).
1465         Do state changes even for elements not reachable from the
1466         sinks.
1467         BaseSink is a sink now :)
1468         Some more debugging info in the basesrc.
1469
1470
1471 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1472
1473         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
1474           Implement _query on a bin, similar to _send_event.
1475
1476 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
1477
1478         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
1479           Discont event offset format should be GST_FORMAT_BYTES,
1480           not GST_FORMAT_TIME.
1481
1482 2005-05-12  Wim Taymans  <wim@fluendo.com>
1483
1484         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
1485         Same fix as Ronald's but without the signal. 
1486
1487 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1488
1489         * gst/gstutils.c: (gst_element_query_position):
1490           No, an element is not a pad.
1491
1492 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1493
1494         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
1495         (gst_bin_get_state):
1496           If a child is removed from a bin while we remove the child from
1497           the bin and while we're retrieving its state, signal this to the
1498           get_state function so we abort the wait (instead of waiting for
1499           a timeout) and can immediately re-iterate over all other elements.
1500
1501 2005-05-12  Wim Taymans  <wim@fluendo.com>
1502
1503         * gst/base/Makefile.am:
1504         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
1505         (gst_basesrc_start):
1506         * gst/base/gstbasesrc.h:
1507         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
1508         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
1509         (gst_pushsrc_init), (gst_pushsrc_create):
1510         * gst/base/gstpushsrc.h:
1511         Added is_seekable to BaseSrc
1512         Added simple PushSrc.
1513
1514 2005-05-11  Wim Taymans  <wim@fluendo.com>
1515
1516         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
1517         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1518         (gst_element_link_pads), (gst_element_query_position),
1519         (gst_element_query_convert), (intersect_caps_func),
1520         (gst_pad_query_position), (gst_pad_query_convert):
1521         Fix refcounting in utils function.
1522         No point in trying to activate a pad when it's added, it could
1523         be added from the state change function and then we deadlock, the
1524         element has to decide what to do.
1525
1526 2005-05-10  Andy Wingo  <wingo@pobox.com>
1527
1528         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
1529         *all* the arguments.
1530
1531         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
1532         stream lock if it's a FLUSH_DONE; normal flushes don't get the
1533         lock (according to the docs -- if this is wrong change the docs).
1534
1535         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
1536         flush messages in the NULL state.
1537
1538         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
1539         message immediately and return.
1540         (gst_bus_set_flushing): New function. If a bus is flushing, it
1541         flushes out any queued messages and immediately unrefs new
1542         messages. This is so when an element goes to NULL, all of the
1543         unhandled messages coming from it can be freed, and their
1544         references to the element dropped. In other words: message source
1545         ref considered harmful :P
1546
1547         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
1548         we're finished with it.
1549
1550         * gst/gstmessage.c (gst_message_new_state_changed): 
1551
1552 2005-05-10  Wim Taymans  <wim@fluendo.com>
1553
1554         * gst/gstvalue.c: (gst_value_compare_flags),
1555         (gst_value_serialize_flags), (gst_value_deserialize_flags),
1556         (_gst_value_initialize):
1557         Added flags serialize/deserialize/compare code.
1558
1559 2005-05-09  Andy Wingo  <wingo@pobox.com>
1560
1561         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
1562         Intersect the peer's caps with our caps.
1563
1564 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1565
1566         * gst/base/gsttypefindhelper.c: (helper_find_peek):
1567         * gst/elements/gsttypefindelement.c: (find_peek):
1568           Handle negative offsets better. Fixes decodebin.
1569
1570 2005-05-09  Wim Taymans  <wim@fluendo.com>
1571
1572         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
1573         (gst_base_transform_event):
1574         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
1575         Implement accept_caps.
1576         Fix silly lock/unlock mismatch in base class.
1577
1578 2005-05-09  Wim Taymans  <wim@fluendo.com>
1579
1580         * docs/design/draft-push-pull.txt:
1581         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
1582         * gst/elements/gstfilesink.c: (gst_filesink_init),
1583         (gst_filesink_query):
1584         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
1585         (gst_type_find_handle_src_query), (find_element_get_length):
1586         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
1587         * gst/gstelement.h:
1588         * gst/gstmessage.c:
1589         * gst/gstmessage.h:
1590         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
1591         (gst_real_pad_get_caps_unlocked),
1592         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
1593         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1594         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
1595         (gst_real_pad_dispose), (gst_real_pad_finalize),
1596         (gst_pad_load_and_link), (gst_pad_save_thyself),
1597         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
1598         (gst_pad_check_pull_range), (gst_pad_pull_range),
1599         (gst_pad_template_get_type), (gst_pad_template_class_init),
1600         (gst_pad_template_init), (gst_pad_template_dispose),
1601         (name_is_valid), (gst_static_pad_template_get),
1602         (gst_pad_template_new), (gst_static_pad_template_get_caps),
1603         (gst_pad_template_get_caps), (gst_pad_set_element_private),
1604         (gst_pad_get_element_private), (gst_pad_start_task),
1605         (gst_pad_pause_task), (gst_pad_stop_task),
1606         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
1607         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
1608         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
1609         (gst_ghost_pad_new):
1610         * gst/gstpad.h:
1611         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
1612         (gst_query_new_position), (gst_query_set_position),
1613         (gst_query_parse_position), (gst_query_new_convert),
1614         (gst_query_set_convert), (gst_query_parse_convert):
1615         * gst/gstquery.h:
1616         * gst/gstqueryutils.c:
1617         * gst/gstqueryutils.h:
1618         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
1619         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
1620         (gst_queue_handle_src_query):
1621         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1622         (gst_element_query_position), (gst_element_query_convert),
1623         (intersect_caps_func), (gst_pad_query_position),
1624         (gst_pad_query_convert):
1625         * gst/gstutils.h:
1626         * tools/gst-inspect.c: (print_pad_info):
1627         * tools/gst-xmlinspect.c: (print_element_info):
1628         Remove old query functions. Ported old code.
1629         Added position/convert helper functions to gstutils.
1630         Reordered gstpad.c code, grouping relevant things.
1631         Remove gst_message_new(), always need to speficy a specific
1632         message.
1633
1634
1635 2005-05-09  Andy Wingo  <wingo@pobox.com>
1636
1637         * gst/gstiterator.h: Add some includes.
1638
1639         * gst/gstqueryutils.h: Include more headers.
1640
1641         * gst/gstpad.h:
1642         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
1643         some uses of gst_pad_query.
1644
1645         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
1646         NULL out parameters.
1647         (gst_query_new_position): New proc, allocates a new position
1648         query.
1649
1650         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
1651         gstqueryutils.c to the build.
1652
1653         * gst/gststructure.c (gst_structure_set_valist): Implement with
1654         the generic G_VALUE_COLLECT.
1655         
1656 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
1657
1658         * gst/Makefile.am: (gst_headers):
1659         Added gstqueryutils.h to the list of headers to install, that was
1660         a 'nachty' move wingo :)
1661
1662 2005-05-06  Andy Wingo  <wingo@pobox.com>
1663
1664         * gst/gstquery.h
1665         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
1666         GstData, init a memchunk.
1667         (standard_definitions): Add a few query types, deprecate a few.
1668         (gst_query_get_type): New proc.
1669         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
1670         implementation.
1671         (gst_query_new_application, gst_query_get_structure): New public
1672         procs.
1673
1674         * docs/design/draft-query.txt: Removed LINKS from the query types,
1675         because all the rest can be dispatched to other pads -- seemed
1676         ugly to have a query that couldn't be dispatched. internal_links
1677         is fine as a pad method.
1678
1679         * gst/gstpad.h: Add query2 as a pad method, add the new functions
1680         in gstpad.c, but maintain binary compatibility for the moment.
1681         Will fix before 0.9 is out.
1682
1683         * gst/gstqueryutils.c: 
1684         * gst/gstqueryutils.h: New files, implement 3 methods for each
1685         query type: parse_query, parse_response, and set. Probably need an
1686         allocator as well.
1687
1688         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
1689
1690         * gst/elements/gstfilesink.c (gst_filesink_query2):
1691         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
1692         query_types, and formats methods.
1693
1694         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
1695         (gst_pad_set_query2_function): New functions.
1696         (gst_real_pad_init): Set query2_default as the default query2
1697         function. Basically just dispatches to internally linked pads.
1698
1699         Needs review!
1700         
1701         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
1702         without using the atomic operations. Only one thread can possibly
1703         be accessing the data at this point. Changed so as to avoid
1704         gst_atomic operations.
1705
1706 2005-05-06  Wim Taymans  <wim@fluendo.com>
1707
1708         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
1709         Also set caps if we use the fallback buffer alloc.
1710
1711 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
1712
1713         * docs/gst/Makefile.am:
1714         * docs/gst/gstreamer-docs.sgml:
1715         * docs/gst/gstreamer-sections.txt:
1716         * docs/gst/tmpl/gstatomic.sgml:
1717         * docs/gst/tmpl/gstmemchunk.sgml:
1718         * testsuite/elements/struct_i386.h:
1719         * win32/GStreamer.vcproj:
1720         * win32/Makefile:
1721           Purge GstAtomic stuff from docs and win32 makefiles as well
1722
1723 2005-05-06  Wim Taymans  <wim@fluendo.com>
1724
1725         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
1726         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
1727         * gst/gstpad.c: (gst_pad_peer_get_caps):
1728         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
1729         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
1730         (gst_queue_src_activate), (gst_queue_change_state):
1731         * gst/gstqueue.h:
1732         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1733         (intersect_caps_func):
1734         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
1735         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
1736         Some fixes for the peer_get_caps() change.
1737
1738 2005-05-06  Wim Taymans  <wim@fluendo.com>
1739
1740         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1741         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
1742         (gst_basesink_activate):
1743         Actually do something with error codes returned from the push
1744         functions.
1745
1746 2005-05-06  Wim Taymans  <wim@fluendo.com>
1747
1748         * docs/design/part-element-sink.txt:
1749         * docs/design/part-element-source.txt:
1750         * gst/base/gstbasesink.c: (gst_basesink_class_init),
1751         (gst_basesink_event), (gst_basesink_activate):
1752         * gst/base/gstbasesink.h:
1753         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
1754         (gst_basesrc_activate):
1755         * gst/base/gstbasesrc.h:
1756         * gst/gstelement.c: (gst_element_pads_activate):
1757         Some more documentation.
1758         Fixed scheduling decision in _pads_activate().
1759
1760 2005-05-05  Andy Wingo  <wingo@pobox.com>
1761
1762         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
1763         the test suite.
1764
1765 2005-05-05  Wim Taymans  <wim@fluendo.com>
1766
1767         * gst/base/Makefile.am:
1768         * gst/base/gstbasesink.h:
1769         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1770         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
1771         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
1772         (gst_collectpads_class_init), (gst_collectpads_init),
1773         (gst_collectpads_finalize), (gst_collectpads_new),
1774         (gst_collectpads_set_function), (gst_collectpads_add_pad),
1775         (find_pad), (gst_collectpads_remove_pad),
1776         (gst_collectpads_is_active), (gst_collectpads_collect),
1777         (gst_collectpads_collect_range), (gst_collectpads_start),
1778         (gst_collectpads_stop), (gst_collectpads_peek),
1779         (gst_collectpads_pop), (gst_collectpads_available),
1780         (gst_collectpads_read), (gst_collectpads_flush),
1781         (gst_collectpads_chain):
1782         * gst/base/gstcollectpads.h:
1783         * gst/elements/Makefile.am:
1784         * gst/elements/gstelements.c:
1785         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1786         (gst_fakesink_get_times), (gst_fakesink_event),
1787         (gst_fakesink_preroll), (gst_fakesink_render):
1788         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1789         (gst_filesink_init), (gst_filesink_set_location),
1790         (gst_filesink_open_file), (gst_filesink_close_file),
1791         (gst_filesink_pad_query), (gst_filesink_event),
1792         (gst_filesink_render), (gst_filesink_change_state):
1793         * gst/elements/gstfilesink.h:
1794         Added object to help in making collect pad based elements.
1795         Ported filesink.
1796         Make event function in sink baseclass return gboolean.
1797
1798 2005-05-05  Wim Taymans  <wim@fluendo.com>
1799
1800         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
1801         (gst_bin_get_by_name):
1802         * gst/gstbuffer.h:
1803         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
1804         (gst_clock_finalize):
1805         * gst/gstdata.c: (gst_data_replace):
1806         * gst/gstdata.h:
1807         * gst/gstelement.c: (gst_element_request_pad),
1808         (gst_element_pads_activate):
1809         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
1810         (gst_object_unref):
1811         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1812         (gst_pad_set_checkgetrange_function),
1813         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
1814         (gst_pad_check_pull_range), (gst_pad_pull_range),
1815         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1816         (gst_pad_pause_task), (gst_pad_stop_task):
1817         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1818         (gst_element_request_pad), (gst_pad_proxy_getcaps):
1819         Fix name lookup in GstBin.
1820         Added _data_replace() function and _buffer_replace()
1821         Use finalize method to clean up clock.
1822         Fix refcounting on request pads.
1823         Fix pad schedule mode error.
1824         Some more object refcounting debug info,
1825
1826
1827 2005-05-04  Andy Wingo <wingo@pobox.com>
1828
1829         * check/Makefile.am:
1830         * docs/gst/tmpl/gstatomic.sgml:
1831         * docs/gst/tmpl/gstplugin.sgml:
1832         * gst/base/gstbasesink.c: (gst_basesink_activate):
1833         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
1834         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
1835         (gst_basesrc_query), (gst_basesrc_set_property),
1836         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
1837         (gst_basesrc_activate):
1838         * gst/base/gstbasesrc.h:
1839         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
1840         (gst_base_transform_src_activate):
1841         * gst/elements/gstelements.c:
1842         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1843         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1844         * gst/elements/gsttee.c: (gst_tee_sink_activate):
1845         * gst/elements/gsttypefindelement.c: (find_element_get_length),
1846         (gst_type_find_element_checkgetrange),
1847         (gst_type_find_element_activate):
1848         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
1849         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
1850         (gst_caps_load_thyself):
1851         * gst/gstelement.c: (gst_element_pads_activate),
1852         (gst_element_save_thyself), (gst_element_restore_thyself):
1853         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
1854         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
1855         * gst/gstpad.h:
1856         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
1857         (gst_xml_parse_file), (gst_xml_parse_memory),
1858         (gst_xml_get_element), (gst_xml_make_element):
1859         * gst/indexers/gstfileindex.c: (gst_file_index_load),
1860         (_file_index_id_save_xml), (gst_file_index_commit):
1861         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
1862         (read_enum), (load_pad_template), (load_feature), (load_plugin),
1863         (load_paths):
1864         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
1865         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
1866         * tools/gst-complete.c: (main):
1867         * tools/gst-compprep.c: (main):
1868         * tools/gst-inspect.c: (print_element_properties_info):
1869         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
1870         * tools/gst-xmlinspect.c: (print_element_properties):
1871         GCC 4 fixen.
1872         
1873 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
1874
1875         * gst/gstplugin.c: (gst_plugin_check_module),
1876         (gst_plugin_check_file), (gst_plugin_load_file):
1877             apply patch from #172526 to make register work on MacOSX
1878
1879 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1880
1881         * docs/gst/tmpl/gstconfig.sgml:
1882         * gst/gstconfig.h.in:
1883           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
1884         * testsuite/debug/printf_extension.c: (main):
1885           Do not use GST_PTR_FORMAT on pointers to types with
1886           sizeof < sizeof(gpointer).  Fixes test on 64-bit
1887         * testsuite/elements/property.h:
1888           use correct printf format
1889
1890 2005-05-02  Wim Taymans  <wim@fluendo.com>
1891
1892         * docs/design/draft-push-pull.txt:
1893         * docs/design/draft-query.txt:
1894         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
1895         (gst_basesrc_start):
1896         Added draft for new query API.
1897         Added draft for better selecting scheduling methods.
1898         Make basesrc ignore length if the subclass does not support
1899         it.
1900
1901 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1902
1903         * gst/Makefile.am:
1904           possible fixes for automake-1.5 - _LIBADD is reserved
1905
1906 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1907
1908         * docs/faq/Makefile.am:
1909         * docs/manual/Makefile.am:
1910         * docs/manuals.mak:
1911         * docs/pwg/Makefile.am:
1912         * gst/Makefile.am:
1913           possible fixes for automake-1.5
1914
1915 2005-04-28  Wim Taymans  <wim@fluendo.com>
1916
1917         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1918         (gst_basesink_pad_getcaps), (gst_basesink_init),
1919         (gst_basesink_do_sync):
1920         * gst/gstclock.c: (gst_clock_entry_new):
1921         * gst/gstevent.c: (gst_event_discont_get_value):
1922         * gst/gstpipeline.c: (pipeline_bus_handler),
1923         (gst_pipeline_change_state):
1924         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
1925         Better debugging of clocking info.
1926         Allow NULL values when getting discont values.
1927
1928 2005-04-27  Wim Taymans  <wim@fluendo.com>
1929
1930         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
1931         * check/gst/gstpad.c: (gst_pad_suite):
1932         Increase timeout for checks.
1933
1934 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1935
1936         * check/Makefile.am:
1937           fix the broken rule for cleanup.  Apparently this rule is
1938           only needed on FC2, so maybe this warrants further autotool
1939           inspection.
1940
1941 2005-04-26  Wim Taymans  <wim@fluendo.com>
1942
1943         * gst/gsttrashstack.h:
1944         Ooohh. a nasty one! After having a failed pop() from the stack,
1945         it's possible that the stack is empty. In that case, don't
1946         follow the NULL pointer.
1947
1948 2005-04-25  Wim Taymans  <wim@fluendo.com>
1949
1950         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1951         (gst_pad_set_checkgetrange_function),
1952         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
1953         (gst_pad_check_pull_range), (gst_pad_pull_range),
1954         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1955         (gst_pad_pause_task), (gst_pad_stop_task):
1956         * gst/gstplugin.c: (gst_plugin_load):
1957         * gst/gstplugin.h:
1958         Remove gst_library_load as it does more harm than good with
1959         the new g_module flags.
1960         Revert bogus caps template check in pad linking, pad caps
1961         are important when linking not the template, which is more
1962         general than the current caps.
1963
1964 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1965
1966         * gst/autoplug/.cvsignore:
1967         * gst/autoplug/Makefile.am:
1968         * gst/autoplug/gstsearchfuncs.c:
1969         * gst/autoplug/gstsearchfuncs.h:
1970         * gst/autoplug/gstspider.c:
1971         * gst/autoplug/gstspider.h:
1972         * gst/autoplug/gstspideridentity.c:
1973         * gst/autoplug/gstspideridentity.h:
1974         * gst/autoplug/spidertest.c:
1975           Die, spider, die.
1976
1977 2005-04-25  Wim Taymans  <wim@fluendo.com>
1978
1979         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1980         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
1981         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
1982         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
1983         * gst/gstpad.h:
1984         Added stubs for unimplemented functions. 
1985
1986 2005-04-24  David Schleef  <ds@schleef.org>
1987
1988         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
1989         please fix.
1990
1991 2005-04-24  David Schleef  <ds@schleef.org>
1992
1993         Convert everything from GstAtomicInt to g_atomic_int_*, and
1994         remove gstatomic.
1995         * gst/Makefile.am:
1996         * gst/gstatomic.c:
1997         * gst/gstatomic.h:
1998         * gst/gstatomic_impl.h:
1999         * gst/gstbuffer.c:
2000         * gst/gstcaps.c:
2001         * gst/gstcaps.h:
2002         * gst/gstclock.c:
2003         * gst/gstclock.h:
2004         * gst/gstdata.c:
2005         * gst/gstdata.h:
2006         * gst/gstdata_private.h:
2007         * gst/gstevent.c:
2008         * gst/gstinfo.c:
2009         * gst/gstinfo.h:
2010         * gst/gstmessage.c:
2011         * gst/gstobject.c:
2012         * gst/gstobject.h:
2013         * gst/gststructure.c:
2014         * gst/gststructure.h:
2015         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
2016         * gst/gstutils.h:
2017
2018 2005-04-24  David Schleef  <ds@schleef.org>
2019
2020         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
2021         make the regressions tests work.  Remove some code that is no
2022         longer true.
2023         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
2024         Disable warning for pads without templates.
2025
2026 2005-04-24  David Schleef  <ds@schleef.org>
2027
2028         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
2029         functions that handle filtered links.
2030         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
2031         removed functions.
2032         * gst/gstutils.c: Fix/remove utility functions that handle
2033         filtered caps.
2034         * gst/gstutils.h:
2035         * gst/gstvalue.c: Add serialization/deserialization of caps
2036         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
2037         requires fixing so that the filter caps notation creates
2038         a capsfilter element and sets the filter_caps property.  I
2039         think everyone probably wants to keep the shorthand notation.
2040         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
2041         * docs/gst/tmpl/gstpad.sgml:
2042
2043         * gst/elements/gstelements.c: Register capsfilter element.
2044         * gst/Makefile.am: fix spacing
2045         * docs/random/ds/0.9-suggested-changes: random
2046
2047 2005-04-23  David Schleef  <ds@schleef.org>
2048
2049         * gst/elements/Makefile.am:
2050         * gst/elements/gstcapsfilter.c: New element that acts like an
2051         identity, but filters caps.  Will eventually replace filtered
2052         caps in pad linking.
2053         * gst/gstutils.c: (gst_element_create_all_pads): New function
2054         to create all the ALWAYS pads that are registered with an
2055         element class.  This functionality should eventually be
2056         merged in with GstElement initialization.
2057         * gst/gstutils.h:
2058         * testsuite/trigger/README: part of trigger test code that should
2059         have been checked in a long time ago.
2060
2061 2005-04-23  David Schleef  <ds@schleef.org>
2062
2063         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
2064         needed with new versions of libtool (nobody will confirm this),
2065         and hard to carry around.
2066         * gst/autoplug/Makefile.am:
2067         * gst/base/Makefile.am:
2068         * gst/elements/Makefile.am:
2069         * gst/indexers/Makefile.am:
2070         * gst/schedulers/Makefile.am:
2071         * libs/gst/bytestream/Makefile.am:
2072         * libs/gst/control/Makefile.am:
2073         * libs/gst/dataprotocol/Makefile.am:
2074         * libs/gst/getbits/Makefile.am:
2075
2076 2005-04-21  Wim Taymans  <wim@fluendo.com>
2077
2078         * docs/design/draft-push-pull.txt:
2079         * docs/design/part-MT-refcounting.txt:
2080         * docs/design/part-TODO.txt:
2081         * docs/design/part-caps.txt:
2082         * docs/design/part-events.txt:
2083         * docs/design/part-gstbus.txt:
2084         * docs/design/part-gstpipeline.txt:
2085         * docs/design/part-messages.txt:
2086         * docs/design/part-push-pull.txt:
2087         * docs/design/part-query.txt:
2088         Some more docs.
2089
2090 2005-04-21  Wim Taymans  <wim@fluendo.com>
2091
2092         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
2093         (gst_message_new), (gst_message_new_error),
2094         (gst_message_new_warning), (gst_message_new_tag),
2095         (gst_message_new_state_changed), (gst_message_new_application),
2096         (gst_message_get_structure):
2097         * gst/gstmessage.h:
2098         * gst/gststructure.c: (gst_structure_set_parent_refcount),
2099         (gst_structure_copy_conditional):
2100         Use parent refcount in GstMessage to ensure GstStructure
2101         consistency.
2102         Cleaned up headers a bit.
2103         
2104
2105 2005-04-20  Wim Taymans  <wim@fluendo.com>
2106
2107         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2108         (gst_basesink_pad_getcaps), (gst_basesink_init),
2109         (gst_basesink_chain_unlocked):
2110         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
2111         (gst_type_find_helper):
2112         * gst/elements/gsttypefindelement.c:
2113         (gst_type_find_element_have_type), (gst_type_find_element_init),
2114         (stop_typefinding), (gst_type_find_element_handle_event),
2115         (find_suggest), (gst_type_find_element_chain),
2116         (gst_type_find_element_checkgetrange),
2117         (gst_type_find_element_getrange), (do_typefind),
2118         (gst_type_find_element_activate):
2119         * gst/gstbuffer.c: (_gst_buffer_sub_free),
2120         (gst_buffer_default_free), (gst_buffer_default_copy),
2121         (gst_buffer_set_caps):
2122         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
2123         (gst_caps_replace):
2124         * gst/gstmessage.c: (gst_message_new),
2125         (gst_message_new_state_changed):
2126         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2127         (gst_pad_set_checkgetrange_function),
2128         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
2129         (gst_pad_set_caps), (gst_pad_check_pull_range),
2130         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
2131         * gst/gstpad.h:
2132         * gst/gsttypefind.c: (gst_type_find_register):
2133         Make gst_caps_replace() work like other _replace() functions.
2134         Use _caps_replace() where possible.
2135         Make sure _message_new() initialises its field.
2136         Add gst_static_pad_template_get_caps()
2137
2138
2139 2005-04-18  Andy Wingo  <wingo@pobox.com>
2140
2141         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
2142         on the peer, not the pad. I think that was a typo. Pass an extra
2143         arg to see if random access is possible. Activate the pads as
2144         PULL_RANGE if possible.
2145
2146         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
2147
2148         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
2149         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
2150         to PROP_....
2151
2152 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2153
2154         * docs/faq/using.xml:
2155           Add note on gstreamer-properties (#154996).
2156
2157 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2158
2159         * docs/random/bbb/optional-properties:
2160           Some analysis on optional properties.
2161
2162 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2163
2164         * docs/gst/tmpl/gstelementfactory.sgml:
2165         * gst/gstelement.h:
2166         * gst/gstelementfactory.c: (gst_element_factory_init),
2167         (gst_element_factory_cleanup), (gst_element_register),
2168         (__gst_element_factory_add_static_pad_template),
2169         (gst_element_factory_get_static_pad_templates),
2170         (gst_element_factory_can_src_caps),
2171         (gst_element_factory_can_sink_caps):
2172         * gst/registries/Makefile.am:
2173         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
2174         (gst_xml_registry_class_init), (gst_xml_registry_init),
2175         (gst_xml_registry_new), (gst_xml_registry_set_property),
2176         (gst_xml_registry_get_property), (get_time), (make_dir),
2177         (gst_xml_registry_get_perms_func),
2178         (plugin_times_older_than_recurse), (plugin_times_older_than),
2179         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
2180         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
2181         (add_to_char_array), (read_string), (read_uint), (read_enum),
2182         (load_pad_template), (load_feature), (load_plugin), (load_paths),
2183         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
2184         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
2185         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
2186         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
2187         (gst_xml_registry_rebuild):
2188         * gst/registries/gstlibxmlregistry.h:
2189         * tools/gst-compprep.c: (main):
2190         * tools/gst-inspect.c: (print_pad_templates_info):
2191         * tools/gst-xmlinspect.c: (print_element_info):
2192           Use libxml2 for registry parsing, use staticpadtemplates in
2193           elementfactories. Makes gst_init() +/- 10x faster.
2194
2195 2005-04-12  Wim Taymans  <wim@fluendo.com>
2196
2197         * gst/base/Makefile.am:
2198         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2199         (gst_basesink_pad_getcaps), (gst_basesink_init),
2200         (gst_basesink_event), (gst_basesink_change_state):
2201         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2202         (gst_basesrc_init), (gst_basesrc_query),
2203         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
2204         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
2205         (gst_basesrc_check_get_range), (gst_basesrc_loop),
2206         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
2207         (gst_basesrc_stop), (gst_basesrc_activate),
2208         (gst_basesrc_change_state):
2209         * gst/base/gsttypefindhelper.c: (helper_find_peek),
2210         (helper_find_suggest), (gst_type_find_helper):
2211         * gst/base/gsttypefindhelper.h:
2212         * gst/elements/Makefile.am:
2213         * gst/elements/gstelements.c:
2214         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2215         (gst_fakesink_get_times), (gst_fakesink_event),
2216         (gst_fakesink_preroll), (gst_fakesink_render):
2217         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2218         (gst_fakesrc_init), (gst_fakesrc_event_handler),
2219         (gst_fakesrc_get_property), (gst_fakesrc_create),
2220         (gst_fakesrc_start), (gst_fakesrc_stop):
2221         * gst/elements/gstfakesrc.h:
2222         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
2223         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
2224         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
2225         (gst_filesrc_create_read), (gst_filesrc_create),
2226         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
2227         (gst_filesrc_start):
2228         * gst/elements/gsttypefindelement.c:
2229         (gst_type_find_element_have_type), (gst_type_find_element_init),
2230         (start_typefinding), (stop_typefinding), (push_buffer_store),
2231         (gst_type_find_element_handle_event),
2232         (gst_type_find_element_chain),
2233         (gst_type_find_element_checkgetrange),
2234         (gst_type_find_element_getrange), (do_typefind),
2235         (gst_type_find_element_activate),
2236         (gst_type_find_element_change_state):
2237         * gst/elements/gsttypefindelement.h:
2238         * gst/gstpipeline.c: (pipeline_bus_handler):
2239         Added typefind helper.
2240         Small preroll fix in the base sink.
2241         Disable typefind code in basesrc.
2242         Crude port of typefindelement.
2243         Fakesrc cleanups.
2244
2245
2246 2005-04-11  Wim Taymans  <wim@fluendo.com>
2247
2248         * check/gst/gstbus.c: (gstbus_suite):
2249         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
2250         * check/gstcheck.h:
2251           Fix up the timeout so that the test does not fail.
2252
2253 2005-04-06  Wim Taymans  <wim@fluendo.com>
2254
2255         * gst/base/README:
2256         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2257         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
2258         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
2259         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
2260         (gst_basesrc_check_get_range), (gst_basesrc_loop),
2261         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
2262         (gst_basesrc_stop), (gst_basesrc_activate),
2263         (gst_basesrc_change_state), (basesrc_find_peek),
2264         (basesrc_find_suggest), (gst_basesrc_type_find):
2265         * gst/base/gstbasesrc.h:
2266         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
2267         (gst_filesrc_class_init), (gst_filesrc_init),
2268         (gst_filesrc_finalize), (gst_filesrc_set_location),
2269         (gst_filesrc_set_property), (gst_filesrc_get_property),
2270         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
2271         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
2272         (gst_filesrc_create_read), (gst_filesrc_create),
2273         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
2274         * gst/elements/gstfilesrc.h:
2275         * gst/gstelement.c: (gst_element_get_state_func),
2276         (gst_element_lost_state), (gst_element_pads_activate):
2277         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2278         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
2279         (gst_pad_pull_range):
2280         * gst/gstpad.h:
2281         More work on the generic source base class, implement seeking,
2282         query.
2283         Make filesrc extend the base source class.
2284         Added gst_pad_set_checkgetrange_function to GstPad.
2285
2286 2005-04-06  Andy Wingo  <wingo@pobox.com>
2287
2288         * pkgconfig/gstreamer-base.pc.in:
2289         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
2290
2291         * pkgconfig/Makefile.am:
2292         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
2293
2294 2005-04-04  Wim Taymans  <wim@fluendo.com>
2295
2296         * gst/base/Makefile.am:
2297         * gst/base/README:
2298         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2299         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
2300         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
2301         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
2302         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2303         (gst_basesrc_base_init), (gst_basesrc_class_init),
2304         (gst_basesrc_init), (gst_basesrc_get_formats),
2305         (gst_basesrc_get_query_types), (gst_basesrc_query),
2306         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
2307         (gst_basesrc_set_property), (gst_basesrc_get_property),
2308         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
2309         (gst_basesrc_loop), (gst_basesrc_activate),
2310         (gst_basesrc_change_state):
2311         * gst/base/gstbasesrc.h:
2312         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
2313         (gst_fakesrc_class_init), (gst_fakesrc_init),
2314         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
2315         (gst_fakesrc_get_property), (gst_fakesrc_create):
2316         * gst/elements/gstfakesrc.h:
2317         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
2318         (gst_filesrc_open_file), (gst_filesrc_loop),
2319         (gst_filesrc_activate), (filesrc_find_peek),
2320         (gst_filesrc_type_find):
2321         Made base source class, make fakesrc extend it.
2322         Add comments to basesink class.
2323         Some filesrc cleanup.
2324
2325 2005-03-31  David Schleef  <ds@schleef.org>
2326
2327         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
2328         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
2329         expected to link against libgstreamer.
2330         * gst/base/Makefile.am: link against libgstreamer
2331         * gst/elements/Makefile.am: same
2332
2333 2005-03-31  Andy Wingo  <wingo@pobox.com>
2334
2335         * tests/instantiate/Makefile.am:
2336         * tests/instantiate/caps.c: Add test to test speed of caps copy
2337         and free.
2338
2339         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
2340         GMemChunk to be fair.
2341
2342         * gst/gsttrashstack.h: Remove warning about using the fallback
2343         trash stack implementation, it's still faster than malloc.
2344
2345 2005-03-30  Andy Wingo  <wingo@pobox.com>
2346
2347         * tests/complexity.c: Add a copyright.
2348
2349 2005-03-31  Wim Taymans  <wim@fluendo.com>
2350
2351         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
2352         (gst_base_transform_class_init), (gst_base_transform_init),
2353         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
2354         (gst_base_transform_get_property),
2355         (gst_base_transform_sink_activate),
2356         (gst_base_transform_src_activate),
2357         (gst_base_transform_change_state):
2358         * gst/base/gstbasetransform.h:
2359         * gst/elements/gstidentity.c: (gst_identity_class_init),
2360         (gst_identity_event), (gst_identity_check_perfect),
2361         (gst_identity_transform), (gst_identity_start),
2362         (gst_identity_stop):
2363         Added start/stop methods to transform base class so subclasses 
2364         don't need to deal with state changes even.
2365
2366 2005-03-31  Wim Taymans  <wim@fluendo.com>
2367
2368         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
2369         (gst_event_new_discontinuous), (gst_event_discont_get_value):
2370         * gst/gstevent.h:
2371         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2372         (gst_pad_pull_range):
2373         Added rate to the discont event to prepare for variable speed
2374         and reverse playback.
2375
2376 2005-03-29  David Schleef  <ds@schleef.org>
2377
2378         * configure.ac:
2379         * testsuite/trigger/Makefile.am:
2380         * testsuite/trigger/trigger.c: A little example program to show
2381         how trigger-based elements can work.
2382
2383 2005-03-29  Wim Taymans  <wim@fluendo.com>
2384
2385         * gst/base/Makefile.am:
2386         * gst/base/README:
2387         * gst/base/gstbasesink.c: (gst_basesink_get_type),
2388         (gst_basesink_base_init), (gst_basesink_class_init),
2389         (gst_basesink_pad_getcaps), (gst_basesink_init),
2390         (gst_basesink_activate), (gst_basesink_change_state):
2391         * gst/base/gstbasesink.h:
2392         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
2393         (gst_base_transform_base_init), (gst_base_transform_finalize),
2394         (gst_base_transform_class_init), (gst_base_transform_init),
2395         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
2396         (gst_base_transform_event), (gst_base_transform_getrange),
2397         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
2398         (gst_base_transform_set_property),
2399         (gst_base_transform_get_property),
2400         (gst_base_transform_sink_activate),
2401         (gst_base_transform_src_activate),
2402         (gst_base_transform_change_state):
2403         * gst/base/gstbasetransform.h:
2404         * gst/elements/gstidentity.c: (gst_identity_finalize),
2405         (gst_identity_class_init), (gst_identity_init),
2406         (gst_identity_event), (gst_identity_check_perfect),
2407         (gst_identity_transform), (gst_identity_set_property),
2408         (gst_identity_get_property), (gst_identity_change_state):
2409         * gst/elements/gstidentity.h:
2410         * gst/gstelement.c: (gst_element_get_state_func),
2411         (gst_element_lost_state), (gst_element_pads_activate):
2412         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2413         (gst_pad_check_pull_range), (gst_pad_pull_range):
2414         * gst/gstpad.h:
2415         Simplify pad activation.
2416         Added function to check if pull_range can be performed.
2417         Error out when pulling inactive or flushing pads.
2418         Removed const from refcounted types as it does not make sense.
2419         Simplify pad templates in basesink
2420         Added base class for simple 1-to-1 transforms.
2421         Make identity subclass the base transform.
2422
2423 2005-03-29  Andy Wingo  <wingo@pobox.com>
2424
2425         * docs/libs/gstreamer-libs-overrides.txt: 
2426         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
2427         really don't understand what's going on, but like whatever. I want
2428         green buildbot!
2429
2430         * docs/gst/Makefile.am:
2431         * docs/libs/Makefile.am: Dist the overrides files.
2432
2433         * check/Makefile.am (clean-local): Remove .libs directories.
2434
2435         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
2436         elements to EXTRA_DIST, so po/ files are happy.
2437
2438         * po/POTFILES.in: Er, remove it here.
2439
2440         * po/POTFILES: Remove gstspider.c.
2441
2442         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
2443
2444         * docs/libs/gstreamer-libs-docs.sgml: 
2445         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
2446         bytestream.
2447
2448         * tests/complexity.c (main): Set the length of the preroll queue
2449         on the sinks to prevent a lockup.
2450
2451         * libs/gst/dataprotocol/Makefile.am: 
2452         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
2453         the same as the one in check/gst-libs/gdp.c.
2454
2455         * po/, docs/gst/: Commit automatic changes to docs and po files.
2456
2457         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
2458         the versioned libgstbase.
2459
2460         * check/Makefile.am: Depend on an unversioned gst-register, seems
2461         to make autoconf happier.
2462
2463         * gst/base/Makefile.am: Make libgstbase a versioned lib.
2464
2465 2005-03-28  Wim Taymans  <wim@fluendo.com>
2466
2467         * configure.ac:
2468         * docs/design/part-gstelement.txt:
2469         * docs/design/part-negotiation.txt:
2470         * docs/design/part-preroll.txt:
2471         * docs/design/part-scheduling.txt:
2472         * docs/design/part-states.txt:
2473         * gst/Makefile.am:
2474         * gst/base/Makefile.am:
2475         * gst/base/README:
2476         * gst/base/gstbasesink.c: (gst_basesink_get_template),
2477         (gst_basesink_base_init), (gst_basesink_class_init),
2478         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
2479         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
2480         (gst_basesink_set_pad_functions),
2481         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
2482         (gst_basesink_set_property), (gst_basesink_get_property),
2483         (gst_base_sink_get_template), (gst_base_sink_get_caps),
2484         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
2485         (gst_basesink_preroll_queue_push),
2486         (gst_basesink_preroll_queue_empty),
2487         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
2488         (gst_basesink_event), (gst_basesink_get_times),
2489         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
2490         (gst_basesink_chain_unlocked), (gst_basesink_chain),
2491         (gst_basesink_loop), (gst_basesink_activate),
2492         (gst_basesink_change_state):
2493         * gst/base/gstbasesink.h:
2494         * gst/elements/Makefile.am:
2495         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
2496         (gst_fakesink_class_init), (gst_fakesink_init),
2497         (gst_fakesink_set_property), (gst_fakesink_get_property),
2498         (gst_fakesink_get_times), (gst_fakesink_event),
2499         (gst_fakesink_preroll), (gst_fakesink_render),
2500         (gst_fakesink_change_state):
2501         * gst/elements/gstfakesink.h:
2502         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
2503         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
2504         * gst/gstelement.c: (gst_element_add_pad),
2505         (gst_element_get_state_func), (gst_element_abort_state),
2506         (gst_element_commit_state), (gst_element_lost_state),
2507         (gst_element_set_state), (gst_element_pads_activate):
2508         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
2509         * gst/gstpipeline.c: (gst_pipeline_send_event),
2510         (gst_pipeline_change_state):
2511         Added state change code.
2512         Added/updated docs.
2513         Added sink base class, make fakesink extend the base class.
2514         Small cleanups in GstPipeline.
2515
2516 2005-03-26  David Schleef  <ds@schleef.org>
2517
2518         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
2519         is broken and should be implemented in a different library.
2520         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
2521         * gst/gst.h: remove gstcpu.h
2522         * gst/gstcpu.c: remove
2523         * gst/gstcpu.h: remove
2524         * gst/Makefile.am.future: Remove this file.  It's ancient.
2525
2526 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2527
2528         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
2529         (gst_bin_send_event):
2530           Add default event/set_manager handlers. The set_manager handler
2531           takes care that the manager is distributed over kids that were
2532           already in the bin before the manager was set. The event handler
2533           is a utility virtual function that sends the event over all sinks,
2534           so that gst_element_send_event (bin, event); has the expected
2535           behaviour.
2536         * gst/gstpad.c: (gst_pad_event_default):
2537           Re-install default event handling for discontinuities, so that
2538           seeking works without requiring hacks in applications or extra
2539           code in sinks.
2540         * gst/gstpipeline.c: (gst_pipeline_class_init),
2541         (gst_pipeline_send_event):
2542           Half hack, half utility: set a pipeline to PAUSED for seek events,
2543           since that is the only way we can guarantee a/v sync. Means that
2544           you can do gst_element_seek (pipeline, method, pos); on a pipeline
2545           and it "just works".
2546
2547 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2548
2549         * gst/gstpipeline.c: (gst_pipeline_use_clock):
2550           Lock/unlock mismatch.
2551
2552 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
2553
2554         * docs/faq/gst-uninstalled:
2555           add gst-plugins-base
2556         * docs/gst/Makefile.am:
2557           don't error out until docs are fixed
2558         * docs/gst/gstreamer.types:
2559           remove thread
2560
2561 2005-03-22  Wim Taymans  <wim@fluendo.com>
2562
2563         * check/Makefile.am:
2564         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
2565         * gst/gststructure.c: (gst_structure_set_valist),
2566         (gst_structure_copy_conditional):
2567         Activated more tests.
2568         Added message test.
2569         Added G_TYPE_POINTER to GstStructure.
2570         
2571
2572 2005-03-22  Wim Taymans  <wim@fluendo.com>
2573
2574         * docs/design/part-TODO.txt:
2575         * docs/design/part-events.txt:
2576         * docs/design/part-gstbin.txt:
2577         * docs/design/part-gstbus.txt:
2578         * docs/design/part-gstpipeline.txt:
2579         * docs/design/part-messages.txt:
2580         * gst/gstbus.c:
2581         * gst/gstmessage.c:
2582         Docs updates
2583
2584 2005-03-21  Wim Taymans  <wim@fluendo.com>
2585
2586         * gst/gstbus.c: (gst_bus_post):
2587         Fix copy-and-paste error.
2588
2589 2005-03-21  Wim Taymans  <wim@fluendo.com>
2590
2591         * check/Makefile.am:
2592         * gst/Makefile.am:
2593         * gst/elements/Makefile.am:
2594         * gst/elements/gstelements.c:
2595         * gst/elements/gstfakesink.c: (gst_fakesink_init),
2596         (gst_fakesink_event), (gst_fakesink_chain):
2597         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2598         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
2599         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
2600         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
2601         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
2602         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
2603         (gst_fakesrc_loop), (gst_fakesrc_activate),
2604         (gst_fakesrc_change_state):
2605         * gst/elements/gstfakesrc.h:
2606         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
2607         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
2608         (gst_filesrc_open_file), (gst_filesrc_loop),
2609         (gst_filesrc_activate), (gst_filesrc_change_state),
2610         (filesrc_find_peek), (filesrc_find_suggest),
2611         (gst_filesrc_type_find):
2612         * gst/elements/gstidentity.c: (gst_identity_finalize),
2613         (gst_identity_class_init), (gst_identity_init),
2614         (gst_identity_proxy_getcaps), (identity_queue_push),
2615         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
2616         (gst_identity_getrange), (gst_identity_chain),
2617         (gst_identity_sink_loop), (gst_identity_src_loop),
2618         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
2619         (gst_identity_set_property), (gst_identity_get_property),
2620         (gst_identity_change_state):
2621         * gst/elements/gstidentity.h:
2622         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
2623         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
2624         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
2625         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
2626         (gst_tee_sink_activate):
2627         * gst/elements/gsttee.h:
2628         * gst/gst.c: (gst_register_core_elements), (init_post):
2629         * gst/gst.h:
2630         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
2631         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
2632         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
2633         (gst_bin_change_state):
2634         * gst/gstbin.h:
2635         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
2636         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
2637         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
2638         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
2639         (gst_bus_set_sync_handler), (gst_bus_create_watch),
2640         (bus_watch_callback), (bus_watch_destroy),
2641         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
2642         (poll_timeout), (gst_bus_poll):
2643         * gst/gstbus.h:
2644         * gst/gstcaps.h:
2645         * gst/gstdata.h:
2646         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
2647         (gst_element_post_message), (gst_element_message_full),
2648         (gst_element_get_state_func), (gst_element_get_state),
2649         (gst_element_abort_state), (gst_element_commit_state),
2650         (gst_element_lost_state), (gst_element_set_state),
2651         (gst_element_pads_activate), (gst_element_change_state),
2652         (gst_element_dispose), (gst_element_set_manager_func),
2653         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
2654         (gst_element_set_manager), (gst_element_get_manager),
2655         (gst_element_set_bus), (gst_element_get_bus),
2656         (gst_element_set_scheduler), (gst_element_get_scheduler):
2657         * gst/gstelement.h:
2658         * gst/gstevent.c: (gst_event_new_segment_seek),
2659         (gst_event_new_flush):
2660         * gst/gstevent.h:
2661         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
2662         (_gst_message_free), (gst_message_get_type), (gst_message_new),
2663         (gst_message_new_eos), (gst_message_new_error),
2664         (gst_message_new_warning), (gst_message_new_tag),
2665         (gst_message_new_state_changed), (gst_message_new_application),
2666         (gst_message_get_structure), (gst_message_parse_tag),
2667         (gst_message_parse_state_changed), (gst_message_parse_error),
2668         (gst_message_parse_warning):
2669         * gst/gstmessage.h:
2670         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
2671         (gst_real_pad_set_property), (gst_pad_set_active),
2672         (gst_pad_is_active), (gst_pad_set_blocked_async),
2673         (gst_pad_set_blocked), (gst_pad_is_blocked),
2674         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
2675         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
2676         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
2677         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
2678         (gst_pad_link_filtered), (gst_pad_relink_filtered),
2679         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
2680         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
2681         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
2682         (gst_pad_set_caps), (gst_pad_configure_sink),
2683         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
2684         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
2685         (gst_real_pad_dispose), (gst_real_pad_finalize),
2686         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
2687         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2688         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
2689         * gst/gstpad.h:
2690         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
2691         (pipeline_bus_handler), (gst_pipeline_change_state),
2692         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
2693         * gst/gstpipeline.h:
2694         * gst/gstprobe.h:
2695         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
2696         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
2697         (gst_queue_link_src), (gst_queue_bufferalloc),
2698         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
2699         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
2700         (gst_queue_loop), (gst_queue_handle_src_event),
2701         (gst_queue_handle_src_query), (gst_queue_src_activate),
2702         (gst_queue_change_state):
2703         * gst/gstqueue.h:
2704         * gst/gstscheduler.c: (gst_scheduler_init),
2705         (gst_scheduler_dispose), (gst_scheduler_create_task),
2706         (gst_scheduler_factory_create):
2707         * gst/gstscheduler.h:
2708         * gst/gststructure.c: (gst_structure_get_type),
2709         (gst_structure_copy_conditional):
2710         * gst/gststructure.h:
2711         * gst/gsttaginterface.h:
2712         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
2713         (gst_task_init), (gst_task_dispose), (gst_task_create),
2714         (gst_task_get_state), (gst_task_start), (gst_task_stop),
2715         (gst_task_pause):
2716         * gst/gsttask.h:
2717         * gst/gstthread.c:
2718         * gst/gstthread.h:
2719         * gst/gsttypes.h:
2720         * gst/schedulers/Makefile.am:
2721         * gst/schedulers/cothreads_compat.h:
2722         * gst/schedulers/entryscheduler.c:
2723         * gst/schedulers/faircothreads.c:
2724         * gst/schedulers/faircothreads.h:
2725         * gst/schedulers/fairscheduler.c:
2726         * gst/schedulers/gstbasicscheduler.c:
2727         * gst/schedulers/gstoptimalscheduler.c:
2728         * gst/schedulers/gthread-cothreads.h:
2729         * gst/schedulers/threadscheduler.c:
2730         (gst_thread_scheduler_task_get_type),
2731         (gst_thread_scheduler_task_class_init),
2732         (gst_thread_scheduler_task_init),
2733         (gst_thread_scheduler_task_start),
2734         (gst_thread_scheduler_task_stop),
2735         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
2736         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2737         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
2738         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
2739         (plugin_init):
2740         * libs/gst/Makefile.am:
2741         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
2742         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
2743         (gst_file_pad_parent_set):
2744         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
2745         (gst_dp_event_from_packet):
2746         * tests/complexity.c: (main):
2747         * tests/mass_elements.c: (main):
2748         * testsuite/states/locked.c: (message_received), (main):
2749         * testsuite/states/parent.c: (main):
2750         * tools/gst-inspect.c: (print_element_flag_info),
2751         (print_implementation_info), (print_pad_info):
2752         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
2753         (main):
2754         * tools/gst-md5sum.c: (event_loop), (main):
2755         * tools/gst-typefind.c: (main):
2756         * tools/gst-xmlinspect.c: (print_element_info):
2757         Next big merge.
2758         Added GstBus for mainloop integration.
2759         Added GstMessage for sending notifications on the bus.
2760         Added GstTask as an abstraction for pipeline entry points.
2761         Removed GstThread.
2762         Removed Schedulers.
2763         Simplified GstQueue for multithreaded core.
2764         Made _link threadsafe, removed old capsnego.
2765         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
2766         Added pad blocking functions.
2767         Reworked scheduling functions in GstPad to prepare for
2768         scheduling updates soon.
2769         Moved events out of data stream.
2770         Simplified GstEvent types.
2771         Added return values to push/pull.
2772         Removed clocking from GstElement.
2773         Added prototypes for state change function for next merge.
2774         Removed iterate from bins and state change management.
2775         Fixed some elements, disabled others for now.
2776         Fixed -inspect and -launch.
2777         Added check for GstBus.
2778
2779 2005-03-10  Wim Taymans  <wim@fluendo.com>
2780
2781         * docs/design/part-MT-refcounting.txt:
2782         * docs/design/part-clocks.txt:
2783         * docs/design/part-gstelement.txt:
2784         * docs/design/part-gstobject.txt:
2785         * docs/design/part-standards.txt:
2786         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2787         (gst_bin_remove_func), (gst_bin_remove):
2788         * gst/gstbin.h:
2789         * gst/gstbuffer.c:
2790         * gst/gstcaps.h:
2791         * testsuite/clock/clock1.c: (main):
2792         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
2793         (main):
2794         * testsuite/dlopen/loadgst.c: (do_test):
2795         * testsuite/refcounting/bin.c: (add_remove_test1),
2796         (add_remove_test2), (main):
2797         * testsuite/refcounting/element.c: (main):
2798         * testsuite/refcounting/element_pad.c: (main):
2799         * testsuite/refcounting/pad.c: (main):
2800         * tools/gst-launch.c: (sigint_handler_sighandler):
2801         * tools/gst-typefind.c: (main):
2802         Doc updates.
2803         Added doc about clock.
2804         removed gst_bin_iterate_recurse_up(), marked methods
2805         for removal.
2806         Fix more testsuites.
2807
2808 2005-03-09  Wim Taymans  <wim@fluendo.com>
2809
2810         * gst/gstpad.c: (gst_pad_get_direction),
2811         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
2812         (gst_pad_collect_valist):
2813         * testsuite/bins/interface.c: (main):
2814         * testsuite/caps/audioscale.c: (test_caps):
2815         * testsuite/caps/caps.c: (test1), (test2), (test3):
2816         * testsuite/caps/deserialize.c: (main):
2817         * testsuite/caps/enumcaps.c: (main):
2818         * testsuite/caps/filtercaps.c: (main):
2819         * testsuite/caps/intersect2.c: (main):
2820         * testsuite/caps/random.c: (main):
2821         * testsuite/caps/renegotiate.c: (my_fixate), (main):
2822         * testsuite/caps/sets.c: (check_caps):
2823         * testsuite/caps/simplify.c: (check_caps), (main):
2824         * testsuite/caps/subtract.c: (check_caps):
2825         Fix _pad_get_direction wrt ghostpads.
2826         Fix caps testsuite.
2827
2828 2005-03-09  Wim Taymans  <wim@fluendo.com>
2829
2830         * check/Makefile.am:
2831         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
2832         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
2833         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
2834         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
2835         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
2836         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
2837         (gst_bin_remove), (gst_bin_iterate_recurse_up),
2838         (bin_element_is_sink), (gst_bin_iterate_sinks),
2839         (gst_bin_iterate_all_by_interface):
2840         * gst/gstbin.h:
2841         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
2842         (gst_element_change_state), (gst_element_dispose),
2843         (gst_element_finalize), (gst_element_set_loop_function):
2844         * gst/gstelement.h:
2845         * gst/gstiterator.c: (find_custom_fold_func):
2846         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2847         (gst_pad_collectv), (gst_pad_collect_valist),
2848         (gst_pad_template_new):
2849         * gst/gstpipeline.c: (gst_pipeline_class_init),
2850         (gst_pipeline_dispose), (gst_pipeline_set_property),
2851         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
2852         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
2853         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
2854         * gst/gstutils.h:
2855         * gst/schedulers/entryscheduler.c:
2856         * gst/schedulers/gstbasicscheduler.c:
2857         (gst_basic_scheduler_cothreaded_chain),
2858         (gst_basic_scheduler_chain_add_element):
2859         * testsuite/bins/interface.c: (main):
2860         Added GstBin test.
2861         Added GstSystemClock test.
2862         Implemented clock distribution code in GstBin.
2863         Implemented iterate sinks method for future use.
2864         Rearranged gstelement.h
2865         Fix GstIterator comparison bug.
2866         Moved some code to GstPipeline, mostly clocking related.
2867
2868 2005-03-09  Wim Taymans  <wim@fluendo.com>
2869
2870         * configure.ac:
2871         * gst/gst_private.h:
2872         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2873         (gst_bin_remove_func), (gst_bin_remove),
2874         (gst_bin_get_by_name_recurse_up):
2875         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
2876         (gst_clock_id_compare_func), (gst_clock_id_wait),
2877         (gst_clock_id_wait_async), (gst_clock_init),
2878         (gst_clock_adjust_unlocked), (gst_clock_get_time):
2879         * gst/gstelement.h:
2880         * gst/gstinfo.c: (_gst_debug_init):
2881         * gst/gstobject.h:
2882         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2883         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
2884         * gst/gstpad.h:
2885         Bump version number, we're now 0.9.0
2886         Add future debugging category.
2887         Fix NULL _unref() in _get_by_name_recurse_up
2888         Rearrange gstpad.h.
2889         Update some docs.
2890
2891 2005-03-08  Wim Taymans  <wim@fluendo.com>
2892
2893         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
2894         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
2895         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2896         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
2897         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
2898         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
2899         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
2900         * gst/elements/gstidentity.c: (gst_identity_class_init):
2901         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
2902         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
2903         * gst/elements/gstshaper.c: (gst_shaper_class_init):
2904         * gst/elements/gststatistics.c: (gst_statistics_class_init):
2905         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
2906         (gst_tee_link):
2907         * gst/gstelement.c: (gst_element_class_init),
2908         (gst_element_base_class_init), (gst_element_init),
2909         (gst_element_get_random_pad), (gst_element_wait_state_change),
2910         (gst_element_change_state), (gst_element_dispose),
2911         (gst_element_finalize), (gst_element_set_loop_function):
2912         * gst/gstelement.h:
2913         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
2914         * gst/gstthread.c: (gst_thread_class_init),
2915         (gst_thread_release_children_locks), (gst_thread_change_state):
2916         * gst/schedulers/gstbasicscheduler.c:
2917         (gst_basic_scheduler_loopfunc_wrapper),
2918         (gst_basic_scheduler_chain_wrapper),
2919         (gst_basic_scheduler_src_wrapper),
2920         (gst_basic_scheduler_remove_element):
2921         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
2922         Remove threadsafe properties. Fix elements because GObject
2923         complains when installing a property before declaring a
2924         set/get_property handler.
2925         Rearrange gstelement.h file, use STATE macros for state locks.
2926         Free mutexes in the finalize method instead of dispose.
2927
2928 2005-03-08  Wim Taymans  <wim@fluendo.com>
2929
2930         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
2931         * gst/gstthread.c: (gst_thread_release_children_locks):
2932         Added parentage check.
2933         Fix build og GstThread again.
2934
2935 2005-03-08  Wim Taymans  <wim@fluendo.com>
2936
2937         * docs/design/part-MT-refcounting.txt:
2938         * docs/design/part-conventions.txt:
2939         * docs/design/part-gstobject.txt:
2940         * docs/design/part-relations.txt:
2941         * docs/design/part-standards.txt:
2942         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2943         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
2944         (gst_bin_get_by_name), (gst_bin_get_by_interface),
2945         (gst_bin_iterate_all_by_interface):
2946         * gst/gstbuffer.h:
2947         * gst/gstclock.h:
2948         * gst/gstelement.c: (gst_element_class_init),
2949         (gst_element_change_state), (gst_element_set_loop_function):
2950         * gst/gstelement.h:
2951         * gst/gstiterator.c:
2952         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
2953         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
2954         (gst_object_dispatch_properties_changed), (gst_object_set_name),
2955         (gst_object_set_parent), (gst_object_unparent),
2956         (gst_object_check_uniqueness):
2957         * gst/gstobject.h:
2958         Docs updates, clean up some headers.
2959
2960 2005-03-07  Wim Taymans  <wim@fluendo.com>
2961
2962         * check/.cvsignore:
2963         * check/Makefile.am:
2964         * check/gst-libs/.cvsignore:
2965         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
2966         * check/gst/.cvsignore:
2967         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
2968         (START_TEST), (gstbus_suite), (main):
2969         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
2970         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
2971         (gst_data_suite), (main):
2972         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
2973         (add_fold_func), (gstiterator_suite), (main):
2974         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
2975         (thread_name_object), (thread_name_object_default),
2976         (gst_object_name_compare), (gst_object_suite), (main):
2977         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
2978         (gst_pad_suite), (main):
2979         * check/gstcheck.c: (gst_check_log_message_func),
2980         (gst_check_log_critical_func), (gst_check_init):
2981         * check/gstcheck.h:
2982         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
2983         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
2984         Added checks.
2985
2986 2005-03-07  Wim Taymans  <wim@fluendo.com>
2987
2988         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
2989         (gst_list_iterator_next), (gst_list_iterator_resync),
2990         (gst_list_iterator_free), (gst_iterator_new_list),
2991         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
2992         (gst_iterator_free), (gst_iterator_push), (filter_next),
2993         (filter_resync), (filter_uninit), (filter_free),
2994         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
2995         (gst_iterator_foreach), (find_custom_fold_func),
2996         (gst_iterator_find_custom):
2997         * gst/gstiterator.h:
2998         Added missing files.
2999
3000 2005-03-07  Wim Taymans  <wim@fluendo.com>
3001
3002         * Makefile.am:
3003         * configure.ac:
3004         * docs/design/part-MT-refcounting.txt:
3005         * docs/design/part-conventions.txt:
3006         * docs/design/part-gstobject.txt:
3007         * docs/design/part-relations.txt:
3008         * examples/mixer/mixer.c: (main):
3009         * examples/thread/thread.c: (eos), (main):
3010         * gst/Makefile.am:
3011         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
3012         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
3013         (gst_spider_plug_from_srcpad):
3014         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
3015         (gst_spider_identity_change_state),
3016         (gst_spider_identity_sink_loop_type_finding):
3017         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
3018         * gst/elements/gstidentity.c: (gst_identity_init):
3019         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
3020         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
3021         * gst/elements/gsttypefindelement.c: (free_entry):
3022         * gst/gst.c:
3023         * gst/gst.h:
3024         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
3025         (gst_bin_set_clock_func), (gst_bin_auto_clock),
3026         (gst_bin_set_index), (gst_bin_set_element_sched),
3027         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
3028         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
3029         (gst_bin_iterate_elements), (iterate_child_recurse),
3030         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
3031         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
3032         (compare_interface), (gst_bin_get_by_interface),
3033         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
3034         * gst/gstbin.h:
3035         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
3036         (gst_buffer_default_free), (gst_buffer_default_copy),
3037         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
3038         (gst_buffer_create_sub):
3039         * gst/gstbuffer.h:
3040         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
3041         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
3042         (gst_caps_unref), (gst_static_caps_get),
3043         (gst_caps_remove_and_get_structure), (gst_caps_append),
3044         (gst_caps_append_structure), (gst_caps_remove_structure),
3045         (gst_caps_copy_nth), (gst_caps_set_simple),
3046         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
3047         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
3048         (gst_caps_structure_intersect_field), (gst_caps_intersect),
3049         (gst_caps_structure_subtract_field), (gst_caps_subtract),
3050         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
3051         (gst_caps_structure_figure_out_union),
3052         (gst_caps_switch_structures), (gst_caps_do_simplify),
3053         (gst_caps_replace), (gst_caps_from_string),
3054         (gst_caps_copy_conditional):
3055         * gst/gstcaps.h:
3056         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
3057         (_gst_clock_id_free), (gst_clock_id_unref),
3058         (gst_clock_id_compare_func), (gst_clock_id_wait),
3059         (gst_clock_id_wait_async), (gst_clock_class_init),
3060         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
3061         (gst_clock_get_time), (gst_clock_set_time_adjust),
3062         (gst_clock_set_property), (gst_clock_get_property):
3063         * gst/gstclock.h:
3064         * gst/gstcompat.h:
3065         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
3066         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
3067         * gst/gstdata.h:
3068         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
3069         (gst_element_requires_clock), (gst_element_provides_clock),
3070         (gst_element_set_clock), (gst_element_clock_wait),
3071         (gst_element_wait), (gst_element_set_time_delay),
3072         (gst_element_is_indexable), (gst_element_add_pad),
3073         (gst_element_add_ghost_pad), (gst_element_remove_pad),
3074         (pad_compare_name), (gst_element_get_static_pad),
3075         (gst_element_request_pad), (gst_element_get_request_pad),
3076         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
3077         (gst_element_class_get_pad_template_list),
3078         (gst_element_class_get_pad_template), (gst_element_error_func),
3079         (gst_element_get_random_pad), (gst_element_get_event_masks),
3080         (gst_element_send_event), (gst_element_seek),
3081         (gst_element_get_query_types), (gst_element_query),
3082         (gst_element_get_formats), (gst_element_convert),
3083         (gst_element_is_locked_state), (gst_element_set_locked_state),
3084         (gst_element_sync_state_with_parent), (gst_element_change_state),
3085         (gst_element_finalize), (gst_element_yield),
3086         (gst_element_interrupt), (gst_element_set_scheduler),
3087         (gst_element_get_scheduler), (gst_element_set_loop_function):
3088         * gst/gstelement.h:
3089         * gst/gstevent.h:
3090         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
3091         (gst_format_get_by_nick), (gst_format_get_details),
3092         (gst_format_iterate_definitions):
3093         * gst/gstformat.h:
3094         * gst/gstindex.c: (gst_index_gtype_resolver):
3095         * gst/gstinfo.c:
3096         * gst/gstinfo.h:
3097         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
3098         (gst_mem_chunk_free):
3099         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
3100         (gst_object_ref), (gst_object_unref), (gst_object_sink),
3101         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
3102         (gst_object_dispatch_properties_changed),
3103         (gst_object_set_name_default), (gst_object_set_name),
3104         (gst_object_get_name), (gst_object_set_name_prefix),
3105         (gst_object_get_name_prefix), (gst_object_set_parent),
3106         (gst_object_get_parent), (gst_object_unparent),
3107         (gst_object_check_uniqueness), (gst_object_save_thyself),
3108         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
3109         (gst_object_set_property), (gst_object_get_property),
3110         (gst_object_get_path_string):
3111         * gst/gstobject.h:
3112         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
3113         (gst_real_pad_init), (gst_real_pad_get_property),
3114         (gst_pad_custom_new), (gst_pad_get_direction),
3115         (gst_pad_set_active), (gst_pad_is_active),
3116         (gst_pad_set_event_function), (gst_pad_is_linked),
3117         (gst_pad_link_free), (gst_pad_link_intersect),
3118         (gst_pad_link_fixate), (gst_pad_set_caps),
3119         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
3120         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
3121         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
3122         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
3123         (gst_pad_get_caps), (gst_pad_peer_get_caps),
3124         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
3125         (gst_pad_realize), (gst_pad_get_allowed_caps),
3126         (gst_real_pad_dispose), (gst_real_pad_finalize),
3127         (gst_pad_collectv), (gst_pad_collect_valist),
3128         (gst_pad_template_dispose), (gst_pad_template_new),
3129         (gst_pad_get_internal_links):
3130         * gst/gstpad.h:
3131         * gst/gstpipeline.c: (gst_pipeline_dispose),
3132         (gst_pipeline_change_state):
3133         * gst/gstpipeline.h:
3134         * gst/gstplugin.c:
3135         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
3136         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
3137         * gst/gstpluginfeature.h:
3138         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3139         * gst/gstquery.c: (_gst_query_type_initialize),
3140         (gst_query_type_register), (gst_query_type_get_by_nick),
3141         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
3142         * gst/gstquery.h:
3143         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
3144         * gst/gstscheduler.c: (gst_scheduler_add_element),
3145         (gst_scheduler_factory_create):
3146         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3147         (gst_structure_free), (gst_structure_set_name),
3148         (gst_structure_id_set_value), (gst_structure_set_value),
3149         (gst_structure_set_valist), (gst_structure_remove_field),
3150         (gst_structure_remove_fields),
3151         (gst_structure_remove_fields_valist),
3152         (gst_structure_remove_all_fields), (gst_structure_foreach),
3153         (gst_structure_map_in_place),
3154         (gst_caps_structure_fixate_field_nearest_int),
3155         (gst_caps_structure_fixate_field_nearest_double):
3156         * gst/gststructure.h:
3157         * gst/gstsystemclock.c: (gst_system_clock_class_init),
3158         (gst_system_clock_init), (gst_system_clock_dispose),
3159         (gst_system_clock_async_thread),
3160         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
3161         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
3162         * gst/gstsystemclock.h:
3163         * gst/gsttag.c: (gst_tag_list_add_value_internal),
3164         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
3165         * gst/gsttaginterface.c:
3166         * gst/gstthread.c: (gst_thread_dispose),
3167         (gst_thread_release_children_locks), (gst_thread_change_state),
3168         (gst_thread_main_loop):
3169         * gst/gsttrashstack.h:
3170         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
3171         * gst/gsttypes.h:
3172         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3173         (gst_element_request_pad), (gst_element_get_pad_from_template),
3174         (gst_element_request_compatible_pad),
3175         (gst_element_get_compatible_pad_filtered),
3176         (gst_element_get_compatible_pad), (gst_element_state_get_name),
3177         (gst_element_link_pads_filtered), (gst_element_link_filtered),
3178         (gst_element_link_many), (gst_element_link),
3179         (gst_element_link_pads), (gst_element_unlink_pads),
3180         (gst_element_unlink_many), (gst_element_unlink),
3181         (gst_pad_can_link_filtered), (gst_pad_can_link),
3182         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
3183         (gst_object_default_error), (gst_bin_add_many),
3184         (gst_bin_remove_many), (gst_element_populate_std_props),
3185         (gst_element_class_install_std_props), (gst_buffer_merge),
3186         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
3187         (link_fold_func), (gst_pad_proxy_setcaps):
3188         * gst/gstutils.h:
3189         * gst/gstvalue.c: (gst_value_deserialize_string):
3190         * gst/parse/grammar.y:
3191         * gst/schedulers/gstbasicscheduler.c:
3192         (gst_basic_scheduler_cothreaded_chain),
3193         (gst_basic_scheduler_chain_recursive_add),
3194         (gst_basic_scheduler_pad_link):
3195         * gst/schedulers/gstoptimalscheduler.c:
3196         (get_group_schedule_function),
3197         (gst_opt_scheduler_state_transition),
3198         (gst_opt_scheduler_add_element), (element_get_reachables_func):
3199         * libs/gst/bytestream/bytestream.c:
3200         * libs/gst/dataprotocol/dataprotocol.c:
3201         (gst_dp_header_from_buffer):
3202         * po/nb.po:
3203         * po/ru.po:
3204         * tests/threadstate/threadstate2.c: (eos):
3205         * tools/gst-compprep.c: (main):
3206         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
3207         (print_pad_info), (print_children_info):
3208         * tools/gst-launch.c: (idle_func), (main):
3209         * tools/gst-md5sum.c: (idle_func), (main):
3210         * tools/gst-xmlinspect.c: (print_element_info):
3211         First THREADED backport attempt, focusing on adding locks and
3212         making sure the API is threadsafe. Needs more work. More docs
3213         follow this week.
3214
3215 2005-02-24  Andy Wingo  <wingo@pobox.com>
3216
3217         * tests/bench-complexity.scm:
3218         * tests/complexity.gnuplot: New files, good for running complexity
3219         benchmarks.
3220
3221         * tests/Makefile.am:
3222         * tests/complexity.c: New test, sets up N elements, at each level
3223         teeing into M streams per element. Eeeenteresting.
3224
3225         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
3226         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
3227         running bench-mass_elements.scm.
3228
3229         * tests/bench-mass_elements.scm: New script, runs mass_elements
3230         for various numbers of identities, outputting the results to a
3231         file. Requires guile 1.6. Just for testing.
3232
3233 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3234
3235         * gst/schedulers/fairscheduler.c:
3236           compile with debug disabled
3237
3238 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
3239
3240         * configure.ac:
3241           hunting season on 0.9 is now OPEN
3242
3243 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
3244
3245         * docs/libs/tmpl/gstcontrol.sgml:
3246         * docs/libs/tmpl/gstdparam.sgml:
3247         * docs/libs/tmpl/gstdplinint.sgml:
3248         * docs/libs/tmpl/gstdpman.sgml:
3249         * docs/libs/tmpl/gstdpsmooth.sgml:
3250         * docs/libs/tmpl/gstunitconvert.sgml:
3251           more docs for the state of dparams
3252
3253 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3254
3255         * gst/gstelementfactory.c: (gst_element_factory_create):
3256         * gst/gstobject.c: (gst_object_init),
3257         (gst_object_set_name_default), (gst_object_set_name):
3258           name objects by default, not in gst_element_factory_create. Allows
3259           using elements created with g_object_new. (fixes #167283)
3260
3261 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3262
3263         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
3264           make the time that debugging functions print relative to when
3265           gst_init was called
3266
3267 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
3268
3269         * gst/gsttaginterface.c:
3270           Fix inline docs: tag setter vararg functions are NULL-terminated,
3271           GST_TAG_INVALID doesn't exist any more.
3272
3273 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
3274
3275         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
3276         Allocate the 1 byte more memory that was forgotten!!!!!
3277         fixes memory corruption on 64bit platforms
3278
3279 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
3280
3281         * docs/pwg/building-pads.xml:
3282         * docs/pwg/intro-basics.xml:
3283           fixed a few typos, relabeled introductionary list of types
3284         * docs/random/ensonic/dparams.txt:
3285           more notes abut dparam changes
3286         * libs/gst/control/dparam.c: (gst_dparam_attach):
3287         * libs/gst/control/dparammanager.c:
3288         * libs/gst/control/dparammanager.h:
3289           - many comments and notes on dparam implementation
3290           - new dparams are were not initialized to the default value
3291             from param spec
3292
3293 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
3294
3295         submitted by: Peter Astakhov
3296
3297         * po/LINGUAS:
3298         * po/ru.po:
3299           adding Russian translation
3300
3301 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
3302
3303         * configure.ac:
3304         * docs/gst/Makefile.am:
3305         * docs/libs/Makefile.am:
3306           make sure popt is added to gtk-doc flags.  Fixes #147782.
3307
3308 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
3309
3310         * docs/faq/using.xml:
3311           Fix typo in FAQ (artssink => artsdsink)
3312
3313 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3314
3315         * tools/gst-launch.1.in:
3316           Fix typo (#166699).
3317
3318 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
3319
3320         * docs/faq/using.xml:
3321           Add -v argument to fakesrc/fakesink gst-launch line,
3322           so that the promised output will actually show up.
3323
3324 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3325
3326         * gst/gstthread.c: (gst_thread_change_state):
3327           Implement state-change error handling (#166073).
3328
3329 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3330
3331         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
3332           Release interrupt after handling (#166250).
3333
3334 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3335
3336         * configure.ac:
3337           back to HEAD
3338
3339 === release 0.8.9 ===
3340
3341 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3342
3343         * NEWS:
3344         * RELEASE:
3345         * configure.ac:
3346           releasing 0.8.9, "Like Eating Glass"
3347
3348 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3349
3350         submitted by: Clytie Siddall
3351
3352         * po/vi.po: Added Vietnamese translation
3353
3354 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
3355
3356         patch by: Tim Philipp-Müller
3357
3358         * configure.ac:
3359         * gst/gstpad.c:
3360           unref data when probe function returns FALSE.  Fixes #166362
3361
3362 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3363
3364         * gst/gst.c: (gst_init_get_popt_table):
3365           Fix typo (#166269).
3366
3367 2005-02-04  Andy Wingo  <wingo@pobox.com>
3368
3369         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
3370         the debugging on whether the caps are compatible.
3371
3372 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3373
3374         * docs/manual/basics-elements.xml:
3375           Fix two typos.
3376
3377 2005-02-02  Wim Taymans  <wim@fluendo.com>
3378
3379         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
3380         (schedule_chain), (get_invalid_call), (chain_invalid_call),
3381         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
3382         Remove some FIXMEs after analysing and commenting why they
3383         are not issues.
3384
3385 2005-02-02  Wim Taymans  <wim@fluendo.com>
3386
3387         * gst/schedulers/gstoptimalscheduler.c:
3388         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
3389         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
3390         (get_invalid_call), (chain_invalid_call),
3391         (get_group_schedule_function), (loop_group_schedule_function),
3392         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
3393         (gst_opt_scheduler_state_transition),
3394         (gst_opt_scheduler_add_element),
3395         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
3396         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
3397         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
3398         (gst_opt_scheduler_show):
3399         Added lock to protect scheduler data structures.
3400
3401 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3402
3403         * testsuite/threads/threadi.c: (cb_data):
3404           Fix buglet in test.
3405
3406 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3407
3408         * testsuite/threads/Makefile.am:
3409         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
3410           On Wim's request, split the test in three separately-compiled
3411           tests that each test a very specific bug. Two of them still fail,
3412           will create bugs for those. threadi.c indicates why they fail.
3413
3414 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3415
3416         * gst/schedulers/gstoptimalscheduler.c:
3417         (get_group_schedule_function):
3418           Try to work with the threading mess that queue_link is.
3419
3420 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3421
3422         * gst/gstbin.c: (gst_bin_remove_func):
3423           Explicitely make an element release locks in a group when being
3424           remove from a bin.
3425         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
3426           If there's no scheduler, always return immediately (similar to
3427           gst_element_interrupt).
3428
3429 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3430
3431         * gst/gstbin.c: (gst_bin_child_state_change_func):
3432           Remove a piece of code that could never be reached.
3433         * docs/gst/gstreamer-sections.txt:
3434         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
3435         (gst_pad_call_get_function):
3436         * gst/gstpad.h:
3437         * testsuite/pad/Makefile.am:
3438           Fix #150546, enable tests.
3439
3440 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3441
3442         * docs/pwg/advanced-types.xml:
3443           Fix description for buffer-frames=0.
3444         * docs/gst/tmpl/gstbin.sgml:
3445         * gst/gstbin.c: (gst_bin_child_state_change_func),
3446         (gst_bin_change_state), (gst_bin_change_state_norecurse):
3447         * gst/gstbin.h:
3448         * testsuite/threads/Makefile.am:
3449         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
3450         (cb_state), (cb_play), (main):
3451           Fix non-recursive state changes to *really* change the state
3452           of the object, and not just call parent_class->state_change.
3453           Fix a lot of lockups caused by this. Fixes #132775. Add test
3454           for the problem. Also enable test to show #142588 (fixed).
3455         * gst/gstthread.c: (gst_thread_change_state),
3456         (gst_thread_child_state_change):
3457           Don't exit the thread if we go to NULL and are inside thread
3458           context. Instead, return control to the main thread context
3459           and exit from there.
3460         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
3461           Don't unset virtual functions, since those may still be used.
3462           That's not necessarily correct, but suffices for now.
3463         * configure.ac:
3464         * testsuite/Makefile.am:
3465         * testsuite/pad/Makefile.am:
3466         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
3467         (gst_test_sink_base_init), (gst_test_sink_chain),
3468         (gst_test_sink_init), (main):
3469         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
3470         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
3471         (main):
3472         * testsuite/pad/link.c: (gst_test_element_class_init),
3473         (gst_test_element_base_init), (gst_test_src_get),
3474         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
3475         (gst_test_filter_loop), (gst_test_filter_init),
3476         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
3477         (cb_error), (main):
3478           Add tests to show #150546. Pass, but should fail (currently
3479           disabled from the testsuite).
3480         * gst/gstscheduler.c: (gst_scheduler_dispose):
3481           Dereference child schedulers on dispose (#94464).
3482         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
3483           Fix typo.
3484         * testsuite/threads/thread.c: (main):
3485           Add more debug.
3486
3487 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3488
3489         * gst/gstpad.c: (gst_pad_push):
3490           Oops, revert previous commit, broke testsuite...
3491
3492 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3493
3494         * gst/gstpad.c: (gst_pad_push):
3495           Add check that the pad on which the push is performed is not a
3496           get-based pad (#150546).
3497
3498 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3499
3500         * gst/elements/gsttypefindelement.c:
3501         (gst_type_find_element_handle_event):
3502           Fix buffer pushing if stream EOSes during typefinding.
3503
3504 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
3505
3506         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3507
3508         * gst/gstvalue.c: (gst_string_wrap):
3509           Allow NULL-strings as argument (#165365).
3510
3511 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
3512
3513         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3514
3515         * gst/schedulers/faircothreads.c:
3516         (gst_fair_scheduler_cothread_queue_show):
3517           Fix build without debug enabled.
3518
3519 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
3520
3521         * docs/gst/gstreamer-sections.txt:
3522         * docs/libs/gstreamer-libs-docs.sgml:
3523         * docs/libs/gstreamer-libs-sections.txt:
3524         * docs/libs/tmpl/gstcontrol.sgml:
3525         * docs/libs/tmpl/gstdparam.sgml:
3526         * docs/libs/tmpl/gstdplinint.sgml:
3527         * docs/libs/tmpl/gstdpman.sgml:
3528         * docs/libs/tmpl/gstdpsmooth.sgml:
3529         * docs/libs/tmpl/gstputbits.sgml:
3530         * docs/libs/tmpl/gstunitconvert.sgml:
3531         * libs/gst/control/dparam.c:
3532         * libs/gst/control/dparam.h:
3533         * libs/gst/control/dparammanager.c:
3534         (gst_dpman_add_required_dparam_callback),
3535         (gst_dpman_add_required_dparam_direct),
3536         (gst_dpman_add_required_dparam_array),
3537         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
3538         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
3539         (gst_dpman_get_manager)
3540           restructured DParam docs
3541
3542 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
3543
3544         * gst-element-check.m4:
3545           Only check for gst-inspect if we haven't already
3546           found it in previous element check runs
3547
3548 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
3549
3550         * docs/gst/Makefile.am:
3551         * docs/libs/Makefile.am:
3552           fixed install rules to treat style.css as optional
3553
3554 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
3555
3556         * docs/gst/Makefile.am:
3557         * docs/libs/Makefile.am:
3558           install style.css along with docs
3559         * docs/gst/tmpl/gstbin.sgml:
3560         * docs/gst/tmpl/gstclock.sgml:
3561         * docs/gst/tmpl/gstdata.sgml:
3562         * docs/gst/tmpl/gstelement.sgml:
3563         * gst/gstbin.h:
3564         * gst/gstelement.c: (gst_element_class_init):
3565         * gst/gstelement.h:
3566           fixing incomplete docs
3567
3568 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
3569
3570         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
3571           Don't unref seek event twice when fflush() fails
3572           
3573 2005-01-22  David Schleef  <ds@schleef.org>
3574
3575         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
3576
3577 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
3578
3579         * docs/gst/Makefile.am:
3580         * docs/libs/Makefile.am:
3581           added params for deprecation guards
3582         * gst/gst.c:
3583         * gst/gst.h:
3584         * gst/gsterror.c: (_gst_resource_errors_init),
3585         (_gst_stream_errors_init):
3586         * gst/gsterror.h:
3587           documented some more enums
3588
3589 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
3590         * gst/autoplug/gstspideridentity.c:
3591         Cosmetic fix - spider_find_peek should be static
3592         * gst/parse/parse.l:
3593         Applying fix for #164261
3594
3595 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
3596
3597         * docs/gst/gstreamer-sections.txt:
3598         * docs/gst/tmpl/gstplugin.sgml:
3599         * docs/libs/gstreamer-libs-sections.txt:
3600         * docs/libs/tmpl/gstcontrol.sgml:
3601         * gst/gstbuffer.h:
3602         * gst/gsttag.h:
3603         * gst/gstvalue.c:
3604           added docs for the TAG defines
3605
3606 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3607
3608         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
3609           Only unref entry if there is an entry.
3610
3611 2005-01-17  Wim Taymans  <wim@fluendo.com>
3612
3613         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3614         (remove_from_group), (schedule_group), (normalize_group),
3615         (gst_opt_scheduler_iterate):
3616         Also ref/unref decoupled elements before iterating the
3617         group since they are not added to the list of elements.
3618
3619 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3620
3621         * docs/manual/highlevel-components.xml:
3622           Add subtitle/streamselection as new features to playbin.
3623
3624 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3625
3626         * docs/manual/manual.xml:
3627           Re-enable dataaccess docs (oops).
3628
3629 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3630
3631         * docs/pwg/advanced-types.xml:
3632         * docs/random/mimetypes:
3633           Add documentation on libsndfile types (#163309), by Steve Baker
3634           <steve@stevebaker.org>.
3635         * gst/gstelement.c: (gst_element_release_request_pad):
3636           If an element has no explicit function, just remove the pad.
3637
3638 2005-01-17  Luca Ognibene  <luogni@tin.it>
3639
3640         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3641
3642         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
3643           Fix memleak (#163801).
3644
3645 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3646
3647         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
3648           I think this is actually more correct...
3649
3650 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3651
3652         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3653           Another workaround for memory access while destroyed in callback.
3654           Please, someone with refcount knowledge, have a look at this.
3655
3656 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3657
3658         * docs/faq/faq.xml:
3659         * docs/faq/legal.xml:
3660           move the legal Q&A here
3661
3662 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3663
3664         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
3665         (gst_tee_request_new_pad):
3666           Fix negotiation.
3667
3668 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3669
3670         * docs/random/omega/caps2:
3671         * testsuite/caps/caps_strings:
3672           replace framerate aproximations by their real value
3673           (24000/1001, 30000/1001, 60000/1001)
3674           Partially fixes bug #164049
3675
3676 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3677
3678         * docs/gst/Makefile.am:
3679           don't fail on the stupid GstPoptOption
3680
3681 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3682
3683         * gst/gstpad.h:
3684         * gst/gstprobe.c:
3685           allow probes to work on ghost pads by realizing the pad
3686           probe debugging
3687
3688 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3689
3690         * docs/gst/gstreamer-sections.txt:
3691         * docs/gst/tmpl/gstpad.sgml:
3692         * gst/gstpad.c: (gst_pad_set_active_recursive):
3693         * gst/gstpad.h:
3694           Add gst_pad_set_active_recursive().
3695
3696 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
3697
3698         * docs/random/release:
3699           updates
3700         * gst/gst_private.h:
3701         * gst/gstinfo.c:
3702         * gst/gstobject.c:
3703           move deep_notify logging to a new category
3704         * gst/gstprobe.c:
3705         * gst/gstprobe.h:
3706           add stuff so bindings can wrap probes
3707
3708 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3709
3710         * gst/gstplugin.c: (gst_plugin_load):
3711           Fix plugin loading if plugin/lib was already loaded. Fixes
3712           #163383
3713
3714 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
3715
3716         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3717
3718         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
3719           Protect plugin loading by a mutex so it's threadsafe. Fixes
3720           #163234.
3721
3722 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3723
3724         * gst/gstevent.c: (_gst_event_copy):
3725           Reference source object when copying events, since it'll be
3726           dereferenced on event dereferencing as well.
3727
3728 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3729
3730         * docs/gst/gstreamer-sections.txt:
3731         * docs/gst/tmpl/gstevent.sgml:
3732         * gst/gstevent.c: (gst_event_new_filler_stamped),
3733         (gst_event_filler_get_duration):
3734         * gst/gstevent.h:
3735           Add two new functions for filler events (which are used to
3736           synchronize streams if one of them is not having any data
3737           for a while) without interrupting the actual data-stream.
3738           Basically a no-op.
3739         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3740         (gst_queue_link_sink), (gst_queue_link_src),
3741         (gst_queue_change_state):
3742           Allow for renegotiation while filled. Required for stream
3743           switching while playing.
3744
3745 2005-01-08  Benjamin Otte  <otte@gnome.org>
3746
3747         * gst/gstelement.c: (gst_element_link_many):
3748           fix up g_return_if_fail's
3749         * po/LINGUAS:
3750         * po/de.po:
3751           add German translation, that was somehow not included
3752
3753 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3754
3755         * docs/random/mimetypes:
3756           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
3757           do not add them to riff-lib as they are not common
3758
3759 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3760
3761         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3762           Check for existence of probe after performing the probe before
3763           re-accessing it to prevent segfaults caused by removal of the
3764           probe in the callback.
3765
3766 2005-01-05  David Schleef  <ds@schleef.org>
3767
3768         * testsuite/registry/Makefile.am:
3769         * testsuite/registry/gst-print-formats.c:
3770         (print_pad_templates_info), (print_element_list),
3771         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
3772         (g_list_uniqify), (get_pad_templates_info),
3773         (get_element_mime_list), (print_mime_list), (main): A little
3774         program that looks through the registry to find elements of
3775         a given type.  Not particularly interesting as a test, except
3776         that there's no other test covering the same area.
3777
3778 2005-01-05  David Schleef  <ds@schleef.org>
3779
3780         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
3781         (fault_handler_sigaction), (fault_spin),
3782         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
3783         in signal.h-type signal handlers by not calling forbidden functions,
3784         including gst_element_set_state().
3785
3786 2005-01-05  David Schleef  <ds@schleef.org>
3787
3788         * gst/gstvalue.h: Mark _gst_reserved[] as private
3789
3790 2005-01-05  David Schleef  <ds@schleef.org>
3791
3792         * gst/gstvalue.c: Fix doc build problem.
3793
3794 2005-01-05  David Schleef  <ds@schleef.org>
3795
3796         * gst/gstvalue.c: Add some documentation
3797
3798 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
3799
3800         * docs/README:
3801           another shell oneliner for empty return value docs
3802         * gst/gstcaps.c:
3803         * gst/gstvalue.c:
3804         * libs/gst/control/dparam.c:
3805           more doc fixes (parameters and return values)
3806
3807 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
3808
3809         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3810
3811         * gst/gstregistry.h:
3812         * gst/registries/gstxmlregistry.c:
3813           Fix macro's for Mingw (fixes #162276).
3814
3815 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
3816
3817         * docs/README:
3818           quick shell oneliner to find undocumented members
3819         * docs/gst/tmpl/gstplugin.sgml:
3820         * docs/gst/tmpl/gstscheduler.sgml:
3821         * docs/gst/tmpl/gstthread.sgml:
3822           more enumtypes cleanup
3823         * gst/gsterror.h:
3824           activated documentation comments, now someone needs to document
3825           the enums :(
3826
3827 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3828
3829         * docs/manual/manual.xml:
3830           Add dataaccess part (doh!).
3831
3832 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3833
3834         * docs/manual/advanced-autoplugging.xml:
3835           Fix typo (intiate -> initiate).
3836
3837 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3838
3839         * docs/random/bbb/streamselection:
3840           Add some notes on how to handle multi-subtitle/-audio streams.
3841
3842 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
3843
3844         * docs/gst/gstreamer-docs.sgml:
3845         * docs/gst/gstreamer-sections.txt:
3846         * docs/gst/tmpl/gstenumtypes.sgml:
3847         * docs/gst/tmpl/gsterror.sgml:
3848         * docs/gst/tmpl/gstevent.sgml:
3849         * docs/gst/tmpl/gstpad.sgml:
3850         * docs/gst/tmpl/gstpadtemplate.sgml:
3851         * docs/gst/tmpl/gstthread.sgml:
3852           removed gstenumtypes section from docs and put all the enums into
3853           their sections
3854
3855 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3856
3857         * gst/gstplugin.c:
3858           document gst_library_load a bit more (riff special case + return
3859           value if already loaded)
3860         * testsuite/bytestream/filepadsink.c:
3861           plugin name is 'gstbytestream', not 'bytestream'
3862
3863 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3864
3865         * docs/random/bbb/subtitles:
3866           Add some first mind rumblings on proper subtitle support.
3867
3868 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3869
3870         * po/ca.po:
3871         * po/sv.po:
3872           updated translations
3873
3874 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3875
3876         * docs/manual/advanced-dataaccess.xml:
3877           Add section on how to use fakesrc/fakesink/identity in your
3878           application, plus section on how to embed plugins. Also mention
3879           probes.
3880         * docs/manual/appendix-checklist.xml:
3881         * docs/manual/appendix-debugging.xml:
3882         * docs/manual/appendix-gnome.xml:
3883         * docs/manual/appendix-integration.xml:
3884           Debug -> checklist, GNOME -> integration, add sections on Linux,
3885           KDE integration and add other things useful for application
3886           development.
3887         * docs/manual/manual.xml:
3888           Remove some fixmes, update some file pointers.
3889         * docs/pwg/appendix-checklist.xml:
3890           Fix typo.
3891         * docs/pwg/building-boiler.xml:
3892           Remove ugly header and add commented fixme.
3893         * docs/pwg/pwg.xml:
3894           Add fixme.
3895         * examples/manual/Makefile.am:
3896           Add example for added docs.
3897
3898 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3899
3900         * configure.ac:
3901           back to HEAD
3902
3903 === release 0.8.8 ===
3904
3905 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3906
3907         * NEWS:
3908         * RELEASE:
3909         * configure.ac:
3910           Releasing 0.8.8, "I'll Take Care Of You"
3911
3912 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3913
3914         * configure.ac:
3915           second prerelease
3916
3917 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3918
3919         patch by: Wim Taymans
3920
3921         * gst/gstbin.c:
3922           Fix for #159852 - make iterate emission threadsafe
3923
3924 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3925
3926         * docs/faq/cvs.xml:
3927           notes about new fdo account request
3928
3929 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
3930
3931         * docs/gst/gstreamer-docs.sgml:
3932         * docs/gst/tmpl/gstenumtypes.sgml:
3933         * docs/gst/tmpl/gstplugin.sgml:
3934         * docs/libs/gstreamer-libs-docs.sgml:
3935           Added missing short docs. Added ids for navigation.
3936
3937 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3938
3939         * docs/manual/advanced-autoplugging.xml:
3940         * docs/manual/advanced-schedulers.xml:
3941         * docs/manual/advanced-threads.xml:
3942           Rewrites. Remove cothreads, go a bit into opt specifically,
3943           document threads and their gotchas, and do some technical stuff
3944           on autoplugging plus add some working examples. Fixes #157395.
3945         * examples/manual/Makefile.am:
3946           Add typefind/autoplugger example (one that actually works).
3947           Remove queue example since it's a duplicate of the thread one.
3948
3949 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3950
3951         * gst/gstvalue.c: (gst_value_deserialize_string):
3952           use deprecated g_value_set_string_take_ownership to keep compatible
3953           with glib 2.2
3954
3955 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3956
3957         * gst/gstvalue.c: (gst_value_deserialize_string):
3958           revert last patch, only dom a g_utf8_validate now before accepting
3959           the string - caps parsing strips " from strings so we can't rely on
3960           them
3961         * testsuite/caps/value_serialize.c: (test_string_deserialization):
3962           disable a test that tested the above and comment it
3963
3964 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
3965
3966         Patch reviewed by David Schleef  <ds@schleef.org>
3967
3968         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
3969         bug #153882)
3970         * win32/gstenumtypes.h: same
3971
3972 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3973
3974         * gst/gstpad.c: (gst_pad_query):
3975           Do query on realized pad, similar to how convert/send_event handle
3976           this. Also makes sense, since this pad belongs to the function to
3977           which this query will be sent. Fixes #158163.
3978
3979 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
3980
3981         * docs/manual/appendix-programs.xml: fix pipeline to actually work
3982
3983 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
3984
3985         * docs/faq/general.xml: fix pipeline to actually work
3986
3987 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3988
3989         * gst/gstvalue.c: (gst_value_deserialize_string):
3990           check that a simple string that gets deserialized does not contain
3991           invalid characters
3992         * testsuite/caps/value_serialize.c: (test_string_deserialization):
3993           remove a test that tested a wring behaviour
3994
3995 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
3996
3997         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3998
3999         * docs/manual/intro-motivation.xml:
4000           Fix typos.
4001
4002 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
4003
4004         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4005
4006         * docs/gst/tmpl/gstprobe.sgml:
4007           Fix documentation of probe callback - it is supposed to return
4008           FALSE, not TRUE, to remove data from the stream (#159087).
4009
4010 2004-12-16  Daniel Gazard  <dany42@free.fr>
4011
4012         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4013
4014         * gst/gstelementfactory.c: (gst_element_factory_create):
4015           Fix compile failure if compiling without libxml2 support (#149936).
4016
4017 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4018
4019         * docs/manual/advanced-autoplugging.xml:
4020         * docs/manual/highlevel-components.xml:
4021           Move spider from autoplugging to components. Autoplugging is for
4022           internals, not for solutions. ;-).
4023
4024 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4025
4026         * docs/random/ds/0.9-suggested-changes:
4027           Make note on device/location/uri property names.
4028
4029 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4030
4031         * docs/manual/advanced-autoplugging.xml:
4032         * docs/manual/advanced-clocks.xml:
4033         * docs/manual/advanced-interfaces.xml:
4034         * docs/manual/advanced-metadata.xml:
4035         * docs/manual/advanced-position.xml:
4036         * docs/manual/advanced-schedulers.xml:
4037         * docs/manual/advanced-threads.xml:
4038         * docs/manual/appendix-gnome.xml:
4039         * docs/manual/appendix-programs.xml:
4040         * docs/manual/appendix-quotes.xml:
4041         * docs/manual/autoplugging.xml:
4042         * docs/manual/basics-bins.xml:
4043         * docs/manual/basics-data.xml:
4044         * docs/manual/basics-elements.xml:
4045         * docs/manual/basics-helloworld.xml:
4046         * docs/manual/basics-init.xml:
4047         * docs/manual/basics-pads.xml:
4048         * docs/manual/basics-plugins.xml:
4049         * docs/manual/bins-api.xml:
4050         * docs/manual/bins.xml:
4051         * docs/manual/buffers-api.xml:
4052         * docs/manual/buffers.xml:
4053         * docs/manual/clocks.xml:
4054         * docs/manual/components.xml:
4055         * docs/manual/cothreads.xml:
4056         * docs/manual/debugging.xml:
4057         * docs/manual/dparams-app.xml:
4058         * docs/manual/dynamic.xml:
4059         * docs/manual/elements-api.xml:
4060         * docs/manual/elements.xml:
4061         * docs/manual/factories.xml:
4062         * docs/manual/gnome.xml:
4063         * docs/manual/goals.xml:
4064         * docs/manual/helloworld.xml:
4065         * docs/manual/helloworld2.xml:
4066         * docs/manual/highlevel-components.xml:
4067         * docs/manual/highlevel-xml.xml:
4068         * docs/manual/init-api.xml:
4069         * docs/manual/intro-basics.xml:
4070         * docs/manual/intro-motivation.xml:
4071         * docs/manual/intro-preface.xml:
4072         * docs/manual/intro.xml:
4073         * docs/manual/links-api.xml:
4074         * docs/manual/links.xml:
4075         * docs/manual/manual.xml:
4076         * docs/manual/motivation.xml:
4077         * docs/manual/pads-api.xml:
4078         * docs/manual/pads.xml:
4079         * docs/manual/plugins-api.xml:
4080         * docs/manual/plugins.xml:
4081         * docs/manual/programs.xml:
4082         * docs/manual/queues.xml:
4083         * docs/manual/quotes.xml:
4084         * docs/manual/schedulers.xml:
4085         * docs/manual/states-api.xml:
4086         * docs/manual/states.xml:
4087         * docs/manual/threads.xml:
4088         * docs/manual/typedetection.xml:
4089         * docs/manual/win32.xml:
4090         * docs/manual/xml.xml:
4091           Try 2. This time, include a short preface as a "general
4092           introduction", also add code blocks around all code samples
4093           so they get compiled. We still need a way to tell readers
4094           the filename of the code sample. In some cases, don't show
4095           all code in the documentation, but do include it in the generated
4096           code. This allows for focussing on specific bits in the docs,
4097           while still having a full test application available.
4098         * examples/manual/Makefile.am:
4099           Fix up examples for new ADM. Add several of the new examples that
4100           were either added or were missing from the build system.
4101         * examples/manual/extract.pl:
4102           Allow nameless blocks.
4103
4104 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4105
4106         * docs/manual/elements-api.xml:
4107         * docs/manual/helloworld.xml:
4108         * examples/manual/extract.pl:
4109           fix last example.  Add example of adding code blocks that are not
4110           shown in docbook output.
4111
4112 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4113
4114         * docs/manual/dynamic.xml:
4115         * docs/manual/elements-api.xml:
4116         * docs/manual/gnome.xml:
4117         * docs/manual/helloworld2.xml:
4118         * docs/manual/init-api.xml:
4119         * docs/manual/queues.xml:
4120         * docs/manual/threads.xml:
4121         * docs/manual/xml.xml:
4122         * examples/manual/extract.pl:
4123           Make it possible to extract example code from separate blocks.
4124           Should make Ronald happy.
4125
4126 2004-12-15  Wim Taymans  <wim@fluendo.com>
4127
4128         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4129         (remove_from_group), (group_elements_set_visited),
4130         (normalize_group), (gst_opt_scheduler_iterate):
4131         Fix bug where a flag was not updated on a decoupled entry point 
4132         because we were just checking the group element list and decoupled
4133         elements are not in that list..
4134
4135 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4136
4137         * docs/manual/advanced-autoplugging.xml:
4138         * docs/manual/advanced-clocks.xml:
4139         * docs/manual/advanced-dparams.xml:
4140         * docs/manual/advanced-interfaces.xml:
4141         * docs/manual/advanced-metadata.xml:
4142         * docs/manual/advanced-position.xml:
4143         * docs/manual/advanced-schedulers.xml:
4144         * docs/manual/advanced-threads.xml:
4145         * docs/manual/appendix-debugging.xml:
4146         * docs/manual/appendix-gnome.xml:
4147         * docs/manual/appendix-programs.xml:
4148         * docs/manual/appendix-quotes.xml:
4149         * docs/manual/appendix-win32.xml:
4150         * docs/manual/autoplugging.xml:
4151         * docs/manual/basics-bins.xml:
4152         * docs/manual/basics-data.xml:
4153         * docs/manual/basics-elements.xml:
4154         * docs/manual/basics-helloworld.xml:
4155         * docs/manual/basics-init.xml:
4156         * docs/manual/basics-pads.xml:
4157         * docs/manual/basics-plugins.xml:
4158         * docs/manual/bins-api.xml:
4159         * docs/manual/bins.xml:
4160         * docs/manual/buffers-api.xml:
4161         * docs/manual/buffers.xml:
4162         * docs/manual/clocks.xml:
4163         * docs/manual/components.xml:
4164         * docs/manual/cothreads.xml:
4165         * docs/manual/debugging.xml:
4166         * docs/manual/dparams-app.xml:
4167         * docs/manual/dynamic.xml:
4168         * docs/manual/elements-api.xml:
4169         * docs/manual/elements.xml:
4170         * docs/manual/factories.xml:
4171         * docs/manual/gnome.xml:
4172         * docs/manual/goals.xml:
4173         * docs/manual/helloworld.xml:
4174         * docs/manual/helloworld2.xml:
4175         * docs/manual/highlevel-components.xml:
4176         * docs/manual/highlevel-xml.xml:
4177         * docs/manual/init-api.xml:
4178         * docs/manual/intro-motivation.xml:
4179         * docs/manual/intro-preface.xml:
4180         * docs/manual/intro.xml:
4181         * docs/manual/links-api.xml:
4182         * docs/manual/links.xml:
4183         * docs/manual/manual.xml:
4184         * docs/manual/motivation.xml:
4185         * docs/manual/pads-api.xml:
4186         * docs/manual/pads.xml:
4187         * docs/manual/plugins-api.xml:
4188         * docs/manual/plugins.xml:
4189         * docs/manual/programs.xml:
4190         * docs/manual/queues.xml:
4191         * docs/manual/quotes.xml:
4192         * docs/manual/schedulers.xml:
4193         * docs/manual/states-api.xml:
4194         * docs/manual/states.xml:
4195         * docs/manual/threads.xml:
4196         * docs/manual/typedetection.xml:
4197         * docs/manual/win32.xml:
4198         * docs/manual/xml.xml:
4199           First try at rewriting the ADM. Needs lotsamore work, but some
4200           parts might already be somewhat useful.
4201         * docs/pwg/advanced-interfaces.xml:
4202           Remove properties interface, it never actually existed (except for
4203           on my HD...).
4204
4205 2004-12-13  David Schleef  <ds@schleef.org>
4206
4207         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
4208         be NULL (bug #160220).
4209
4210 2004-12-13  David Schleef  <ds@schleef.org>
4211
4212         * configure.ac: remove all mmx stuff, because it's not used.
4213         * docs/random/ds/0.9-suggested-changes: additional notes
4214         * include/Makefile.am: we don't use these anymore
4215         * include/mmx.h: remove
4216         * include/sse.h: remove
4217
4218 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4219
4220         * docs/random/mimetypes:
4221           Add FOURCC code for h264 codec (VSSH)
4222           Add alternate FOURCC codes for h263 related codecs
4223
4224 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
4225
4226         * docs/manual/programs.xml:
4227           Added more gst-launch examples.
4228
4229 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4230
4231         * gst/gstqueue.c: (gst_queue_handle_src_query):
4232           Check for availability again.
4233
4234 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4235
4236         * gst/gstcaps.c: (gst_caps_compare_structures):
4237           Simple caps go first. This has the nice side-effect of fixing an
4238           obscure warning.
4239
4240 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4241
4242         * gst/gstversion.h.in:
4243           Protect header.
4244
4245 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4246
4247         * gst/schedulers/gstoptimalscheduler.c:
4248         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
4249         (gst_opt_scheduler_get_wrapper):
4250           When we're recursing into a chain run, only run the directly
4251           related group, not all queued ones. This will fix a possible
4252           deadlock in chains with more than two groups.
4253
4254 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4255
4256         * autogen.sh:
4257           remove patch if autopoint fails
4258
4259 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4260
4261         * docs/gst/gstreamer-sections.txt:
4262           Document Thomas' addition, fix build, make Luis the sheriff happy.
4263
4264 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4265
4266         * gst/gstplugin.c:
4267         * gst/gstplugin.h:
4268           add accessor for version field
4269
4270 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4271
4272         submitted by: Luca Ferretti <elle.uca@infinito.it>
4273
4274         * po/LINGUAS:
4275         * po/it.po:
4276           New tranlation added: Italian
4277
4278 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4279
4280         * gst/gstpad.c: (gst_pad_is_negotiated),
4281         (gst_pad_get_negotiated_caps):
4282           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
4283           it doesn't actually check the contents), so be sure to hand it
4284           a RealPad else we'll crash.
4285
4286 2004-12-03  Wim Taymans  <wim@fluendo.com>
4287
4288         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4289         (gst_queue_link), (gst_queue_handle_src_query):
4290         Reverted to 1.110 until this makes the testsuite and various
4291         apps work.
4292
4293 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
4294
4295         * docs/upload.mak: fix included CVS conflict strings
4296
4297 2004-12-01  William Jon McCann  <mccann@jhu.edu>
4298
4299         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4300
4301         * gst/gstelement.c: (gst_element_error_full):
4302           Use g_error_new_literal because error text may have
4303           percentage signs in it. Fixes #160019.
4304
4305 2004-12-01  Benjamin Otte  <otte@gnome.org>
4306
4307         * gst/elements/gstbufferstore.c:
4308         (gst_buffer_store_add_buffer_func):
4309           don't try to make subbuffers bigger than they can be. (fixes
4310           #159970)
4311
4312 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4313
4314         * docs/gst/gstreamer-sections.txt:
4315         * docs/gst/tmpl/gstvalue.sgml:
4316           Add new function to docs to fix build.
4317
4318 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4319
4320         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
4321         * gst/gstpad.c: (_gst_pad_default_fixate_value),
4322         (_gst_pad_default_fixate_foreach):
4323         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
4324         * gst/gstvalue.h:
4325           Deprecate _type_is_fixed, use _value_is_fixed instead, since
4326           in some cases (arrays), the fixedness depends on the content.
4327         * gst/gstqueue.c: (gst_queue_handle_src_query):
4328           Check for availability before doing something.
4329
4330 2004-11-29  Wim Taymans  <wim@fluendo.com>
4331
4332         * testsuite/threads/Makefile.am:
4333         * testsuite/threads/signals.c: (gst_test_get_type),
4334         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
4335         (gst_test_set_property), (gst_test_get_property),
4336         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
4337         (gst_test_do_prop), (run_thread), (main):
4338         Added a bunch of testcases that show threadsafety bugs in glib.
4339
4340 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
4341
4342         * docs/manual/programs.xml:
4343           Added a first batch of gst-launch examples, as provided by Ronald
4344           and others from the devel-mlist
4345
4346 2004-11-28  Benjamin Otte  <otte@gnome.org>
4347
4348         * gst/gstelement.c: (gst_element_negotiate_pads):
4349           simplify
4350         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
4351         (gst_value_serialize_string), (gst_value_deserialize_string):
4352           add unwrapping of previously wrapped strings. Fix bug in wrapping
4353           while at it.
4354         * testsuite/caps/value_serialize.c: (test1),
4355         (test_string_serialization), (test_string_deserialization), (main):
4356           add tests for string (de)serialization
4357
4358 2004-11-26  Wim Taymans  <wim@fluendo.com>
4359
4360         * testsuite/threads/159566.c: (object_deep_notify), (main):
4361         * testsuite/threads/Makefile.am:
4362         Added testsuite to show bug #159566
4363
4364 2004-11-25  Wim Taymans  <wim@fluendo.com>
4365
4366         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
4367         (gst_thread_child_state_change), (gst_thread_main_loop):
4368         Ref the thread object in the GThread mainloop. Break out of the
4369         thread mainloop if it holds the last ref. This properly exits
4370         the threads when disposing the thread from its own context. It
4371         also avoids possible deadlocks in the dispose function.
4372
4373 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
4374
4375         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
4376         it is necessary to wait.
4377
4378 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4379
4380         * docs/pwg/building-boiler.xml:
4381           Make description somewhat clearer.
4382
4383 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4384
4385         * docs/upload.mak:
4386           Apparently docs changed location on FDO's server.
4387
4388 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4389
4390         * docs/pwg/appendix-checklist.xml:
4391           Add some random notes on things to check when writing an element.
4392           This list can be extended as people see fit.
4393
4394 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
4395
4396         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
4397         (gst_queue_link_src): Allow for renegotiating the caps of the sink
4398         pad. The queue will now wait until it is empty and forward the new
4399         caps to the source.
4400         * gst/gstbin.c (gst_bin_set_element_sched)
4401         (gst_bin_unset_element_sched): Make sure that all elements and
4402         links are registered and unregistered with the scheduler exactly
4403         once. This elaborates on a fix by Benjamin Otte, but
4404         guarantees that decoupled elements are also registered.
4405
4406 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4407
4408         * docs/manual/quotes.xml:
4409           add a quote
4410         * configure.ac:
4411         * gst/gst.c:
4412         * gst/gstinfo.c:
4413           add LIBDIR and move init message higher up so it's at the start
4414
4415 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
4416
4417         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
4418         * gstreamer.spec.in: add fair
4419
4420 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4421
4422         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4423         * gst/elements/gstidentity.c: (gst_identity_class_init):
4424           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
4425           <teuf@gnome.org> (#157263).
4426         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
4427         (gst_type_find_handle_src_query):
4428           Subtract size of internally stored data from position queries.
4429
4430 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
4431
4432         * gst/schedulers/fairscheduler.c:
4433         * gst/schedulers/faircothreads.c:
4434         * gst/schedulers/faircothreads.h:
4435         New cothread based scheduler: Fair scheduler.
4436         * gst/schedulers/gthread-cothreads.h: 
4437         Add the standard #if around the whole file.
4438         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
4439         compilation of the functions defined in this file. This is
4440         necessary to be able to use this file as a normal header.
4441         * gst/schedulers/Makefile.am: Add compiling support for fair
4442         scheduler.
4443         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
4444         scheduler cothreads layer from documentation generation.
4445
4446 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4447
4448         * gst/autoplug/gstspideridentity.c:
4449         (gst_spider_identity_sink_loop_type_finding):
4450           Don't crash if that function is not implemented.
4451
4452 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4453
4454         * docs/pwg/advanced-types.xml:
4455           Another typo.
4456
4457 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4458
4459         * docs/pwg/intro-preface.xml:
4460           Hm, ok, so the brackets weren't really useful...
4461         * docs/pwg/other-ntoone.xml:
4462           Fix embarassing typo.
4463
4464 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4465
4466         * docs/pwg/intro-preface.xml:
4467           Rewrite preface.
4468
4469 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4470
4471         * docs/pwg/advanced-scheduling.xml:
4472         * docs/pwg/advanced-tagging.xml:
4473         * docs/pwg/advanced-types.xml:
4474         * docs/pwg/building-boiler.xml:
4475         * docs/pwg/building-chainfn.xml:
4476         * docs/pwg/building-signals.xml:
4477         * docs/pwg/building-state.xml:
4478         * docs/pwg/building-testapp.xml:
4479         * docs/pwg/intro-basics.xml:
4480         * docs/pwg/other-manager.xml:
4481         * docs/pwg/other-source.xml:
4482           Typo fixes.
4483         * docs/pwg/other-manager.xml:
4484           Add some first content. No example code yet.
4485         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4486           Remove double newlines.
4487
4488 2004-11-04  Wim Taymans  <wim@fluendo.com>
4489
4490         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4491         (remove_from_group), (normalize_group), (group_migrate_connected),
4492         (gst_opt_scheduler_iterate):
4493         * testsuite/schedulers/.cvsignore:
4494         * testsuite/schedulers/Makefile.am:
4495         * testsuite/schedulers/queue_link.c: (main):
4496         Added testcase for scheduler segfault.
4497         Fix scheduler segfault when removing a decoupled
4498         entry point as the last element from a group.
4499
4500 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4501
4502         * gst/gstmarshal.list: add missing marshaller, fixes build
4503
4504 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4505
4506         * docs/random/signal: added notes about using BOXED for GstBuffer
4507         signal marshallers, not POINTER
4508
4509 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4510
4511         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4512         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
4513         POINTER=>BOXED changes to marshal GstBuffers
4514
4515 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4516
4517         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
4518         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
4519
4520 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
4521
4522         * docs/gst/gstreamer-sections.txt:
4523         * docs/gst/tmpl/gstcaps.sgml:
4524         * docs/gst/tmpl/gsterror.sgml:
4525         * docs/gst/tmpl/gstinfo.sgml:
4526         * docs/gst/tmpl/gstmacros.sgml:
4527         * docs/gst/tmpl/gstutils.sgml:
4528         * docs/random/ensonic/interfaces.txt:
4529         * gst/gstinfo.h:
4530           added some more docs, removed two obsolete defines
4531
4532 2004-11-02  Kjartan Maraas <as at gnome.org>
4533
4534         reviewed by: Wim Taymans, Ronald Bultje.
4535
4536         * gst/cothreads.c: (cothread_create):
4537         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
4538         (gst_bin_child_state_change_func):
4539         * gst/gstbuffer.c: (gst_buffer_span):
4540         * gst/gstelement.c: (gst_element_get_index),
4541         (gst_element_get_event_masks), (gst_element_get_query_types),
4542         (gst_element_get_formats):
4543         * gst/gsterror.c: (_gst_core_errors_init),
4544         (_gst_library_errors_init), (_gst_resource_errors_init),
4545         (_gst_stream_errors_init):
4546         * gst/gstobject.c: (gst_object_default_deep_notify):
4547         * gst/gstpad.c: (gst_pad_get_event_masks),
4548         (gst_pad_get_internal_links_default):
4549         * gst/gstplugin.c: (gst_plugin_register_func),
4550         (gst_plugin_get_module):
4551         * gst/gststructure.c: (gst_structure_get_string),
4552         (gst_structure_get_abbrs), (gst_structure_from_abbr),
4553         (gst_structure_to_abbr):
4554         * gst/gstutils.c: (gst_print_element_args):
4555         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4556         (setup_group_scheduler), (gst_opt_scheduler_iterate):
4557         Aplied part of patch #157127: Cleanup of issues reported by 
4558         sparse.
4559         Also do not try to use cothreads when there is no cothread
4560         context yet.
4561
4562 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
4563
4564         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4565         (gst_opt_scheduler_iterate):
4566         Applied patch #154061. Running a pipeline in which an element 
4567         calls GST_ELEMENT_ERROR in the chain function, the opt 
4568         scheduler doesn't unref the chain so it never gets freed.
4569
4570 2004-11-02  Wim Taymans  <wim@fluendo.com>
4571
4572         * gst/gststructure.c: (gst_structure_get_abbrs),
4573         (gst_structure_from_abbr), (gst_structure_to_abbr):
4574         Remove that ugly if-then thing in the code that converts
4575         between strings and types.
4576
4577 2004-11-02  Wim Taymans  <wim@fluendo.com>
4578
4579         * gst/gstscheduler.c: (gst_scheduler_add_element),
4580         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
4581         Aplied clock distribution patch, this should fix bug
4582         #148787.
4583
4584 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
4585
4586         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
4587
4588         * po/LINGUAS:
4589         * po/nb.po:
4590           Added Norwegian Bokmaal translation
4591
4592 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4593
4594         * tools/gst-inspect.c: (print_signal_info):
4595           print signal arguments as pointers if they are
4596
4597 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
4598
4599         * docs/pwg/building-boiler.xml:
4600           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
4601
4602 2004-10-19  Wim Taymans  <wim at fluendo dot com>
4603
4604         * gst/parse/parse.l:
4605         * testsuite/parse/parse1.c: (main):
4606         Since parse can do 'element name=a:b' make 'a:b.' work as
4607         well. 
4608         Added testcase to verify fix.
4609
4610 2004-10-19  Wim Taymans  <wim at fluendo dot com>
4611
4612         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
4613         Use the realpad when printing the direction.
4614         Add extra \n when printing extensions of typefind factories.
4615
4616 2004-10-13  David Schleef  <ds@schleef.org>
4617
4618         * examples/manual/Makefile.am: $< isn't portable in Makefile
4619         rules.
4620
4621 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
4622
4623         * docs/gst/tmpl/gstobject.sgml:
4624         * docs/gst/tmpl/gstplugin.sgml:
4625         * docs/gst/tmpl/gstpluginfeature.sgml:
4626         * docs/gst/tmpl/gstregistry.sgml:
4627         * docs/gst/tmpl/gstversion.sgml:
4628         * gst/gstbin.c:
4629           more api documentation
4630         * gst/gstplugin.c: (gst_plugin_register_func),
4631         (gst_plugin_check_file), (gst_plugin_load_file):
4632           better error signaling and logging
4633
4634 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4635
4636         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
4637           Subtract current queue contents from position queries.
4638
4639 2004-10-11  Johan Dahlin  <johan@gnome.org>
4640
4641         * gst/gsturi.c (gst_uri_get_location): unescape string
4642         (gst_uri_construct): escape string.
4643
4644 2004-10-11  Benjamin Otte  <otte@gnome.org>
4645
4646         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
4647         (gst_pad_try_set_caps_nonfixed):
4648           allow renegotiation of unconnected pads (as inside spider). Simply
4649           return OK if unconnected - mimic try_set_caps there.
4650
4651 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4652
4653         * gst/gstbin.c: (gst_bin_sync_children_state):
4654           Add missing break.
4655
4656 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4657
4658         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
4659         Set element to EOS before sending EOS event
4660
4661 2004-10-08  Wim Taymans  <wim at fluendo dot com>
4662
4663         * gst/elements/gsttypefindelement.c:
4664         (gst_type_find_element_handle_event):
4665         Handle EOS events when doing the transition from
4666         typefind to data passing. This should fix the
4667         infinite loops in short files.
4668
4669 2004-10-07  Wim Taymans  <wim at fluendo dot com>
4670
4671         * gst/gstthread.c: (gst_thread_change_state),
4672         (gst_thread_child_state_change):
4673         Make sure no iteration happens while performing
4674         the state change as it could mess up the internal
4675         consistency of the thread state.
4676
4677 2004-10-07  Wim Taymans  <wim at fluendo dot com>
4678
4679         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
4680         (gst_thread_change_state), (gst_thread_child_state_change):
4681         Do not try to grab the iterate lock in the state change method
4682         when we are in the same thread as the iterate or else we
4683         could deadlock. Some other cleanups.
4684
4685 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4686
4687         * configure.ac:
4688           bump nano to cvs
4689
4690 === release 0.8.7 ===
4691
4692 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4693
4694         * configure.ac:
4695         * NEWS:
4696         * RELEASE:
4697         * configure.ac:
4698           releasing 0.8.7, "A Cruise"
4699
4700 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4701
4702         * docs/random/mimetypes:
4703         Add an entry for Sony ATRAC3 audio format with mime-type
4704         used by rmdemux et riff-read
4705
4706 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4707
4708         * gst/elements/gsttypefindelement.c: (stop_typefinding):
4709         Push the buffer store instead of clearing it in case that
4710         the stream is not seekable.
4711
4712 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4713
4714         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
4715         (gst_thread_main_loop):
4716         Lock the iteration and the state change so that automatic
4717         negotiation and fixation does not happen at the same time
4718         as the in stream negotiation.
4719
4720 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4721
4722         * configure.ac:
4723           bump nano to cvs
4724
4725 === release 0.8.6 ===
4726
4727 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4728
4729         * configure.ac:
4730         * NEWS:
4731         * RELEASE:
4732         * configure.ac:
4733           releasing 0.8.6, "Narc"
4734
4735 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4736
4737         * configure.ac:
4738           prerel bump
4739
4740 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4741
4742         patch by: Steve Lhomme
4743
4744         * gst/elements/gstfakesrc.c:
4745         * gst/elements/gstidentity.c:
4746         * gst/gstthread.c:
4747           Fix for #153881
4748
4749 2004-10-01  Wim Taymans  <wim at fluendo dot com>
4750
4751         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
4752         Fix threadsafety of the crc checking function.
4753
4754 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4755
4756         patch by: Ronald Bultje
4757
4758         * gst/elements/gsttypefindelement.c: (stop_typefinding),
4759         (gst_type_find_element_handle_event),
4760         (gst_type_find_element_chain):
4761         * gst/elements/gsttypefindelement.h:
4762          #153657.
4763          Filter out discont event from seekable sources when typefind
4764          asks them to seek.  Fixes typefind with demuxers for
4765          avi, asf and matroska.
4766
4767 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4768
4769         * docs/gst/gstreamer-sections.txt:
4770         * gst/gstcaps.c:
4771         * gst/gstcaps.h:
4772         * gst/gstpad.c:
4773           Revert preferred caps: (#147789)
4774
4775 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
4776
4777         * win32/dirent.c:
4778           fix a memory leak
4779
4780 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4781
4782         * configure.ac:
4783           bump for prerelease
4784
4785 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4786
4787         * docs/Makefile.am:
4788         * docs/manual/elements-api.xml:
4789           restructure so that common stuff is shown first
4790         * docs/manual/init-api.xml:
4791           convert to examples
4792         * docs/manual/manual.xml:
4793         * docs/manuals.mak:
4794         * docs/url.entities:
4795           link to API on the website, possibly override later in build
4796         * examples/manual/.cvsignore:
4797           ignore more
4798         * examples/manual/Makefile.am:
4799           add more examples
4800         * examples/manual/extract.pl:
4801           error out on failure
4802
4803 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4804
4805         * docs/gst/tmpl/gstthread.sgml:
4806         * docs/manual/init-api.xml:
4807         * examples/manual/Makefile.am:
4808           convert two code bits to examples
4809
4810 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4811
4812         * gst/gstelement.c: (gst_element_change_state):
4813           Well, actually, I was about to remove this insane assert when
4814           I noticed Wim already did that. A warning is nice so we can
4815           fix actual ugs (using --g-fatal-warnings and backtraces), so
4816           I added that instead.
4817
4818 2004-09-06  Wim Taymans  <wim@fluendo.com>
4819
4820         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
4821         (gst_element_threadsafe_properties_post_run),
4822         (gst_element_set_state), (gst_element_change_state):
4823         Added extra refcounting around various places. 
4824
4825 2004-09-06  Wim Taymans  <wim@fluendo.com>
4826
4827         * gst/gstpad.c: (gst_pad_link_call_link_functions):
4828         Fix debug info.
4829
4830 2004-09-06  Wim Taymans  <wim@fluendo.com>
4831
4832         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4833         (remove_from_group):
4834         Some more debug info.
4835
4836 2004-09-03  Wim Taymans  <wim@fluendo.com>
4837
4838         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4839         (gst_fakesrc_init), (gst_fakesrc_set_clock),
4840         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4841         (gst_fakesrc_get), (gst_fakesrc_change_state):
4842         * gst/elements/gstfakesrc.h:
4843         * gst/elements/gstidentity.c: (gst_identity_class_init),
4844         (gst_identity_init), (gst_identity_chain),
4845         (gst_identity_set_property), (gst_identity_get_property),
4846         (gst_identity_change_state):
4847         * gst/elements/gstidentity.h:
4848         Added datarate properties to limit the datarate.
4849
4850 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4851
4852         * gst/autoplug/gstspider.c: (plugin_init):
4853           don't set a rank. We don't want to autoplug by inserting spiders.
4854
4855 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4856
4857         * gst/autoplug/gstspider.c: (gst_spider_class_init),
4858         (gst_spider_identity_plug):
4859           add a template for spider's sink
4860         * gst/gst.c: (gst_register_core_elements):
4861           queue's rank should be NULL, we don't want spider to add it.
4862
4863 2004-08-18  David Schleef  <ds@schleef.org>
4864
4865         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
4866         * docs/libs/Makefile.am: same
4867         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
4868         * docs/random/ds/0.9-planning: random additions
4869         * docs/random/ds/0.9-suggested-changes: same
4870         * gst/gstxml.h: remove vestigal GstXMLNs definition
4871
4872         Preferred caps: (#147789)
4873         * docs/gst/gstreamer-sections.txt: Add symbols
4874         * docs/gst/tmpl/gstcaps.sgml: Add symbols
4875         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
4876         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
4877         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
4878         (gst_caps_get_preferred), (gst_caps_set_preferred),
4879         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
4880         (gst_caps_use_preferred): Handle caps preferences
4881         * gst/gstcaps.h: Add caps preferences
4882         * gst/gstpad.c: (gst_pad_link_get_preferred),
4883         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
4884         (gst_pad_renegotiate), (gst_pad_guess_preferred),
4885         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
4886         negotiation.
4887
4888 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4889
4890         * gst/autoplug/gstspideridentity.c:
4891         (gst_spider_identity_request_new_pad):
4892         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
4893         (gst_aggregator_init):
4894         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4895         (gst_fakesink_init):
4896         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4897         (gst_fakesrc_init):
4898         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
4899         (gst_fdsink_init):
4900         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
4901         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
4902         (gst_filesink_init):
4903         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4904         (gst_filesrc_init):
4905         * gst/elements/gstidentity.c: (gst_identity_base_init),
4906         (gst_identity_init):
4907         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
4908         (gst_multifilesrc_init):
4909         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
4910         (gst_pipefilter_init):
4911         * gst/elements/gststatistics.c: (gst_statistics_base_init),
4912         (gst_statistics_init):
4913         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
4914         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
4915           s/gst_pad_new/&_from_template/
4916           register pad templates in the base_init function
4917           add static pad template definitions
4918
4919 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4920
4921         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
4922         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
4923         * testsuite/refcounting/pad.c: (main):
4924         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
4925           s/gst_pad_new/&_from_template/
4926           prepare deprecation of gst_pad_new
4927
4928 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
4929
4930         patch by: Luca Ognibene <skaboy81@virgilio.it>
4931
4932         * gst/gstcaps.c:
4933         * gst/gstelement.c:
4934         * gst/gstpad.c:
4935         * gst/gstxml.c:
4936           fix memleaks.  Fixes #150001
4937
4938 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4939
4940         * docs/random/ds/0.9-suggested-changes:
4941           add notes - mostly about pad templates
4942
4943 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
4944
4945         * win32/GStreamer.vcproj:
4946           temporary locale files are .gmo not .mo
4947
4948 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4949
4950         * configure.ac: bump nano to cvs
4951
4952 === release 0.8.5 ===
4953
4954 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4955
4956         * configure.ac:
4957           releasing 0.8.5, "Stuttgart"
4958         * NEWS:
4959         * RELEASE:
4960         * configure.ac:
4961         * docs/random/release:
4962           updates for release
4963
4964 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4965
4966         patch by: Wim Taymans (wim@fluendo.com)
4967
4968         * gst/gstbuffer.c:
4969         * gst/gstindex.h:
4970         * libs/gst/dataprotocol/dataprotocol.c:
4971           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
4972
4973 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4974
4975         * Makefile.am:
4976         * win32/MANIFEST:
4977           add win32 dir to the build.  Fixes #149981.
4978
4979 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4980
4981         * configure.ac:
4982           bump libtool versioning
4983         * gst/gststructure.c:
4984           mark function as static
4985         * po/af.po:
4986         * po/az.po:
4987         * po/ca.po:
4988         * po/cs.po:
4989         * po/en_GB.po:
4990         * po/fr.po:
4991         * po/nl.po:
4992         * po/sq.po:
4993         * po/sr.po:
4994         * po/sv.po:
4995         * po/tr.po:
4996         * po/uk.po:
4997           translations update
4998         * win32/README.txt:
4999           trademark protection
5000
5001 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5002
5003         * configure.ac:
5004           fix GST_ORIGIN
5005           set GST_PACKAGE to source, and distinguish between release and other
5006         * tools/gst-inspect.c:
5007           print out plugin an element factory is part of so we see this info
5008
5009 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5010
5011         * docs/gst/gstreamer-sections.txt:
5012         * docs/gst/tmpl/gstbuffer.sgml:
5013         * docs/gst/tmpl/gstschedulerfactory.sgml:
5014           reorder docs a little, make GstBuffer's more sensible.
5015         * gst/gstbuffer.h:
5016           API: added GST_BUFFER_FLAG_DELTA_UNIT
5017         * gst/gstscheduler.c:
5018           comment API addition
5019
5020 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5021
5022         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
5023           work with non-regular files that can be mmapped (like /dev/zero)
5024         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
5025           get rid of typefinds that require a seek when we can't seek instead
5026           of trying them over and over again
5027         * tools/gst-launch.c: (idle_func), (error_cb), (main):
5028           return non-zero failure value when the pipeline was interrupted or
5029           an error occurred
5030
5031 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5032
5033         * win32/config.h:
5034         * win32/GStreamer.vcproj:
5035           compile and install the locales
5036
5037 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5038
5039         * gst/gstvalue.c:
5040           fix a possible memory leak under Windows
5041
5042 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5043
5044         * win32/GStreamer.vcproj:
5045           fix a memory leak that occured under Windows
5046         * win32/gstreamer.def:
5047           add gst_scheduler_register
5048
5049 2004-08-11  Benjamin Otte  <otte@gnome.org>
5050
5051         * docs/gst/gstreamer-sections.txt:
5052         * gst/gstscheduler.c: (gst_scheduler_register):
5053         * gst/gstscheduler.h:
5054           API:
5055           add gst_scheduler_register shortcut similar to gst_element_register
5056         * gst/schedulers/entryscheduler.c: (plugin_init):
5057         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
5058         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
5059           use it
5060
5061 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
5062
5063         * gst/gstvalue.h:
5064           fix a memory leak that occured under Windows
5065
5066 2004-08-10  Colin Walters  <walters@redhat.com>
5067
5068         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
5069         Don't use O_EXCL to open temporary registry.  It will prevent
5070         registry creation if a temporary one already exists, which
5071         is unnecessary.
5072
5073 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5074
5075         * docs/gst/gstreamer-sections.txt:
5076         * docs/gst/tmpl/gstvalue.sgml:
5077           remove some valuable stuff from the documentation due to the use of GST_EXPORT
5078
5079 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5080
5081         * win32/gstbytestream.vcproj:
5082         * win32/gstelements.vcproj:
5083         * win32/gstgetbits.vcproj:
5084         * win32/gst-inspect.vcproj:
5085         * win32/gst-launch.vcproj:
5086         * win32/gstoptimalscheduler.vcproj:
5087         * win32/GStreamer.vcproj:
5088         * win32/gst-register.vcproj:
5089         * win32/gstspider.vcproj:
5090           update the include and lib dirs to fit standard libraries as
5091           described in the Win32 manual
5092
5093 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5094
5095         * win32/config.h:
5096         * win32/gstversion.h:
5097           enable NLS again, push the version number for the coming 0.8.5 release
5098
5099 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5100
5101         * gst/gstvalue.h:
5102           export gst_type_XXX for windows DLLs
5103
5104 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5105
5106         * docs/faq/gst-uninstalled:
5107           fix PKG_CONFIG_PATH and PYTHONPATH
5108         * gst/schedulers/Makefile.am:
5109           cleanup
5110         * libs/gst/bytestream/bytestream.c:
5111           remove newline
5112         * po/LINGUAS:
5113         * po/sq.po:
5114           adding Albanian translation (Laurent Dhima)
5115         * po/cs.po:
5116           updated
5117
5118 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5119
5120         * po/ca.po:
5121         * po/sv.po:
5122           updated translations
5123
5124 2004-08-04  Benjamin Otte  <otte@gnome.org>
5125
5126         * tests/mass_elements.c: (main):
5127           allow specifying src and sink element explicitly, so I can test
5128           videotestsrc instead of fakesrc
5129
5130 2004-08-04  Benjamin Otte  <otte@gnome.org>
5131
5132         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
5133         (gst_structure_id_empty_new), (gst_structure_empty_new),
5134         (gst_structure_copy):
5135           add gst_structure_id_empty_new_with_size to allow preallocating
5136           value array sizes. Use this in gst_structure_copy to get rid of
5137           reallocs.
5138           don't do quark=>string=>quark when copying structures
5139
5140 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
5141
5142         * docs/manual/win32.xml:
5143         * win32/README.txt:
5144           update documentation with the clean version of dependencies
5145
5146 2004-08-03  Benjamin Otte  <otte@gnome.org>
5147
5148         * gst/schedulers/entryscheduler.c:
5149         (gst_entry_scheduler_remove_element):
5150           fix for GST_DISABLE_DEBUG
5151         * tools/gst-launch.c: (print_tag):
5152           fixes for G_DISABLE_ASSERT
5153
5154 2004-08-03  Benjamin Otte  <otte@gnome.org>
5155
5156         * gst/gst.c: (gst_register_core_elements):
5157           fix for G_DISABLE_ASSERT
5158         * gst/gstinfo.c: (__gst_in_valgrind):
5159           add for GST_DISABLE_DEBUG
5160
5161 2004-08-03  Benjamin Otte  <otte@gnome.org>
5162
5163         * gst/parse/parse.l:
5164           fix for G_DISABLE_ASSERT
5165
5166 2004-08-03  Wim Taymans  <wim@fluendo.com>
5167
5168         * gst/gstbin.c: (gst_bin_get_type),
5169         (gst_bin_child_state_change_func):
5170         * gst/gstthread.c: (gst_thread_change_state):
5171         Backported some debug logging from a reverted patch
5172         Don't try to destroy the thread twice. Added some more
5173         debugging in GstThread. Unlock and signal even if we
5174         are in the thread context.
5175
5176 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5177
5178         * po/uk.po:
5179           updated translation
5180
5181 2004-07-30  David Schleef  <ds@schleef.org>
5182
5183         * gst/gstatomic_impl.h: Enable atomic code for x86_64
5184
5185 2004-07-29  David Schleef  <ds@schleef.org>
5186
5187         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
5188         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
5189
5190 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
5191
5192         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
5193         (gst_bin_add_func), (gst_bin_remove_func),
5194         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
5195         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
5196         (gst_bin_change_state_norecurse), (gst_bin_dispose),
5197         (gst_bin_sync_children_state):
5198         * gst/gstbin.h:
5199         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
5200         (gst_thread_change_state):
5201         * testsuite/states/Makefile.am:
5202           revert state change patches as agreed so we can rework them
5203           gradually
5204
5205 2004-07-29  Benjamin Otte  <otte@gnome.org>
5206
5207         * libs/gst/control/Makefile.am:
5208           link to libgstreamer (fixes Debian bug 262019, see
5209           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
5210
5211 2004-07-29  Wim Taymans  <wim@fluendo.com>
5212
5213         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
5214         (check_from_fraction_convert), (transform_test), (main):
5215         Make the test less pedantic about float roundoff errors.
5216
5217 2004-07-29  Benjamin Otte  <otte@gnome.org>
5218
5219         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
5220         (gst_filesrc_srcpad_event):
5221           make seek events to before start/after end of file not fail, but
5222           seek to start/end instead
5223         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
5224           add more output
5225
5226 2004-07-29  Benjamin Otte  <otte@gnome.org>
5227
5228         * gst/gstpad.c: (gst_pad_set_explicit_caps):
5229           check that caps are fixed
5230         * gst/gstpad.c: (gst_pad_template_new):
5231           don't try to simplify caps, costs too much time on gst_init
5232         * gst/gstplugin.c: (gst_plugin_add_feature):
5233           G_ERROR if features are added twice
5234         * gst/gsttypefind.c: (gst_type_find_register):
5235         * gst/gstelementfactory.c: (gst_element_register):
5236           don't add features twice
5237         * docs/random/ds/0.9-suggested-changes:
5238           add note about possible gst_init optimization
5239
5240 2004-07-28  David Schleef  <ds@schleef.org>
5241
5242         * testsuite/elements/Makefile.am:
5243         * testsuite/elements/struct_i386.h:
5244         * testsuite/elements/struct_size.c: (main):  A little test
5245         to keep distcheck from working if someone changes a structure
5246         size accidentally.
5247
5248 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5249
5250         * docs/libs/Makefile.am:
5251         * docs/libs/gstreamer-libs-docs.sgml:
5252         * docs/libs/gstreamer-libs-sections.txt:
5253         * docs/libs/tmpl/gstbytestream.sgml:
5254         * docs/libs/tmpl/gstcontrol.sgml:
5255         * docs/libs/tmpl/gstdataprotocol.sgml:
5256         * docs/libs/tmpl/gstgetbits.sgml:
5257         * libs/gst/bytestream/Makefile.am:
5258         * libs/gst/bytestream/bytestream.c:
5259         * libs/gst/bytestream/bytestream.h:
5260         * libs/gst/control/Makefile.am:
5261         * libs/gst/dataprotocol/Makefile.am:
5262         * libs/gst/getbits/Makefile.am:
5263         * libs/gst/getbits/getbits.h:
5264           various doc and style fixes, adding bytestream to libs docs.
5265
5266 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5267
5268         * docs/gst/gstreamer-docs.sgml:
5269         * docs/libs/Makefile.am:
5270         * docs/libs/gstreamer-libs-docs.sgml:
5271         * docs/libs/gstreamer-libs-sections.txt:
5272         * libs/gst/control/dparam.c:
5273           more doc fixes.  gst-libs docs now build the same way as gst.
5274
5275 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5276
5277         * configure.ac:
5278         * testsuite/Makefile.am:
5279         * testsuite/bins/Makefile.am:
5280         * testsuite/caps/Makefile.am:
5281         * testsuite/cleanup/Makefile.am:
5282         * testsuite/clock/Makefile.am:
5283         * testsuite/debug/Makefile.am:
5284         * testsuite/dlopen/Makefile.am:
5285         * testsuite/dynparams/Makefile.am:
5286         * testsuite/elements/.cvsignore:
5287         * testsuite/elements/Makefile.am:
5288         * testsuite/enumcaps/Makefile.am:
5289         * testsuite/enumcaps/enumcaps.c:
5290         * testsuite/ghostpads/Makefile.am:
5291         * testsuite/indexers/Makefile.am:
5292         * testsuite/negotiation/Makefile.am:
5293         * testsuite/parse/Makefile.am:
5294         * testsuite/plugin/Makefile.am:
5295         * testsuite/refcounting/Makefile.am:
5296         * testsuite/schedulers/.cvsignore:
5297         * testsuite/states/Makefile.am:
5298         * testsuite/tags/Makefile.am:
5299         * testsuite/threads/Makefile.am:
5300           fold enumcaps into caps dir
5301           clean up Makefile.am's for testsuite
5302
5303 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5304
5305         * docs/gst/Makefile.am:
5306         * docs/libs/Makefile.am:
5307           clean up docs build.  Fixes needless rebuilding of template files.
5308
5309 2004-07-28  Wim Taymans  <wim@fluendo.com>
5310
5311         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
5312         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
5313         Make sure that a bin state change tries to keep the children
5314         in sync. 
5315         Added debug logging to the thread.
5316
5317 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
5318
5319         * win32/GStreamer.vcproj:
5320         * win32/gstreamer.def:
5321           more exports for the plugins
5322
5323 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
5324
5325         * win32/gstgetbits.vcproj:
5326         * win32/gstgetbits.def:
5327         * win32/msvc71.sln:
5328           add support for the getbits plugin
5329
5330 2004-07-27  Wim Taymans  <wim@fluendo.com>
5331
5332         * gst/gstvalue.c: (gst_value_transform_double_fraction),
5333         (gst_value_transform_fraction_double), (_gst_value_initialize):
5334         * testsuite/caps/Makefile.am:
5335         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
5336         (check_from_fraction_convert), (transform_test), (main):
5337         Added transform functions between double and fraction.
5338         Added testcase to verify transforms
5339
5340 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5341
5342         * win32/GStreamer.vcproj:
5343           rename GStreamer-0.8.lib to libgstreamer.lib
5344
5345 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5346
5347         * win32/gstelements.vcproj:
5348         * win32/gstoptimalscheduler.vcproj:
5349           fixes for the Release build
5350
5351 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5352
5353         * win32/config.h:
5354           update the version number
5355
5356 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5357
5358         * win32/GStreamer.vcproj:
5359           add gstinterface to the build
5360
5361 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5362
5363         * win32/gstreamer.def:
5364           add many definitions needed by plugins,
5365           GST_CAT_DEFAULT only available in the Debug build ?
5366
5367 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5368
5369         * gst/gstelement.c: (gst_element_set_eos_recursive):
5370           various whitespace fixes.
5371           doc fix, fixes #148497
5372
5373 2004-07-25  Benjamin Otte  <otte@gnome.org>
5374
5375         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
5376           don't delay links on the sink elements, it causes unnegotiated
5377           links.
5378         * gst/elements/gsttypefindelement.c:
5379         (gst_type_find_element_base_init):
5380           add our padtemplates, we indeed do have some.
5381         * gst/elements/gsttypefindelement.c:
5382         (gst_type_find_element_handle_event),
5383         (gst_type_find_element_chain):
5384           don't push data when typefinding failed.
5385         * gst/gstpad.c: (gst_pad_link_fixate):
5386           check that no fixate function returns empty caps.
5387         * gst/gstpad.c: (gst_pad_push):
5388           check that the link is negotiated before data gets pushed.
5389         * tools/gst-register.c: (main):
5390           don't assert (fixes #148283)
5391
5392 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5393
5394         * docs/gst/gstreamer-sections.txt:
5395         * docs/gst/tmpl/gstconfig.sgml:
5396           add GST_PLUGIN_EXPORT definition
5397
5398 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5399
5400         * gst/gstplugin.h:
5401         * gst/gstconfig.h.in:
5402         * win32/gstconfig.h:
5403         * win32/gstelements.def:
5404         * win32/gstelements.vcproj:
5405         * win32/gstoptimalscheduler.def:
5406         * win32/gstoptimalscheduler.vcproj:
5407         * win32/gstspider.def:
5408         * win32/gstspider.vcproj:
5409           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
5410
5411 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5412
5413         * docs/gst/gstreamer-sections.txt:
5414           remove GST_CAT_DEFAULT because the type has changed
5415
5416 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5417
5418         * win32/gstbytestream.vcproj:
5419         * win32/gstelements.vcproj:
5420         * win32/gst-inspect.vcproj:
5421         * win32/gst-launch.vcproj:
5422         * win32/gstoptimalscheduler.vcproj:
5423         * win32/GStreamer.vcproj:
5424         * win32/gst-register.vcproj:
5425         * win32/gstspider.vcproj:
5426         * win32/msvc71.sln:
5427           Copy the files where needed after building, The testsuite will be
5428           built separately
5429
5430 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5431
5432         * win32/config.h:
5433         * win32/README.txt:
5434         * docs/manual/win32.xml:
5435         Fixed the plugin and GStreamer location
5436
5437 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5438
5439         * win32/gstreamer.def:
5440         More exports for the plugins
5441
5442 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5443
5444         * gst/gstinfo.h:
5445         Marc was right, we need to export literally GST_CAT_DEFAULT
5446
5447 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5448
5449         * win32/config.h:
5450         NLS crashes in gettext, disabled until this is solved
5451
5452 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5453
5454         * win32/gst-inspect.vcproj:
5455         * win32/gst-launch.vcproj:
5456         Should use NLS when available
5457
5458 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5459
5460         * gst/registries/gstxmlregistry.c:
5461         removing the file doesn't seem to be a good idea on Linux
5462
5463 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5464
5465         * gst/registries/gstxmlregistry.c:
5466         Remove the registry before renaming the tempfile (needed for Windows)
5467
5468 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5469
5470         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
5471         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
5472         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
5473         * gst/elements/gstmultifilesrc.h:
5474         Added newmedia property so it generates newmedia events between each
5475         file when property is set, as well as fixed eos handling
5476
5477 2004-07-22  David Schleef  <ds@schleef.org>
5478
5479         * gst/gststructure.c: (gst_structure_id_empty_new),
5480         (gst_structure_empty_new):  Set type field correctly.
5481         * gst/gststructure.h: Check type field correctly.
5482         * testsuite/caps/Makefile.am:
5483         * testsuite/caps/structure.c: (test1), (main): Add a very small
5484         test for structures.
5485
5486 2004-07-22  David Schleef  <ds@schleef.org>
5487
5488         * docs/random/ds/0.9-suggested-changes: more comments
5489         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
5490
5491 2004-07-22  Benjamin Otte  <otte@gnome.org>
5492
5493         * gst/gstelementfactory.c: (gst_element_register):
5494           set the factory in the class struct, so gst_element_get_factory
5495           actually works
5496         * gst/parse/grammar.y:
5497           set element to playing when it gets unlocked as we can't rely on the
5498           bin state - all elements in the bin state might still be locked in
5499           NULL)
5500
5501 2004-07-22  Benjamin Otte  <otte@gnome.org>
5502
5503         * gst/gstelement.c: (gst_element_set_state_func):
5504           make this a static function
5505
5506 2004-07-22  Wim Taymans  <wim@fluendo.com>
5507
5508         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
5509         (gst_opt_scheduler_pad_link):
5510         fix 147894-2 and the group_link problem.
5511
5512 2004-07-22  Wim Taymans  <wim@fluendo.com>
5513
5514         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
5515         (handoff_identity), (main):
5516         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5517         (handoff_identity), (main):
5518         * testsuite/schedulers/Makefile.am:
5519         * testsuite/schedulers/group_link.c: (main):
5520         Show bug in scheduler when linking chain and loop based element 
5521         where the chain based element was not yet in a group.
5522
5523 2004-07-21  Benjamin Otte  <otte@gnome.org>
5524
5525         * gst/.cvsignore:
5526         * gst/autoplug/.cvsignore:
5527         * gst/elements/.cvsignore:
5528         * gst/indexers/.cvsignore:
5529         * libs/gst/bytestream/.cvsignore:
5530         * libs/gst/control/.cvsignore:
5531         * libs/gst/getbits/.cvsignore:
5532         * testsuite/states/.cvsignore:
5533         * testsuite/threads/.cvsignore:
5534           keep this up to date, since I seem to be the only one who cares
5535           about not missing files on commits (editor's note: no you don't,
5536           but feel free to change them at the time you add stuff instead
5537           of later on)
5538
5539 2004-07-21  Benjamin Otte  <otte@gnome.org>
5540
5541         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
5542         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
5543         (gst_bin_child_state_change_func), (set_kid_state_func),
5544         (gst_bin_set_state), (gst_bin_change_state_norecurse):
5545           make state changes work correctly and reentrant (so removing
5546           elements from bins during state changes of bins doesn't cause
5547           segfaults or even wrong states)
5548           add debugging category and debugging output to print children states
5549         * gst/gstbin.c: (gst_bin_dispose): 
5550           add some assertion checks
5551         * gst/gstbin.h:
5552         * gst/gstbin.c: (gst_bin_sync_children_state):
5553           deprecate this function - it just does gst_bin_set_state (bin,
5554           GST_STATE (bin)) 
5555         * testsuite/threads/queue.c: (main):
5556           don't use gst_bin_sync_children_state anymore
5557         * testsuite/states/Makefile.am:
5558         * testsuite/states/bin.c:
5559           test that the state changes of bins work as expected
5560         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
5561           some adjustments to change states correctly, too
5562         * gst/gstthread.c: (gst_thread_change_state):
5563           don't enable/disable "threadsafe" properties, they're unused and
5564           cause random segfaults
5565         * testsuite/threads/Makefile.am:
5566           the queue check randomly passes now, ignore it
5567
5568 2004-07-21  Benjamin Otte  <otte@gnome.org>
5569
5570         * gst/gstpad.c:
5571           check if data is NULL before outputting debug info. (fixes #145100)
5572
5573 2004-07-21  Benjamin Otte  <otte@gnome.org>
5574
5575         * gst/schedulers/entryscheduler.c:
5576         (gst_entry_scheduler_loop_wrapper),
5577         (gst_entry_scheduler_chain_wrapper),
5578         (gst_entry_scheduler_get_wrapper):
5579           reset the state when the cothread starts, so we don't get assertion
5580           failures on restarting of cothreads
5581
5582 2004-07-20  Benjamin Otte  <otte@gnome.org>
5583
5584         * gst/gstelement.c: (gst_element_link_pads_filtered):
5585           use correct sinkpad, if only sinkpad is specified, but not srcpad
5586           (fixes #147889)
5587         * gst/gstelement.c: (gst_element_set_state_func),
5588         (gst_element_change_state): ref/unref the element, signal handlers
5589         could get rid of the element otherwise
5590
5591 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
5592
5593         * docs/random/ds/0.9-suggested-changes:
5594           Make note about renaming fixed-list to array.
5595         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
5596         (_gst_value_initialize):
5597           Add array intersections.
5598         * testsuite/caps/intersect2.c: (main):
5599           Add test for array intersections.
5600
5601 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5602
5603         * configure.ac: back to cvs
5604
5605 === release 0.8.4 ===
5606
5607 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5608
5609         * configure.ac:
5610           releasing 0.8.4, "Paella"
5611           bump libtool versioning
5612
5613 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5614
5615         * po/LINGUAS:
5616         * po/ca.po:
5617           adding Catalan translation (Jordi Mallach)
5618
5619 2004-07-20  Wim Taymans  <wim@fluendo.com>
5620
5621         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
5622         (handoff_identity), (main):
5623         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5624         (handoff_identity), (main):
5625         * testsuite/schedulers/Makefile.am:
5626         Added failing testcase for variant of #147894
5627
5628 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5629
5630         patch by: David Moore
5631
5632         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
5633         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
5634         (group_migrate_connected):
5635         * testsuite/schedulers/Makefile.am:
5636           fix for #142813 (Deadlock in optimal scheduler)
5637
5638 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5639
5640         patch by: Wim Taymans
5641
5642         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
5643         (gst_opt_scheduler_schedule_run_queue),
5644         (gst_opt_scheduler_get_wrapper), (get_group),
5645         (group_migrate_connected):
5646         * testsuite/schedulers/Makefile.am:
5647           fix for #147819 (Add some checks in the opt scheduler)
5648
5649 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5650
5651         patch by: Benjamin Otte
5652
5653         * gst/gstelementfactory.c: (__gst_element_details_set):
5654           fix for #147929: running gst-register in non-utf8 locale can cause
5655           invalid registry
5656
5657 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5658
5659         patch by: Wim Taymans
5660
5661         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
5662         (group_has_element), (element_get_reachables_func),
5663         (group_migrate_connected):
5664           fix for #147894 (opt scheduler decoupled elements mismanagement)
5665         * testsuite/schedulers/Makefile.am:
5666           testsuite app now passes
5667
5668 2004-07-19  Wim Taymans  <wim@fluendo.com>
5669
5670         * testsuite/schedulers/147819.c: (handoff_identity1),
5671         (handoff_identity2), (main):
5672         * testsuite/schedulers/Makefile.am:
5673         Added testcase for bug 147819
5674
5675 2004-07-19  Wim Taymans  <wim@fluendo.com>
5676
5677         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5678         (handoff_identity), (main):
5679         * testsuite/schedulers/Makefile.am:
5680         Added testcase for bug 147894
5681
5682 2004-07-16  Wim Taymans  <wim@fluendo.com>
5683
5684         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
5685         * testsuite/schedulers/142183.c: (handoff_identity), (main):
5686         * testsuite/schedulers/Makefile.am:
5687         Added testsuite for bug 142183 in its two incarnations. Refcount
5688         is not increased for scheduled elements and threadsafe properties
5689         mutexes are not properly unlocked.
5690
5691 2004-07-16  Wim Taymans  <wim@fluendo.com>
5692
5693         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
5694         (create_chain), (destroy_chain), (create_group), (destroy_group),
5695         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
5696         (group_dec_link), (gst_opt_scheduler_pad_link),
5697         (group_inc_links_for_element), (group_migrate_connected):
5698         Call group_inc_link with the proper src->sink ordering -- 
5699         break this, and we break sort_chain. patch from wingo for bug
5700         147713.
5701         Partially revert patch 1.89. When adding a loop based element to 
5702         the scheduler, the links to other groups are automatically followed
5703         and incremented. This should not happen because the bin will call
5704         pad_link explicitly for those connection, resulting in them counted 
5705         twice. Results in assertion failure on pipeline cleanup.
5706
5707 2004-07-16  Wim Taymans  <wim@fluendo.com>
5708
5709         * testsuite/schedulers/143777-2.c: (main):
5710         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
5711         (main):
5712         * testsuite/schedulers/Makefile.am:
5713         Added cleanup code to testcase 143777-2.
5714         Added testcase to show bug 147713, does not really show the
5715         deadlock as I can't figure out how to trigger it, but it does
5716         demonstrate bad ordering in the scheduler.
5717
5718 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5719
5720         * gst/gstvalue.c: (gst_value_deserialize_fraction):
5721           change strndup to g_strndup.  Fixes #147707
5722
5723 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5724
5725         * po/af.po:
5726         * po/az.po:
5727         * po/cs.po:
5728         * po/en_GB.po:
5729         * po/fr.po:
5730         * po/nl.po:
5731         * po/sr.po:
5732         * po/sv.po:
5733         * po/tr.po:
5734         * po/uk.po:
5735           updated translations
5736
5737 2004-07-16  Benjamin Otte  <otte@gnome.org>
5738
5739         * gst/gstvalue.c: (gst_greatest_common_divisor):
5740           use ints and return ints, fractions only use ints, too, so this
5741           avoids accidently casting multiplications to unsigned
5742         (gst_value_lcopy_fraction): it's ints, not uint32
5743         (gst_value_set_fraction): disallow minint, multiplying and negation
5744           are broken with it
5745         (gst_value_fraction_multiply): fix to make large numbers work and get
5746         rid of the assumption that the multiplication of two ints fits an
5747         int64 - dunno if that's true for all systems
5748         * testsuite/caps/Makefile.am:
5749         * testsuite/caps/fraction-multiply-and-zero.c:
5750         (check_multiplication), (check_equal), (zero_test), (main):
5751           add tests for all the stuff above
5752         * testsuite/caps/value_compare.c: (test1):
5753           fix comment
5754         * tests/.cvsignore:
5755         * testsuite/caps/.cvsignore:
5756         * testsuite/debug/.cvsignore:
5757         * testsuite/dlopen/.cvsignore:
5758         * testsuite/states/.cvsignore:
5759           get up to date
5760
5761 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5762
5763         * docs/manual/bins-api.xml:
5764         * docs/manual/factories.xml:
5765         * docs/manual/helloworld.xml:
5766         * docs/manual/links-api.xml: 
5767           fixes for out of date info, incorrect info and grammar
5768
5769 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5770
5771         * docs/manual/pads.xml:
5772         * docs/manual/pads-api.xml: grammar fix
5773
5774 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5775
5776         * docs/manual/pads-api.xml: typo + grammar fix
5777
5778 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5779
5780         * docs/gst/gstreamer-sections.txt:
5781           add new symbols
5782         * docs/gst/tmpl/gstelement.sgml:
5783         * docs/gst/tmpl/gstpad.sgml:
5784         * docs/gst/tmpl/gsttypes.sgml:
5785         * docs/gst/tmpl/gstvalue.sgml:
5786           update docs
5787         * gst/gststructure.c: (gst_structure_set_valist),
5788         (gst_structure_from_abbr), (gst_structure_to_abbr):
5789         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
5790         (gst_greatest_common_divisor), (gst_value_init_fraction),
5791         (gst_value_copy_fraction), (gst_value_collect_fraction),
5792         (gst_value_lcopy_fraction), (gst_value_set_fraction),
5793         (gst_value_get_fraction_numerator),
5794         (gst_value_get_fraction_denominator),
5795         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
5796         (gst_value_deserialize_fraction),
5797         (gst_value_transform_fraction_string),
5798         (gst_value_transform_string_fraction),
5799         (gst_value_compare_fraction), (_gst_value_initialize):
5800         * gst/gstvalue.h:
5801           adding GstFraction GValue type, get/set, and multiply
5802         * testsuite/caps/Makefile.am:
5803         * testsuite/caps/fraction.c: (test), (main):
5804         * testsuite/caps/string-conversions.c: (main):
5805         * testsuite/caps/value_compare.c: (test1), (main):
5806           add regression tests for GstFraction
5807
5808 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5809         
5810         * docs/manual/init-api.xml: Grammar fix
5811
5812 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5813
5814         * docs/manual/states.xml: Fix inconsistent information
5815
5816 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5817
5818         * gst/gstelement.c: (gst_element_set_state):
5819         * gst/gstpad.c: (gst_pad_try_set_caps):
5820         * gst/gststructure.c:
5821         * gst/gstthread.c: (gst_thread_child_state_change):
5822         * gst/gstvalue.c: (gst_value_compare_double):
5823         * gst/gstvalue.h:
5824         * testsuite/parse/parse1.c: (main):
5825           debugging additions and style cleanups
5826
5827 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5828
5829         * docs/manual/states.xml: Grammar fix
5830
5831 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5832
5833         * docs/manual/pads.xml: Grammar fix
5834
5835 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5836
5837         * docs/manual/elements.xml: Fixed image reference
5838
5839 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5840
5841         * docs/manual/goals.xml: Grammar fix
5842
5843 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5844
5845         * docs/manual/motivation.xml:
5846         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
5847
5848 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5849
5850         * docs/manual/motivation.xml: Fix spelling
5851
5852 2004-07-15  Benjamin Otte  <otte@gnome.org>
5853
5854         * gst/gstelement.h: 
5855           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
5856           strings.
5857         * gst/gstelement.c (gst_element_class_init):
5858           GError's are boxed, not objects
5859         * gst/gstmarshal.list:
5860           update list for the fixed error signal
5861
5862 2004-07-14  Andy Wingo  <wingo@pobox.com>
5863
5864         * gst/gsttag.c: Add a tag merge func for pointers. The header was
5865         there all along, but the function wasn't. (guile-gstreamer's build
5866         system uses the address of the function -- I wasn't actually
5867         trying to use this.)
5868
5869 2004-07-14  Andy Wingo  <wingo@pobox.com>
5870
5871         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
5872         as gst_pad_proxy_pad_link) just link to every other pad when they
5873         are called. In the case where the graph has cycles, this will mean
5874         that a call to try_set_caps will recurse. Allow this recursion
5875         and return OK, while we wait for the first try_set_caps to give a
5876         proper return value.
5877         (gst_pad_link_call_link_functions): Since this function is the
5878         only one to set the NEGOTIATING flag on a pad, if the flag is set
5879         it means that the link functions have indirectly recursed. If this
5880         happens, error out to avoid infinite recursion and an eventual
5881         SEGV.
5882         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
5883         (gst_pad_proxy_getcaps): Intersect the result with the template
5884         caps to ensure that the return value is valid.
5885
5886 2004-07-14  Andy Wingo  <wingo@pobox.com>
5887
5888         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
5889         one refcount, the calling function is the owner of the buffer.
5890
5891 2004-07-14  Wim Taymans  <wim@fluendo.com>
5892
5893         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5894         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5895         Fix stupid warning when an element is to be migrated but
5896         is already migrated.
5897
5898 2004-07-14  Wim Taymans  <wim@fluendo.com>
5899
5900         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5901         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5902         Make sure that a single non-loop-based element does not 
5903         end up in a group. This fixes the testsuite again.
5904
5905 2004-07-14  Wim Taymans  <wim@fluendo.com>
5906
5907         * gst/schedulers/gstoptimalscheduler.c: (create_group),
5908         (add_to_group), (merge_groups), (schedule_group),
5909         (gst_opt_scheduler_get_wrapper), (group_elements),
5910         (group_dec_link), (gst_opt_scheduler_pad_link),
5911         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
5912         (gst_opt_scheduler_iterate):
5913         move isolated groups to a new chain.
5914         Emit a warning instead of segfaulting in some error cases.
5915         Fix a bug where the link count between groups was not calculated 
5916         correctly. Fixes #144510.
5917
5918 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
5919         * gst/elements/gstfilesrc.c:
5920           Binary files support under Windows now OK
5921       
5922 2004-07-13  Benjamin Otte  <otte@gnome.org>
5923
5924           compatibility fixes for Solaris 8/gcc 2.95
5925         * configure.ac:
5926           include libintl libs in LDFLAGS
5927         * gstvalue.c (gst_value_deserialize_buffer):
5928           cast isxdigit stuff to int to silence compiler warning
5929
5930 2004-07-12  Benjamin Otte  <otte@gnome.org>
5931
5932         * gst/gsttypes.h:
5933           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
5934           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
5935           just causes support madness
5936         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
5937           make it work without this
5938         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
5939         (gst_file_index_commit):
5940           glib IO channels don't want binary mode
5941         * testsuite/bytestream/filepadsink.c: (main):
5942         * testsuite/bytestream/test1.c: (read_param_file):
5943           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
5944
5945 2004-07-12  Benjamin Otte  <otte@gnome.org>
5946
5947         * gst/gstelement.c: (gst_element_class_init),
5948         (gst_element_set_state), (gst_element_set_state_func):
5949           virutalize gst_element_set_state, use set_state member in class
5950           struct that was already added in 0.7 for this.
5951         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
5952         (gst_bin_change_state):
5953           make gst_bin_foreach works similar to other foreach functions, plug
5954           memleaks in it. Make functions using it work with the new approach.
5955           Document gst_bin_foreach, so it can be exported if we want to
5956         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
5957           use virtualized set_state to make set_state on bins set the state of
5958           all its children.
5959
5960 2004-07-12  Benjamin Otte  <otte@gnome.org>
5961
5962         * configure.ac:
5963           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
5964           http://bugs.gentoo.org/show_bug.cgi?id=53967)
5965         * gst/gstpad.c: (gst_pad_alloc_buffer):
5966           allow buffer_alloc functions to return NULL and allocate a normal
5967           buffer in that case
5968
5969 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5970         * gst/elements/gstfilesink.c:
5971         * gst/elements/gstfilesrc.c:
5972         * gst/indexers/gstfileindex.c:
5973         * gst/gsttypes.h:
5974         * testsuite/bytestream/filepadsink.c:
5975         * testsuite/bytestream/test1.c:
5976           Handle binary files under Windows
5977
5978 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5979         * docs/manual/win32.xml:
5980         * win32/config.h:
5981         * win32/gst-register.vcproj:
5982         * win32/gstreamer.def:
5983           Update to another gettext public build
5984
5985 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5986         * gst/gstplugin.c:
5987           Fix an impossible C syntax
5988         * win32/config.h:
5989           Disable i18n under Windows for the moment
5990         * win32/gst-register.vcproj:
5991           Use this configuration
5992
5993 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
5994         * docs/manual/quotes.xml:
5995           Keep the quotes file alive
5996         * docs/random/ds/0.9-suggested-changes:
5997           Add the suggestion of including a 'rowstride' as part of video
5998           format caps
5999
6000 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6001
6002         * gst/gstelement.c: (gst_element_set_state),
6003         (gst_element_change_state):
6004           d'oh.  Set PENDING state correctly before forcing bin to change.
6005         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6006         (gst_structure_parse_fixed_list):
6007         * gst/schedulers/gstoptimalscheduler.c:
6008         (gst_opt_scheduler_state_transition):
6009         * testsuite/states/parent.c: (main):
6010           remove comment now that it's fixed.
6011
6012 2004-07-11  Benjamin Otte  <otte@gnome.org>
6013
6014         * gst/gstclock.h:
6015           GST_SECOND shouldn't cause a conversion to unsigned.
6016         * testsuite/clock/.cvsignore:
6017         * testsuite/clock/Makefile.am:
6018         * testsuite/clock/signedness.c: (main):
6019           make sure it never will again
6020
6021 2004-07-11  Andy Wingo  <wingo@pobox.com>
6022
6023         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
6024         whose state is higher than the bin state, raise the bin state to
6025         ensure that bin state := highest child state.
6026         
6027 2004-07-11  Andy Wingo  <wingo@pobox.com>
6028
6029         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
6030         procedure on the children of a bin. Assumes that the procedure can
6031         change the set of children.
6032         (set_kid_state_func): New static function.
6033         (gst_bin_change_state): Use gst_bin_foreach to call
6034         set_kid_state_func. Fixes a bug: if a child had a state-change
6035         handler that removes it from the bin, there would be a segfault.
6036         Hopefully it should also work in the case where the state-change
6037         handler on one child adds or removes other children. In any case,
6038         fixes should go to gst_bin_foreach.
6039
6040 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6041
6042         * gst/gstelement.c: (gst_element_set_state):
6043           compatibility fix for latest plugins release.  Change loop back
6044           to while {}
6045
6046 2004-07-09  Wim Taymans  <wim@fluendo.com>
6047
6048         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
6049         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
6050         (gst_thread_main_loop):
6051         Since remove is virtual in GstBin we must not assume the 
6052         elements GList to have anothing useful.
6053         Add some more logging to GstThread and be a bit more paranoid
6054         when resetting the scheduler.
6055         Set the state of the bin to NULL before removing the children.
6056
6057 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6058
6059         * testsuite/threads/Makefile.am:
6060         * testsuite/threads/threadg.c:
6061           added test to check if problem when removing all elements from a
6062           GstThread before setting GstThread state to NULL
6063
6064 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6065
6066         * docs/gst/tmpl/gstelement.sgml:
6067         * docs/gst/tmpl/gsttypes.sgml:
6068         * gst/gstbin.c: (gst_bin_change_state):
6069         * gst/gstelement.c: (gst_element_set_state),
6070         (gst_element_change_state):
6071           rework so that for bins we try to set the state on all children
6072           as well even if the bin is in the correct state already.
6073           change while to do so at least one iteration is done.
6074           For regular elements, we fall back to the previous behaviour for
6075           now since we first need a new plugins release.
6076         * testsuite/states/parent.c: (main):
6077           test for this case
6078           Fixes #123774
6079
6080 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6081
6082         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
6083         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
6084         (gst_queue_release_locks), (gst_queue_change_state),
6085         (gst_queue_set_property):
6086           add proper lock debugging.  Change dispose to finalize, since
6087           we're freeing mutexes and other stuff which should happen only once.
6088
6089 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6090
6091         * docs/gst/tmpl/gstelement.sgml:
6092         * docs/gst/tmpl/gstplugin.sgml:
6093         * docs/gst/tmpl/gsttypes.sgml:
6094         * docs/pwg/building-state.xml:
6095         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
6096         * gst/gstelement.c: (gst_element_change_state):
6097         * gst/gstthread.c: (gst_thread_change_state):
6098           catch wrong state changes in element base class.
6099
6100 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6101
6102         * gst/gstinfo.h:
6103           clean up layout a little.
6104
6105 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6106
6107         * configure.ac:
6108         * testsuite/Makefile.am:
6109         * testsuite/states/Makefile.am:
6110         * testsuite/states/parent.c: (main):
6111           re-enable states testsuite dir.  Add test for state changes and
6112           parent behaviour
6113
6114 2004-07-09  Wim Taymans  <wim@fluendo.com>
6115
6116         * gst/schedulers/gstoptimalscheduler.c:
6117         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
6118         (element_get_reachables_func), (element_get_reachables),
6119         (debug_element), (rechain_group), (group_migrate_connected),
6120         (gst_opt_scheduler_pad_unlink):
6121         Do not try to migrate decoupled elements to a new group since
6122         they are not added to groups.
6123
6124 2004-07-08  Benjamin Otte  <otte@gnome.org>
6125
6126         * gst/gstelement.c: (gst_element_error_func):
6127           make reentrant (= allow removing elements in error handler)
6128
6129 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6130
6131         * gst/gstpad.c: (gst_pad_event_default_dispatch),
6132         (gst_pad_send_event), (gst_pad_call_chain_function):
6133           events sent to elements below PAUSED cannot be handled, so
6134           don't try to
6135
6136 2004-07-08  Wim Taymans  <wim@fluendo.com>
6137
6138         * gst/schedulers/gstoptimalscheduler.c:
6139         (chain_recursively_migrate_group), (create_group),
6140         (schedule_group), (gst_opt_scheduler_pad_link),
6141         (group_elements_set_visited), (element_get_reachables_func),
6142         (element_get_reachables), (group_can_reach_group), (debug_element),
6143         (rechain_group), (group_migrate_connected),
6144         (gst_opt_scheduler_pad_unlink):
6145         * testsuite/schedulers/Makefile.am:
6146         Implemented group splitting and rechaining.
6147         Fixes 143777 and 143777-2 in the testsuite.
6148
6149 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6150
6151         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
6152           extra debugging
6153         * gst/gstevent.h:
6154         * gst/gstinfo.c: (gst_debug_log_default):
6155           print time nicely.  add thread pointer until someone figures out
6156           a completely portable way of getting at thread id's.
6157         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
6158         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
6159         (gst_pad_call_chain_function):
6160           extra debugging
6161         * gst/schedulers/gstoptimalscheduler.c:
6162         (get_group_schedule_function), (loop_group_schedule_function),
6163         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
6164         (pad_clear_queued), (gst_opt_scheduler_iterate):
6165           rename BUFPEN and friends to DATAPEN since that's what they are.
6166
6167 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6168
6169         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
6170         * gst/gstbuffer.h:
6171         * gst/gstpad.c:
6172           cleanups and debugging
6173
6174 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6175
6176         * configure.ac:
6177         * gst/gstvalue.c: (gst_value_compare_enum),
6178         (gst_value_serialize_enum), (gst_value_deserialize_enum),
6179         (gst_value_can_compare), (gst_value_compare):
6180         * testsuite/Makefile.am:
6181         * testsuite/enumcaps/Makefile.am:
6182         * testsuite/enumcaps/enumcaps.c:
6183           Fix enum serialization, deserialization, comparison in caps, add
6184           a test to ensure that this continues working in the future.
6185
6186 2004-07-06  David Schleef  <ds@schleef.org>
6187
6188         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
6189         Fix memleak.
6190
6191 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6192
6193         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
6194         * gst/gstplugin.h:
6195         * gst/registries/gstxmlregistry.c:
6196         (plugin_times_older_than_recurse), (plugin_times_older_than),
6197         (gst_xml_registry_parse_padtemplate):
6198           only rebuild registry when actual plugins have a newer time than
6199           the registry.  Fixes #145520
6200
6201 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6202
6203         * docs/manual/manual.xml:
6204         * docs/manual/win32.xml:
6205           add chapter on win32 building.  fixes #142422
6206
6207 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6208
6209         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
6210
6211         * gst/autoplug/gstspider.c: (gst_spider_init),
6212         (gst_spider_dispose):
6213           fix spider memleaks.  fixes #137863
6214
6215 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6216
6217         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
6218
6219         * gst/schedulers/gstoptimalscheduler.c:
6220         (gst_opt_scheduler_pad_unlink):
6221           fix SIGBUS error, fixes #145338
6222
6223 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6224
6225         * gst/gstobject.c: (gst_object_replace):
6226         * gst/gstscheduler.c: (gst_scheduler_get_clock):
6227         * gst/gstsystemclock.c: (gst_system_clock_obtain):
6228           clean up clock lifecycle.  Fixes #109831
6229
6230 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6231
6232         * po/LINGUAS:
6233         * po/cs.po:
6234           added Czech translation (Miloslav Trmac)
6235
6236 2004-07-04  David Schleef  <ds@schleef.org>
6237
6238         * tools/Makefile.am:
6239         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
6240
6241 2004-07-04  David Schleef  <ds@schleef.org>
6242
6243         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
6244
6245 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
6246
6247         * gst/gstbin.c: (gst_bin_restore_thyself):
6248           chain to parent restore so the bins get restored correctly
6249           in the editor
6250
6251 2004-07-03  David Schleef  <ds@schleef.org>
6252
6253         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
6254         Actually do something in these functions, like before the big
6255         caps change.  (bug #145137)
6256
6257 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6258
6259         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
6260         (gst_element_get_compatible_pad_filtered):
6261         * gst/gstthread.c: (gst_thread_main_loop):
6262           more debugging
6263
6264 2004-07-02  David Schleef  <ds@schleef.org>
6265
6266         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
6267         * gst/gstobject.h:
6268         * gst/gstparse.h:
6269         * gst/gsttrace.h:
6270         * gst/gstxml.h:
6271
6272 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6273
6274         * gst/gstpad.c: (gst_pad_check_schedulers),
6275         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
6276         (gst_pad_link_prepare):
6277           revert until testsuite is fixed
6278
6279 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6280
6281         * testsuite/Makefile.am:
6282         * testsuite/caps/filtercaps.c: (main):
6283         * testsuite/clock/clock1.c: (main):
6284         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
6285           fix some more tests
6286
6287 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6288
6289         * testsuite/cleanup/cleanup1.c: (create_pipeline):
6290         * testsuite/cleanup/cleanup2.c: (create_pipeline):
6291         * testsuite/cleanup/cleanup4.c: (main):
6292           fix testsuite
6293
6294 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6295
6296         * libs/gst/control/control.c:
6297         * libs/gst/control/dparam.c:
6298         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
6299         * libs/gst/control/dparammanager.c:
6300         * libs/gst/control/dparammanager.h:
6301         * testsuite/dynparams/Makefile.am:
6302         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
6303         (gst_dptest_change_state), (gst_dptest_chain), (main):
6304           fix testcase for dparams
6305           add debugging category
6306
6307 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6308
6309         * testsuite/Rules:
6310           change path
6311
6312 2004-07-02  Benjamin Otte  <otte@gnome.org>
6313
6314         * tests/.cvsignore:
6315         * tests/Makefile.am:
6316         * tests/mass_elements.c: (gst_get_current_time), (main):
6317           add simple benchmark to test various speeds of fakesrc ! identity !
6318           identity ! ... ! fakesink.
6319           Usage: mass_elements [num_identities] [num_buffers]
6320           If not specified they default to 1000.
6321
6322 2004-07-02  Benjamin Otte  <otte@gnome.org>
6323
6324         * gst/gstpad.c: (gst_pad_check_schedulers),
6325         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
6326         (gst_pad_link_prepare):
6327           check that pads that get linked belong to the same manager. The old
6328           code allowed linking elements before putting them into bins, so it
6329           worked to link them and then put them in different threads, which
6330           lead to weird behaviour.
6331           Since this effectively disallows linking elements before putting
6332           them in a bin, some applications might not work after this and error
6333           out. If these applications are too critical, we might need to revert
6334           that patch. Please test this before the next release...
6335
6336 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6337
6338         * gst/gstpad.c: (gst_pad_get_caps):
6339           throw an error if the getcaps function does not return a subset of
6340           the template caps.
6341         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
6342           make disconts without position info an error in debugging
6343         * tests/spidey_bench.c: (handoff), (main):
6344           don't count first try when averaging
6345
6346 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6347
6348         * gst/gstplugin.c: (gst_plugin_load_file):
6349           figure out problem with dynamic test
6350
6351 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6352
6353         * docs/gst/Makefile.am:
6354           fix docs build
6355
6356 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6357
6358         * po/POTFILES.in:
6359         * po/af.po:
6360         * po/az.po:
6361         * po/en_GB.po:
6362         * po/fr.po:
6363         * po/nl.po:
6364         * po/sr.po:
6365         * po/sv.po:
6366         * po/tr.po:
6367         * po/uk.po:
6368         * tools/gst-register.c: (plugin_added_func), (main):
6369           i18n-ize -register, fix plural
6370
6371 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6372
6373         * gst/elements/gstidentity.c: (gst_identity_class_init),
6374         (gst_identity_init), (gst_identity_chain),
6375         (gst_identity_set_property), (gst_identity_get_property):
6376         * gst/elements/gstidentity.h:
6377           check for perfect stream
6378
6379 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6380
6381         * gst/elements/gstidentity.c: (gst_identity_chain):
6382           print offset_end
6383
6384 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6385
6386         * docs/gst/Makefile.am:
6387         * docs/gst/gstreamer-docs.sgml:
6388           doc fixes
6389
6390 2004-06-24  David Schleef  <ds@schleef.org>
6391
6392         * autogen.sh:  Remove call to env, since the buildbot isn't
6393         broken anymore.
6394
6395 2004-06-24  Wim Taymans  <wim@fluendo.com>
6396
6397         * gst/elements/Makefile.am:
6398         * gst/elements/gstelements.c:
6399         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
6400         (gst_multifdsink_class_init), (gst_multifdsink_init),
6401         (gst_multifdsink_add), (gst_multifdsink_remove),
6402         (gst_multifdsink_clear), (gst_multifdsink_chain),
6403         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
6404         * gst/elements/gstmultifdsink.h:
6405         Added an element that writes to multiple filedescriptors at once.
6406
6407 2004-06-24  Benjamin Otte  <otte@gnome.org>
6408
6409         * gst/parse/grammar.y:
6410           don't try to link elements before they have been added to bins
6411
6412 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6413
6414         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
6415         (gst_file_pad_get_length):
6416         * libs/gst/bytestream/filepad.h:
6417           add 2 new functions
6418
6419 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6420
6421         * docs/gst/gstreamer-sections.txt:
6422         remove from docs, the define that Benjamin removed from gstelement.h
6423
6424 2004-06-22  Benjamin Otte  <otte@gnome.org>
6425
6426         * gst/gstelement.h:
6427           remove define that referenced a nonexisting GstElement struct member
6428
6429 2004-06-20  Benjamin Otte  <otte@gnome.org>
6430
6431         * gst/gstdata.c: (gst_data_is_writable):
6432           whoops, return values were wrong, so writable data was marked as
6433           non-writable and vice versa. (fixes #143953, spotted by Francis
6434           Labonte)
6435           Shows how rarely we need to copy data ;)
6436
6437 2004-06-20  Benjamin Otte  <otte@gnome.org>
6438
6439         * testsuite/schedulers/.cvsignore:
6440         * testsuite/schedulers/Makefile.am:
6441         * testsuite/schedulers/143777-2.c: (main):
6442           add test for opt breakage in bug #143777
6443
6444 2004-06-20  Benjamin Otte  <otte@gnome.org>
6445
6446         * gst/gstpad.c: (gst_pad_call_chain_function):
6447           check for if we were unlinked while inside the chainfunction (fixes
6448           entrygthread having issues with #143777)
6449         * testsuite/schedulers/143777.c: (main):
6450         * testsuite/schedulers/Makefile.am:
6451           add a test for that fix
6452
6453 2004-06-20  Benjamin Otte  <otte@gnome.org>
6454
6455         * gst/gstvalue.c: (gst_value_set_int_range):
6456           test that start is smaller then end
6457         * libs/gst/bytestream/Makefile.am:
6458         * libs/gst/bytestream/filepad.c: 
6459         * libs/gst/bytestream/filepad.h:
6460           add GstFilePad - a pad that behaves like a FILE*
6461         * testsuite/bytestream/.cvsignore:
6462         * testsuite/bytestream/Makefile.am:
6463         * testsuite/bytestream/filepadsink.c: 
6464           test for the GstFilePad
6465
6466 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
6467
6468         * gst/elements/gstidentity.c: (gst_identity_class_init),
6469         (gst_identity_init), (gst_identity_set_clock),
6470         (gst_identity_chain), (gst_identity_set_property),
6471         (gst_identity_get_property):
6472         * gst/elements/gstidentity.h:
6473         * gst/gstclock.c: (gst_clock_id_wait):
6474           add a "sync" property to sync to the clock
6475
6476 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6477
6478         * gst/gstelementfactory.c: (gst_element_factory_create):
6479           make the freakin "elementfactory bla has no type" message more
6480           useful. So we actually can do something when someone shows up
6481           complaining about it.
6482
6483 2004-06-15  Johan Dahlin  <johan@gnome.org>
6484
6485         * tools/gst-inspect.c (main): Fallback to plugin if no element is
6486         found. This matches the old behavior better. Thanks to Thomas for
6487         pointing out.
6488
6489 2004-06-14  David Schleef  <ds@schleef.org>
6490
6491         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
6492         -fomit-frame-pointer.  Appears to generate correct code in
6493         other cases as well.
6494
6495 2004-06-14  Johan Dahlin  <johan@gnome.org>
6496
6497         * tools/gst-inspect.c (main): Add two new command line options: -a
6498         to print all elements and -n to print the name on each line. Also
6499         fix some error reporting.
6500         (main): Simplify, remove -n and always print names if -a is specified
6501
6502 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
6503
6504         * win32/gstconfig.h:
6505         * win32/GSTreamer.vcproj:
6506         * win32/Makefile:
6507         * gst/gstconfig.h.in:
6508         * gst/gst.h:
6509         * gst/gstbin.h:
6510         * gst/gstelement.h:
6511         * gst/gstevent.h:
6512         * gst/gstobject.h:
6513         * gst/gstpad.h:
6514         * docs/gst/gstreamer-sections.txt:
6515         * docs/gst/tmpl/gstconfig.sgml:
6516           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
6517
6518 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
6519         * docs/gst/gstreamer-sections.txt:
6520         * docs/gst/tmpl/gstconfig.sgml:
6521         Add the GSTREAMER_EXPORT macro to the docs
6522
6523 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
6524
6525         * tools/gst-compprep.c: (handle_xmlerror), (main):
6526         Add a check for the version that introduced SetStructuredError to fix
6527         the build on FC1
6528
6529 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6530
6531         * win32/msvc71.sln:
6532         * win32/testsuite/:
6533           prepare to compile the testsuite with MSVC
6534
6535 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6536
6537         * docs/manual/win32.xml:
6538           attempt to transform the Win32 README into an XML doc
6539
6540 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6541
6542         * gst/gst.c:
6543         * gst/gstbin.*:
6544         * gst/config.h.in:
6545         * gst/gstelement.*:
6546         * gst/gstevent.h:
6547         * gst/gstobject.*:
6548         * gst/gstpad.h:
6549         * tools/gst-register.c:
6550         * win32/gstreamer.def:
6551           extern symbols are now exported for the Windows DLL
6552
6553 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6554
6555         * gst/gstinfo.h:
6556           fix a problem to enable/disable DEBUG under MSVC
6557
6558 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6559
6560         * win32/:
6561           enable more debug code in DEBUG build
6562
6563 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6564
6565         * win32/config.h:
6566         * gst/gst-i18n-app.h:
6567           enable NLS under Windows
6568
6569 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
6570         * tools/gst-compprep.c: (handle_xmlerror), (main):
6571           Make an error that baffled me a bit clearer
6572
6573 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6574
6575         * gst/gstqueue.c:
6576           don't use g_queue_get_length () because it's 2.4, use ->length
6577
6578 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
6579
6580         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
6581
6582         * tools/gst-inspect.c: (print_signal_info):
6583           don't free random data twice. (fixes #144185)
6584
6585 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6586
6587         * gst/gstqueue.c:
6588         * gst/gstqueue.h:
6589           fix removing from the wrong queue on event timeout
6590           fix disposing of the event queue by casting correctly
6591           add mutexes for handling the event queue
6592           someone was sleeping when fixing queue last time around :)
6593
6594 2004-06-10  Johan Dahlin  <johan@gnome.org>
6595
6596         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
6597         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
6598
6599 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6600
6601         * docs/random/gdp:
6602         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
6603         * libs/gst/dataprotocol/dataprotocol.c:
6604         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6605         (gst_dp_buffer_from_header):
6606         * libs/gst/dataprotocol/dataprotocol.h:
6607         * libs/gst/dataprotocol/dp-private.h:
6608           rev version to 0.1, add buffer flags and copy them
6609
6610 2004-06-09  Johan Dahlin  <johan@gnome.org>
6611
6612         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
6613         the flags from the buffer we're copying.
6614
6615 2004-06-09  Wim Taymans  <wim@fluendo.com>
6616
6617         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
6618         * gst/elements/gstidentity.c: (gst_identity_init),
6619         (gst_identity_chain):
6620         Print more buffer info in fakesink.
6621         Make identity output similar to fakesink.
6622
6623 2004-06-07  Daniel Gazard  <dany42@free.fr>
6624
6625         reviewed by Benjamin Otte  <otte@gnome.org>
6626
6627         * configure.ac:
6628           fix cross compiling not working. (fixes #143741)
6629
6630 2004-06-07  Benjamin Otte  <otte@gnome.org>
6631
6632         * gst/gstelement.c: (gst_element_set_time_delay):
6633           add failure check
6634         * gst/gstinfo.h:
6635           put brackets around macro arguments of GST_TIME_ARGS, add note to
6636           move it to correct header in 0.9
6637
6638 2004-06-07  Benjamin Otte  <otte@gnome.org>
6639
6640         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
6641         (gst_file_index_load), (_file_index_id_save_entries),
6642         (gst_file_index_commit), (gst_file_index_add_association),
6643         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
6644         (gst_file_index_plugin_init):
6645           make debugging use a default category
6646
6647 2004-06-06  David Moore  <dcm@acm.org>
6648
6649         reviewed by Benjamin Otte  <otte@gnome.org>
6650
6651         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
6652         (gst_fdsrc_change_state):
6653           reset offset counter when going READY => PAUSED. (fixes #142903)
6654
6655 2004-06-06  ed@catmur.co.uk
6656
6657         reviewed by Benjamin Otte  <otte@gnome.org>
6658
6659         * gst/registries/gstxmlregistry.c:
6660         (gst_xml_registry_rebuild_recurse):
6661           don't rely on g_dir_open to figure out if a file is a directory, use
6662           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
6663           directories. (fixes #142850)
6664
6665 2004-06-06  Benjamin Otte  <otte@gnome.org>
6666
6667         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
6668           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
6669         * libs/gst/bytestream/adapter.c:
6670         * libs/gst/bytestream/adapter.h:
6671           fix copyright in header and typo in debugging category name
6672
6673 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6674
6675         * configure.ac:
6676           bump nano to cvs
6677
6678 === release 0.8.3 ===
6679
6680 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6681
6682         * configure.ac:
6683           update libtool versioning
6684           do a new release
6685         * docs/gst/tmpl/gstelement.sgml:
6686         * docs/gst/tmpl/gsttypes.sgml:
6687         * gst/gstinfo.c: (_gst_debug_init):
6688           put back GST_CAT_DATAFLOW to fix API breakage
6689
6690 2004-06-04  David Schleef  <ds@schleef.org>
6691
6692         * autogen.sh: Add a temporary 'env' to test buildbot problems.
6693
6694 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6695
6696         * configure.ac:
6697           bump nano to cvs
6698
6699 === release 0.8.2 ===
6700
6701 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6702
6703         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
6704           check GST_DEBUG environment variable which is parsed the same way
6705           as --gst-debug=
6706
6707 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6708
6709         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
6710                             gstmd5sink.c gstshaper.c gsttee.c
6711                             gsttypefindelement.c
6712         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
6713
6714           - removing trailing commas at end of enums
6715             it is correct C99 code but C90 compilers would complain
6716             (AIX, Forte, ...)
6717             ('should' fix #143290, at least partially)
6718
6719 2004-05-27  Wim Taymans  <wim@fluendo.com>
6720
6721         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
6722         (chain_group_set_enabled), (create_group), (add_to_group),
6723         (merge_groups), (setup_group_scheduler), (group_elements),
6724         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
6725         Don't try to follow the pad connections with other groups
6726         when a loop based element is added to the scheduler because
6727         the bin will inform the scheduler about the pad links a little
6728         later.
6729
6730 2004-05-27  Wim Taymans  <wim@fluendo.com>
6731
6732         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6733         (remove_from_chain), (chain_group_set_enabled),
6734         (setup_group_scheduler), (group_element_set_enabled),
6735         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
6736         (gst_opt_scheduler_show):
6737         Elements without a group can do a state change as well, just wait
6738         with the setup of the scheduling function when it is added to a
6739         chain.
6740
6741 2004-05-27  Wim Taymans  <wim@fluendo.com>
6742
6743         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6744         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
6745         (merge_groups), (setup_group_scheduler),
6746         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
6747         (gst_opt_scheduler_show):
6748         Fixes to maintain internal consistency of the scheduler data
6749         structures. 
6750          - adding an enabled group to a chain should increment the
6751            number of enabled elements in that chain.
6752          - removing an enabled group from a chain could disable the
6753            chain.
6754          - removing a disabled group from a chain could enable the
6755            chain.
6756          - add g_assert when internal inconsistency is detected.
6757          - adding an element to a group could increase the number of
6758            links this group has with other groups.
6759          - merging two groups also merges the chains.
6760          - also show group links in the _show method.
6761            
6762
6763 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6764
6765         * gst/gstcaps.c: (gst_caps_structure_simplify):
6766           don't print error messages when there is no error
6767         * gst/gstvalue.c: (gst_value_compare_int_range):
6768           compare the second value, too
6769         * testsuite/caps/Makefile.am:
6770         * testsuite/caps/random.c: (assert_on_error), (main):
6771           add tests to make sure the two things above are checked for
6772
6773 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6774
6775         * configure.ac:
6776         * libs/gst/dataprotocol/Makefile.am:
6777         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
6778         * libs/gst/dataprotocol/dataprotocol.h:
6779           wrap header in GST_ENABLE_NEW.  make code use it
6780
6781 2004-05-23  Johan Dahlin  <johan@gnome.org>
6782
6783         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
6784         so verbose and print GstElement signal names all the time.
6785
6786 2004-05-22  David Schleef  <ds@schleef.org>
6787
6788         * gst/registries/gstxmlregistry.c:
6789         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
6790         (bug #142957)
6791
6792 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
6793
6794         * configure.ac:
6795           scrub cflags for glib2 so gcc doesn't complain when glib is in
6796           /usr/local
6797
6798 2004-05-21  Johan Dahlin  <johan@gnome.org>
6799
6800         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
6801         __GNUC__, patch from Brian Cameron, fixes bug #142804
6802
6803 2004-05-20  David Schleef  <ds@schleef.org>
6804
6805         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
6806         comparison code.  (bug #142819)
6807
6808 2004-05-20  Wim Taymans  <wim@fluendo.com>
6809
6810         * gst/gstbuffer.c: (gst_buffer_default_copy):
6811         * gst/gstbuffer.h:
6812         Added Comment to a flag.
6813         copy relevant flags in _buffer_copy.
6814
6815 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6816
6817         reviewed by: Wim Taymans <wim at fluendo dot com>
6818
6819         * gst/gstbuffer.h:
6820           add GST_BUFFER_IN_CAPS buffer flag
6821         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6822         (gst_structure_parse_any_list), (gst_structure_parse_list),
6823         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
6824         * gst/gstvalue.c: (gst_value_serialize_any_list),
6825         (gst_value_transform_any_list_string),
6826         (gst_value_list_prepend_value), (gst_value_list_append_value),
6827         (gst_value_list_get_size), (gst_value_list_get_value),
6828         (gst_value_transform_list_string),
6829         (gst_value_transform_fixed_list_string),
6830         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
6831         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
6832         (_gst_value_initialize):
6833         * gst/gstvalue.h:
6834           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
6835           < , > as a format.
6836         * testsuite/caps/string-conversions.c: (main):
6837           add regression tests for < >
6838
6839 2004-05-20  Johan Dahlin  <johan@gnome.org>
6840
6841         * docs/gst/Makefile.am (all-local): Re-add
6842
6843 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6844
6845         * docs/gst/Makefile.am:
6846         * docs/gst/gstreamer-docs.sgml:
6847         * docs/libs/Makefile.am:
6848         * docs/libs/gstreamer-libs-docs.sgml:
6849           fix distcheck issues
6850
6851 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6852
6853         * libs/gst/dataprotocol/Makefile.am:
6854           add to autotest
6855
6856 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6857
6858         * libs/gst/dataprotocol/Makefile.am:
6859         * libs/gst/dataprotocol/dataprotocol.c:
6860         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6861         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
6862         * libs/gst/dataprotocol/dp-private.h:
6863           use GST macros to read/write fixed length ints
6864           add some more asserts
6865
6866 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6867
6868         * docs/libs/gstreamer-libs-docs.sgml:
6869         * docs/libs/gstreamer-libs-sections.txt:
6870           remove idct and putbits
6871         * configure.ac:
6872         * docs/libs/tmpl/gstdataprotocol.sgml:
6873         * libs/gst/Makefile.am:
6874         * libs/gst/dataprotocol/Makefile.am:
6875         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
6876         (buffer_test), (caps_test), (event_test), (main):
6877         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
6878         (gst_dp_dump_byte_array), (gst_dp_init),
6879         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
6880         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6881         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
6882         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
6883         (gst_dp_validate_header), (gst_dp_validate_payload),
6884         (gst_dp_validate_packet), (plugin_init):
6885         * libs/gst/dataprotocol/dataprotocol.h:
6886         * libs/gst/dataprotocol/dp-private.h:
6887           add dataprotocol
6888
6889 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6890
6891         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
6892           fix int variable deserialization and add a helper so we can actually
6893           debug this.
6894
6895 2004-05-18  David Schleef  <ds@schleef.org>
6896
6897         * testsuite/debug/commandline.c: (main): Call ./commandline, not
6898           argv[0].  Calling yourself is probably not the best way to
6899           construct a test like this, btw.
6900
6901 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6902
6903         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
6904           don't claim to be more intelligent than a scheduler when the
6905           scheduler claims the pipeline is stopped
6906         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
6907         (safe_cothread_destroy),
6908         (gst_entry_scheduler_remove_all_cothreads),
6909         (gst_entry_scheduler_reset), (_remove_cothread),
6910         (gst_entry_scheduler_state_transition):
6911           hold off cothread destruction if we're not in main cothread
6912         * configure.ac:
6913         * testsuite/Makefile.am:
6914           add new test dir
6915         * testsuite/schedulers/.cvsignore:
6916         * testsuite/schedulers/Makefile.am:
6917           add tests
6918         * testsuite/schedulers/relink.c: (cb_handoff), (main):
6919           check relinking and adding/removing elements from a running pipeline
6920         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
6921           check unlinking in a running pipeline
6922         * testsuite/schedulers/unref.c: (cb_handoff), (main):
6923           check unreffing a running pipeline
6924         * testsuite/schedulers/useless_iteration.c: (main):
6925           check iterating a pipeline that contains running threads works
6926
6927 2004-05-18  David Schleef  <ds@schleef.org>
6928
6929         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
6930           is false.
6931
6932 2004-05-18  Wim Taymans  <wim@fluendo.com>
6933
6934         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6935         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
6936         Fixed an error introduced with patch for 1.63. When setting
6937         a get based element as the entry point in a group, make sure
6938         to mark the group as GET based.
6939
6940 2004-05-18  Wim Taymans  <wim@fluendo.com>
6941
6942         * gst/schedulers/gstoptimalscheduler.c: (create_group),
6943         (setup_group_scheduler), (loop_group_schedule_function),
6944         (gst_opt_scheduler_pad_link):
6945         Added some more debug info and fixed a bug where the group
6946         type was set to LOOP but it was in fact unknown.
6947
6948 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6949
6950         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
6951           make resetting scheduler work twice in a row
6952
6953 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6954
6955         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
6956         (CREATE_USERIALIZATION), (_gst_value_initialize),
6957         (gst_value_compare_float), (gst_value_serialize_float),
6958         (gst_value_deserialize_float), (gst_value_compare_enum),
6959         (gst_value_serialize_enum), (gst_value_deserialize_enum):
6960           add serialization and comparison functions for long, int64, enum and
6961           float values
6962         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
6963           use best serialization function in type hierarchy instead of only a
6964           matching one. This is required for enums to work.
6965         * gst/parse/grammar.y:
6966           use gst_caps_deserialize
6967         * testsuite/parse/Makefile.am:
6968           parse1 now works
6969         * testsuite/parse/parse1.c: (main):
6970           remove aggregator check, aggregator is broken, this test works now
6971           but fails because of bug #138012
6972         * testsuite/parse/parse2.c: (main):
6973           s/xvideosink/xvimagesink - this test looks a lot like we should
6974           disable it
6975
6976 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6977
6978         * gst/gstelement.c: (gst_element_class_init):
6979           whoops, store the signal id correctly
6980         * gst/schedulers/gstbasicscheduler.c:
6981         (gst_basic_scheduler_chain_wrapper):
6982           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
6983           chain function isn't linked
6984
6985 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
6986         * configure.ac:
6987         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
6988         support until we decide where the flags should be used
6989         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
6990         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
6991         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6992         Output refused caps in the debug info
6993
6994 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6995
6996         * gst/elements/gstidentity.c: (gst_identity_chain):
6997           add duration debug
6998         * gst/gstinfo.c: (gst_debug_log_default):
6999           add timestamp
7000
7001 2004-05-13  Benjamin Otte  <otte@gnome.org>
7002
7003         * gst/gstpipeline.c: (gst_pipeline_dispose),
7004         (gst_pipeline_change_state):
7005           call gst_scheduler_reset on dispose (fixes #141416)
7006
7007 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7008
7009         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7010           compute mapsize correctly
7011         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7012           use correct datatypes when calling a varargs function
7013         * gst/elements/gsttypefindelement.c: (stop_typefinding):
7014           push a DISCONT event as first thing
7015         * gst/gst_private.h:
7016         * gst/gstinfo.c: (_gst_debug_init):
7017           remove GST_DATAFLOW debugging category
7018         * gst/gstbin.c: (gst_bin_iterate):
7019           use GST_SCHEDULING category
7020         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
7021         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
7022         (gst_pad_call_get_function):
7023           add GST_DATAFLOW to easily track flow of buffers or events.
7024         * gst/gstqueue.c: (gst_queue_get_type),
7025         (gst_queue_handle_pending_events), (gst_queue_chain),
7026         (gst_queue_get), (gst_queue_handle_src_event):
7027           use own static debugging category GST_DATAFLOW for dataflow,
7028           use DEBUG category for showing which path events go, use LOG
7029           category for buffers.
7030
7031 2004-05-10  David Schleef  <ds@schleef.org>
7032
7033         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
7034
7035 2004-05-10  David Schleef  <ds@schleef.org>
7036
7037         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
7038         symbols, because otherwise we don't know what they are.  Thanks,
7039         the GStreamer team.
7040         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
7041
7042 2004-05-10  David Schleef  <ds@schleef.org>
7043
7044         (from Steve Lhomme)
7045         * win32/Makefile: When using make clean the MS Visual Studio makefiles
7046         are deleted.  Fix.
7047         * win32/Makefile.inspect:
7048         * win32/Makefile.launch:
7049         * win32/Makefile.register:
7050
7051 2004-05-10  David Schleef  <ds@schleef.org>
7052
7053         * gst/gstinfo.h: Add missing inline function.
7054         * gst/gsttrace.c: add include
7055         * gst/parse/grammar.y: remove unused code
7056         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
7057         more portable.
7058         * tools/gst-register.c: wrap unistd.h
7059         
7060         More additions/fixes from Steve for the MSVC build.
7061         * win32/GStreamer.vcproj:
7062         * win32/Makefile:
7063         * win32/Makefile.inspect:
7064         * win32/Makefile.launch:
7065         * win32/Makefile.register:
7066         * win32/README.txt:
7067         * win32/gst-inspect.vcproj:
7068         * win32/gst-launch.vcproj:
7069         * win32/gst-register.vcproj:
7070         * win32/gstbytestream.def:
7071         * win32/gstbytestream.vcproj:
7072         * win32/gstconfig.h:
7073         * win32/gstelements.def:
7074         * win32/gstelements.vcproj:
7075         * win32/gstenumtypes.c:
7076         * win32/gstenumtypes.h:
7077         * win32/gstoptimalscheduler.def:
7078         * win32/gstoptimalscheduler.vcproj:
7079         * win32/gstreamer.def:
7080         * win32/gstspider.def:
7081         * win32/gstspider.vcproj:
7082         * win32/gstversion.h:
7083         * win32/msvc71.sln:
7084
7085 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7086
7087         * gst/gstelement.c: (gst_element_class_init),
7088         (gst_element_no_more_pads):
7089         * gst/gstelement.h:
7090           add gst_element_no_more_pads and the "no-more-pads" signal
7091
7092 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7093
7094         * gst/gstregistry.c: (gst_registry_add_plugin):
7095           refuse to add plugins when a plugin with same name is already
7096           registered. Fixes a bunch of "How to remove plugins?" issues.
7097           May lead to other problems though, let's test
7098
7099 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7100
7101         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
7102         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
7103         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
7104
7105 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7106
7107         * tests/Makefile.am: fix am16 issue
7108
7109 2004-05-09  Benjamin Otte  <otte@gnome.org>
7110
7111         * libs/gst/bytestream/Makefile.am:
7112           we should indeed add .c files to makefiles or they won't be built
7113           (d'oh)
7114
7115 2004-05-08  Benjamin Otte  <otte@gnome.org>
7116
7117         * gst/gstpad.c: (gst_pad_proxy_fixate):
7118           really reduce the set of caps
7119
7120 2004-05-08  Benjamin Otte  <otte@gnome.org>
7121
7122         * tests/Makefile.am:
7123         * tests/spidey_bench.c: (handoff), (main):
7124           add benchmark to test how long spider needs to create a pipeline
7125
7126 2004-05-08  Benjamin Otte  <otte@gnome.org>
7127
7128         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
7129           mark links as unengaged when unnegotiating instead of deactivating.
7130           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
7131
7132 2004-05-08  Benjamin Otte  <otte@gnome.org>
7133
7134         * docs/manual/helloworld.xml:
7135           s/audiosink/osssink (patch by Patrick Guimond)
7136
7137 2004-05-07  David Schleef  <ds@schleef.org>
7138
7139         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
7140         since it contains important stuff.
7141
7142 2004-05-07  David Schleef  <ds@schleef.org>
7143
7144         * testsuite/caps/caps.c: (test3), (main): A check for appending
7145         ANY caps.
7146
7147 2004-05-07  David Schleef  <ds@schleef.org>
7148
7149         * common/m4/as-compiler-flag.m4: Properly quote arguments,
7150         which may contain commas.  Fixes detection of -Wa,-mregnames
7151
7152 2004-05-06  David Schleef  <ds@schleef.org>
7153
7154         Changes to handle compilers that don't have variadic macro
7155         support.  In particular, glib headers define some inlines
7156         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
7157         builds.
7158         * gst/Makefile.am:
7159         * gst/cothreads.c:
7160         * gst/elements/gstfdsink.c:
7161         * gst/elements/gstfdsrc.c:
7162         * gst/elements/gstfilesink.c:
7163         * gst/elements/gstfilesrc.c:
7164         * gst/gst_private.h:
7165         * gst/gstatomic.c:
7166         * gst/gstcaps.c: (gst_caps_append):
7167         * gst/gstcpu.c: (gst_cpuid_i386):
7168         * gst/gstelement.c:
7169         * gst/gsterror.c:
7170         * gst/gstfilter.c:
7171         * gst/gstinfo.h:
7172         * gst/gstprobe.c:
7173         * gst/gstquery.c:
7174         * gst/gstregistry.c:
7175         * gst/gststructure.c:
7176         * gst/gsttaginterface.c:
7177         * gst/gsttrace.c: (gst_trace_new):
7178         * gst/gsttrashstack.c:
7179         * gst/gsturi.c:
7180         * gst/gstvalue.c:
7181         * gst/parse/grammar.y:
7182         * gst/parse/parse.l:
7183         * tools/gst-inspect.c: (main):
7184         * tools/gst-launch.c: (main):
7185         * tools/gst-xmlinspect.c: (PUT_STRING):
7186
7187 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7188
7189         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
7190         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
7191         * gst/elements/gstfilesrc.h:
7192           send NEW_MEDIA events correctly
7193         * gst/elements/gsttypefindelement.c: (start_typefinding),
7194         (gst_type_find_element_handle_event):
7195           restart typefinding when we get a NEW_MEDIA event
7196         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
7197         (gst_bin_dispose):
7198           don't die when someone removes elements in callbacks
7199         * gst/gstelement.c: (gst_element_change_state):
7200           improve debugging
7201         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
7202           we need a NEW_MEDIA event to engage a link
7203         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
7204           don't g_print debugging stuff
7205         * testsuite/caps/simplify.c: (check_caps):
7206
7207 2004-05-04  Benjamin Otte  <otte@gnome.org>
7208
7209         * gst/parse/grammar.y:
7210           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
7211
7212 2004-05-04  Benjamin Otte  <otte@gnome.org>
7213
7214         * testsuite/caps/renegotiate.c: (main):
7215           improve output in error case
7216
7217 2004-05-04  Benjamin Otte  <otte@gnome.org>
7218
7219         * gst/parse/grammar.y:
7220           fix assert to not trigger when there's no error argument
7221         * gst/parse/parse.l:
7222           fix definition of caps to allow more than two structures
7223         * testsuite/caps/Makefile.am:
7224         * testsuite/caps/renegotiate.c: (main):
7225           it's sinesrc and works in that case
7226
7227 2004-05-04  Wim Taymans  <wim@fluendo.com>
7228
7229         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7230         (group_dec_link), (gst_opt_scheduler_pad_unlink):
7231         when removing an element from a group, we always need to
7232         decrement the link count that this group had with other 
7233         groups through the element.
7234         added an extra assert to catch inconsistencies when decrementing
7235         the link count.
7236
7237 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7238
7239         * configure.ac:
7240         * docs/gst/Makefile.am:
7241         * docs/gst/gstreamer-sections.txt:
7242         * docs/gst/tmpl/gstcompat.sgml:
7243         * examples/appreader/Makefile.am:
7244         * examples/cutter/Makefile.am:
7245         * examples/events/Makefile.am:
7246         * examples/helloworld/Makefile.am:
7247         * examples/helloworld2/Makefile.am:
7248         * examples/launch/Makefile.am:
7249         * examples/manual/Makefile.am:
7250         * examples/mixer/Makefile.am:
7251         * examples/pingpong/Makefile.am:
7252         * examples/plugins/Makefile.am:
7253         * examples/queue/Makefile.am:
7254         * examples/queue2/Makefile.am:
7255         * examples/queue3/Makefile.am:
7256         * examples/queue4/Makefile.am:
7257         * examples/retag/Makefile.am:
7258         * examples/thread/Makefile.am:
7259         * examples/typefind/Makefile.am:
7260         * examples/xml/Makefile.am:
7261         * gst/Makefile.am:
7262         * gst/autoplug/Makefile.am:
7263         * gst/elements/Makefile.am:
7264         * gst/gstcompat.h:
7265         * gst/indexers/Makefile.am:
7266         * gst/parse/Makefile.am:
7267         * gst/registries/Makefile.am:
7268         * gst/schedulers/Makefile.am:
7269         * libs/gst/bytestream/Makefile.am:
7270         * libs/gst/control/Makefile.am:
7271         * libs/gst/getbits/Makefile.am:
7272         * po/af.po:
7273         * po/az.po:
7274         * po/en_GB.po:
7275         * po/fr.po:
7276         * po/nl.po:
7277         * po/sr.po:
7278         * po/sv.po:
7279         * po/tr.po:
7280         * po/uk.po:
7281         * tests/Makefile.am:
7282         * tests/bufspeed/Makefile.am:
7283         * tests/instantiate/Makefile.am:
7284         * tests/memchunk/Makefile.am:
7285         * tests/muxing/Makefile.am:
7286         * tests/negotiation/Makefile.am:
7287         * tests/probes/Makefile.am:
7288         * tests/sched/Makefile.am:
7289         * tests/seeking/Makefile.am:
7290         * tests/threadstate/Makefile.am:
7291         * testsuite/caps/Makefile.am:
7292         * testsuite/cleanup/Makefile.am:
7293         * testsuite/dlopen/Makefile.am:
7294         * testsuite/dynparams/Makefile.am:
7295         * testsuite/plugin/Makefile.am:
7296         * testsuite/states/Makefile.am:
7297         * tools/Makefile.am:
7298           reorganize compile/link flags to be consistent
7299           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
7300
7301 2004-05-04  David Schleef  <ds@schleef.org>
7302
7303         The "once more, with feeling" check-in.
7304         * testsuite/caps/Makefile.am: dist caps_strings
7305         * testsuite/caps/renegotiate.c: (main): This test triggers a
7306           segfault in the core.  Marking as failing.
7307
7308 2004-05-03  David Schleef  <ds@schleef.org>
7309
7310         * testsuite/caps/deserialize.c: (main): Fix problems noticed
7311           by the build bots.
7312         * testsuite/caps/renegotiate.c: (main): Same.
7313
7314 2004-05-03  David Schleef  <ds@schleef.org>
7315
7316         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
7317
7318 2004-05-03  David Schleef  <ds@schleef.org>
7319
7320         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
7321           variable to find our source file.
7322
7323 2004-05-03  David Schleef  <ds@schleef.org>
7324
7325         * configure.ac:  Link plugins with libgstreamer and dependent
7326           libraries
7327         * testsuite/caps/Makefile.am:
7328         * testsuite/caps/caps_strings:
7329         * testsuite/caps/deserialize.c: (main): Add a little test to slog
7330           through a file of caps strings and test each one
7331
7332 2004-05-04  Benjamin Otte  <otte@gnome.org>
7333
7334         * libs/gst/bytestream/Makefile.am:
7335         * libs/gst/bytestream/adapter.c: 
7336         * libs/gst/bytestream/adapter.h:
7337           add GstAdapter, similar to bytestream, but doesn't require ugly event
7338           handling or uglier loopbased elements
7339
7340 2004-05-03  David Schleef  <ds@schleef.org>
7341
7342         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
7343         * testsuite/caps/erathostenes.c:
7344         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
7345
7346 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7347
7348         * docs/pwg/pwg.xml:
7349           remove hardcoded stylesheet path (duh)
7350         * docs/random/release:
7351         * docs/gst/gstreamer-sections.txt:
7352         * gst/Makefile.am:
7353         * gst/gst.h:
7354         * gst/gst_private.h:
7355         * gst/gstcaps.c:
7356         * gst/gstevent.c:
7357         * gst/gstformat.c:
7358         * gst/gstinfo.c:
7359         * gst/gstinfo.h:
7360         * gst/gstinterface.c:
7361         * gst/gstmemchunk.c:
7362         * gst/gstprobe.c:
7363         * gst/gstquery.c:
7364         * gst/gstregistry.c:
7365         * gst/gstregistrypool.c:
7366         * gst/gststructure.c:
7367         * gst/gsttaginterface.c:
7368         * gst/gstthread.c:
7369         * gst/gsttrace.c:
7370         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
7371         * gst/gsturi.c:
7372         * gst/gstvalue.c:
7373           deprecate gst_info; remove gstlog.h
7374    
7375
7376 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7377
7378         * Makefile.am:
7379         * po/en_GB.po:
7380         * po/sv.po:
7381         * po/uk.po:
7382           updated translations
7383
7384 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7385
7386         * gst/gstbin.c: (gst_bin_dispose):
7387           better debugging
7388
7389 2004-05-03  Johan Dahlin  <johan@gnome.org>
7390
7391         * gst/schedulers/gstoptimalscheduler.c
7392         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
7393         really is a GstElement. Avoids critical when running gst-launch -v
7394         and a oggdemux/decoding pipeline.
7395
7396 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7397
7398         * docs/gst/tmpl/gstpipeline.sgml :
7399         * docs/manual/elements-api.xml :
7400                 doc fix by Patrick Guimond (Protector) from devel ML
7401                 reviewed by ronald
7402
7403 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7404
7405         * docs/gst/Makefile.am :
7406         * docs/libs/Makefile.am :
7407                 apply a patch from Arwed v. Merkatz so that gtk-doc
7408                 generated docs install (same for .devhelp file)
7409                 (fixes part 1 of #138836)
7410
7411 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7412
7413         * docs/faq/dependencies.xml: typo
7414         * docs/faq/getting.xml :
7415             - fix download URL for new gstreamer site
7416             - hide sf.net download page as latest version aren't there
7417             - fix apt URLs
7418             - fill "get via CVS" paragraph (link to dev page on the site)
7419         * docs/faq/general.xml:
7420             hide status tables as they no more exists
7421             change case on plugins license file to reflect reality
7422         * docs/faq/troubleshooting.xml:
7423             remove the wiki question/answer as there is no more wiki
7424
7425 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
7426
7427         * gst/gsterror.h:
7428           include the headers needed for declarations used in this header
7429
7430 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7431
7432         * docs/random/uraeus/gstreamer_and_midi.txt :
7433           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
7434           (fixes #132288)
7435
7436 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
7437
7438         reviewed by Benjamin Otte  <otte@gnome.org>
7439
7440         * gst/schedulers/gthread-cothreads.h:
7441           free allocated data for main cothread, too when destroying context
7442           (fixes #141417)
7443
7444 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7445
7446         * docs/manual/goals.xml : remove duplicated paragraph at end 
7447         of doc page (fixes #141448)
7448
7449 2004-04-29  David Schleef  <ds@schleef.org>
7450
7451         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
7452         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
7453
7454 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7455
7456         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
7457           fix property
7458         * gst/gstcaps.c:
7459           fix doc string
7460         * po/POTFILES.in:
7461           rename typefind source file
7462
7463 2004-04-28  David Schleef  <ds@schleef.org>
7464
7465         Several new files from Steve Lhomme's MSVC patch (bug #141317):
7466         * win32/GStreamer.vcproj:
7467         * win32/Makefile:
7468         * win32/config.h:
7469         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
7470         (_trewinddir), (_ttelldir), (_tseekdir):
7471         * win32/dirent.h:
7472         * win32/gst-inspect.vcproj:
7473         * win32/gst-launch.vcproj:
7474         * win32/gst-register.vcproj:
7475         * win32/gstbytestream.vcproj:
7476         * win32/gstelements.vcproj:
7477         * win32/gstoptimalscheduler.vcproj:
7478         * win32/gstspider.vcproj:
7479         * win32/gtchar.h:
7480         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
7481         * win32/mman.h:
7482         * win32/mman.inl:
7483         * win32/msvc71.sln:
7484
7485 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7486
7487         * gst/gst.c: (init_post):
7488         * gst/gstinfo.c:
7489           remove useless _gst_progname stuff
7490         * tools/gst-inspect.c: (print_field), (print_caps):
7491           improve caps output
7492
7493 2004-04-28  David Schleef  <ds@schleef.org>
7494
7495         Disable parsing of a lot of files that aren't part of the
7496         exported API.  Move corresponding template files to old/,
7497         waiting for removal when they don't contain anything
7498         interesting.
7499         * docs/gst/Makefile.am:
7500         * docs/gst/gstreamer-sections.txt:
7501         * docs/gst/tmpl/cothreads.sgml:
7502         * docs/gst/tmpl/cothreads_compat.sgml:
7503         * docs/gst/tmpl/gettext.sgml:
7504         * docs/gst/tmpl/gobject2gtk.sgml:
7505         * docs/gst/tmpl/grammar.tab.sgml:
7506         * docs/gst/tmpl/gst-i18n-app.sgml:
7507         * docs/gst/tmpl/gst-i18n-lib.sgml:
7508         * docs/gst/tmpl/gst_private.sgml:
7509         * docs/gst/tmpl/gstaggregator.sgml:
7510         * docs/gst/tmpl/gstarch.sgml:
7511         * docs/gst/tmpl/gstatomic_impl.sgml:
7512         * docs/gst/tmpl/gstbufferstore.sgml:
7513         * docs/gst/tmpl/gstdata_private.sgml:
7514         * docs/gst/tmpl/gstdisksink.sgml:
7515         * docs/gst/tmpl/gstdisksrc.sgml:
7516         * docs/gst/tmpl/gstelementfactory.sgml:
7517         * docs/gst/tmpl/gstextratypes.sgml:
7518         * docs/gst/tmpl/gstfakesink.sgml:
7519         * docs/gst/tmpl/gstfakesrc.sgml:
7520         * docs/gst/tmpl/gstfdsink.sgml:
7521         * docs/gst/tmpl/gstfdsrc.sgml:
7522         * docs/gst/tmpl/gstfilesink.sgml:
7523         * docs/gst/tmpl/gstfilesrc.sgml:
7524         * docs/gst/tmpl/gsthttpsrc.sgml:
7525         * docs/gst/tmpl/gstidentity.sgml:
7526         * docs/gst/tmpl/gstindexfactory.sgml:
7527         * docs/gst/tmpl/gstmarshal.sgml:
7528         * docs/gst/tmpl/gstmd5sink.sgml:
7529         * docs/gst/tmpl/gstmultidisksrc.sgml:
7530         * docs/gst/tmpl/gstmultifilesrc.sgml:
7531         * docs/gst/tmpl/gstpadtemplate.sgml:
7532         * docs/gst/tmpl/gstpipefilter.sgml:
7533         * docs/gst/tmpl/gstschedulerfactory.sgml:
7534         * docs/gst/tmpl/gstsearchfuncs.sgml:
7535         * docs/gst/tmpl/gstshaper.sgml:
7536         * docs/gst/tmpl/gstspider.sgml:
7537         * docs/gst/tmpl/gstspideridentity.sgml:
7538         * docs/gst/tmpl/gststatistics.sgml:
7539         * docs/gst/tmpl/gsttee.sgml:
7540         * docs/gst/tmpl/gsttimecache.sgml:
7541         * docs/gst/tmpl/gsttypefind.sgml:
7542         * docs/gst/tmpl/gsttypefindfactory.sgml:
7543         * docs/gst/tmpl/gstxmlregistry.sgml:
7544         * docs/gst/tmpl/gthread-cothreads.sgml:
7545         * docs/gst/tmpl/old/cothreads.sgml:
7546         * docs/gst/tmpl/old/cothreads_compat.sgml:
7547         * docs/gst/tmpl/old/gettext.sgml:
7548         * docs/gst/tmpl/old/gobject2gtk.sgml:
7549         * docs/gst/tmpl/old/grammar.tab.sgml:
7550         * docs/gst/tmpl/old/gst-i18n-app.sgml:
7551         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
7552         * docs/gst/tmpl/old/gst_private.sgml:
7553         * docs/gst/tmpl/old/gstaggregator.sgml:
7554         * docs/gst/tmpl/old/gstarch.sgml:
7555         * docs/gst/tmpl/old/gstatomic_impl.sgml:
7556         * docs/gst/tmpl/old/gstbufferstore.sgml:
7557         * docs/gst/tmpl/old/gstdata_private.sgml:
7558         * docs/gst/tmpl/old/gstdisksink.sgml:
7559         * docs/gst/tmpl/old/gstdisksrc.sgml:
7560         * docs/gst/tmpl/old/gstelementfactory.sgml:
7561         * docs/gst/tmpl/old/gstextratypes.sgml:
7562         * docs/gst/tmpl/old/gstfakesink.sgml:
7563         * docs/gst/tmpl/old/gstfakesrc.sgml:
7564         * docs/gst/tmpl/old/gstfdsink.sgml:
7565         * docs/gst/tmpl/old/gstfdsrc.sgml:
7566         * docs/gst/tmpl/old/gstfilesink.sgml:
7567         * docs/gst/tmpl/old/gstfilesrc.sgml:
7568         * docs/gst/tmpl/old/gsthttpsrc.sgml:
7569         * docs/gst/tmpl/old/gstidentity.sgml:
7570         * docs/gst/tmpl/old/gstindexfactory.sgml:
7571         * docs/gst/tmpl/old/gstmarshal.sgml:
7572         * docs/gst/tmpl/old/gstmd5sink.sgml:
7573         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
7574         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
7575         * docs/gst/tmpl/old/gstpadtemplate.sgml:
7576         * docs/gst/tmpl/old/gstpipefilter.sgml:
7577         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
7578         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
7579         * docs/gst/tmpl/old/gstshaper.sgml:
7580         * docs/gst/tmpl/old/gstspider.sgml:
7581         * docs/gst/tmpl/old/gstspideridentity.sgml:
7582         * docs/gst/tmpl/old/gststatistics.sgml:
7583         * docs/gst/tmpl/old/gsttee.sgml:
7584         * docs/gst/tmpl/old/gsttimecache.sgml:
7585         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
7586         * docs/gst/tmpl/old/gstxmlregistry.sgml:
7587         * docs/gst/tmpl/old/gthread-cothreads.sgml:
7588         * docs/gst/tmpl/old/types.sgml:
7589         * docs/gst/tmpl/types.sgml:
7590
7591         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
7592         gtkdoc-scan doesn't like files with the same name in different
7593         directories.
7594         * gst/elements/Makefile.am:
7595         * gst/elements/gstelements.c:
7596         * gst/elements/gsttypefind.c: 
7597         * gst/elements/gsttypefind.h:
7598         * gst/elements/gsttypefindelement.c:
7599         * gst/elements/gsttypefindelement.h:
7600
7601 2004-04-28  David Schleef  <ds@schleef.org>
7602
7603         A bunch of portability fixes, derived from Steve Lhomme's MSVC
7604         patch (bug #141317):
7605         * gst/gst-i18n-lib.h: Allow disabling gettext.
7606         * gst/gstatomic_impl.h: disable warning when it's dumb.
7607         * gst/gstclock.c: fix include
7608         * gst/gstcompat.h: fix variadic macro
7609         * gst/gstinfo.c: fix include
7610         * gst/gstmacros.h: add defines for inlines on MSVC
7611         * gst/gstplugin.c: fix includes
7612         * gst/gstregistry.c: fix includes
7613         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
7614         * gst/gstsystemclock.c: fix include
7615         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
7616         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
7617         * gst/registries/gstxmlregistry.c:
7618         (gst_xml_registry_parse_element_factory): fix use of non-portable
7619         functions
7620         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
7621         * libs/gst/control/dparammanager.h: same
7622
7623 2004-04-28  David Schleef  <ds@schleef.org>
7624
7625         Move a bunch of unused files to old/ with names that are
7626         not case-insensitive-unique.  These files still contain some
7627         useful information that needs to be merged into gstbin.sgml,
7628         etc., so they shouldn't be deleted yet.
7629         * docs/gst/tmpl/GstBin.sgml:
7630         * docs/gst/tmpl/GstBuffer.sgml:
7631         * docs/gst/tmpl/GstCaps.sgml:
7632         * docs/gst/tmpl/GstClock.sgml:
7633         * docs/gst/tmpl/GstCompat.sgml:
7634         * docs/gst/tmpl/GstData.sgml:
7635         * docs/gst/tmpl/GstElement.sgml:
7636         * docs/gst/tmpl/GstEvent.sgml:
7637         * docs/gst/tmpl/GstIndex.sgml:
7638         * docs/gst/tmpl/GstStructure.sgml:
7639         * docs/gst/tmpl/GstTag.sgml:
7640         * docs/gst/tmpl/old/GstBin.sgml:
7641         * docs/gst/tmpl/old/GstBuffer.sgml:
7642         * docs/gst/tmpl/old/GstCaps.sgml:
7643         * docs/gst/tmpl/old/GstClock.sgml:
7644         * docs/gst/tmpl/old/GstCompat.sgml:
7645         * docs/gst/tmpl/old/GstData.sgml:
7646         * docs/gst/tmpl/old/GstElement.sgml:
7647         * docs/gst/tmpl/old/GstEvent.sgml:
7648         * docs/gst/tmpl/old/GstIndex.sgml:
7649         * docs/gst/tmpl/old/GstStructure.sgml:
7650         * docs/gst/tmpl/old/GstTag.sgml:
7651
7652 2004-04-28  David Schleef  <ds@schleef.org>
7653
7654         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
7655         (gst_caps_append), (gst_caps_append_structure),
7656         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
7657         (gst_caps_set_simple), (gst_caps_set_simple_valist),
7658         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
7659         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
7660         (gst_caps_intersect), (gst_caps_normalize),
7661         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
7662         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
7663         * gst/gstcaps.h: use GST_IS_CAPS().
7664
7665 2004-04-26  David Schleef  <ds@schleef.org>
7666
7667         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
7668         assembly.  gcc doesn't handle it correctly. (bug #141083)
7669         * gst/gsttrashstack.h: same
7670
7671 2004-04-25  Benjamin Otte  <otte@gnome.org>
7672
7673         * gst/gstelement.c: (gst_element_change_state):
7674           fix assertion to do an int comparison
7675
7676 2004-04-25  Benjamin Otte  <otte@gnome.org>
7677
7678         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7679           better debugging output on error
7680
7681 2004-04-25  Benjamin Otte  <otte@gnome.org>
7682
7683         * gst/gstcaps.c: (gst_caps_subtract):
7684           fix memleak
7685
7686 2004-04-23  Benjamin Otte  <otte@gnome.org>
7687
7688         * gst/gstvalue.c: (gst_value_compare_buffer),
7689         (_gst_value_initialize):
7690           add comparison function for buffers
7691
7692 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7693
7694         * docs/pwg/pwg.xml:
7695           Just found out that this so-called "ima-wav" format is really
7696           just "dvi adpcm" (according to the MS WAV documentation). So
7697           renaming it. We didn't use it yet anyway.
7698
7699 2004-04-23  Benjamin Otte  <otte@gnome.org>
7700
7701         * gst/gstcaps.c: (gst_caps_is_always_compatible):
7702           call gst_caps_is_subset
7703
7704 2004-04-23  Benjamin Otte  <otte@gnome.org>
7705
7706         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
7707         (gst_caps_is_subset):
7708           add documentation
7709
7710 2004-04-23  Benjamin Otte  <otte@gnome.org>
7711           
7712         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
7713         (gst_caps_structure_subtract), (gst_caps_subtract),
7714         (gst_caps_structure_figure_out_union),
7715         (gst_caps_structure_simplify), (gst_caps_do_simplify):
7716           fix simplifying and subtracting not working correctly with optional
7717           properties
7718           solve assorted problems that make it now simplify ebven more
7719         * docs/gst/tmpl/gstcaps.sgml:
7720         * gst/gstcaps.h:
7721           make gst_caps_do_simplify return a bool to indicate if it simplified
7722         * testsuite/caps/simplify.c: (main):
7723           add more checks. The tests is quite a bit useless right now because
7724           the core is heavily simplifying itself.
7725         * testsuite/caps/caps.h:
7726           fix caps to contain all optional properties
7727
7728 2004-04-22  Benjamin Otte  <otte@gnome.org>
7729
7730         * docs/gst/tmpl/gstcaps.sgml:
7731         * docs/gst/tmpl/gstfilesrc.sgml:
7732         * docs/gst/tmpl/gststructure.sgml:
7733         * docs/gst/tmpl/gstvalue.sgml:
7734           update for recent API changes
7735         * gst/gstcaps.c: (gst_caps_do_simplify):
7736           fix to stop trying with a freed structure
7737         * gst/gstpad.c: (gst_pad_link_fixate):
7738           simplify caps
7739         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
7740           remove C++ comment
7741         * gst/gstpad.h:
7742           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
7743         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7744         (gst_structure_to_string):
7745           keep the correct type when using lists of ranges
7746         * gst/gstvalue.c: (gst_value_list_prepend_value),
7747         (gst_value_list_append_value):
7748           copy the value before adding to the list (d'oh)
7749         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
7750         (gst_value_subtract_int_range_int_range):
7751           handle overflows correctly
7752         * gst/gstvalue.c: (gst_value_subtract_from_list):
7753           fix memleak
7754         * testsuite/caps/caps.h:
7755           add a caps that caused segfaults
7756
7757 2004-04-22  Benjamin Otte  <otte@gnome.org>
7758
7759         * testsuite/refcounting/pad.c: (main):
7760           fix test
7761
7762 2004-04-22  Benjamin Otte  <otte@gnome.org>
7763
7764         * gst/gstcaps.c: (gst_caps_subtract):
7765           allow subtracting ANY and EMPTY from ANY caps
7766
7767 2004-04-22  Benjamin Otte  <otte@gnome.org>
7768
7769         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
7770         (gst_caps_union):
7771           only simplify in functions that create new caps. Simplifying in
7772           gst_caps_append breaks tests.
7773
7774 2004-04-22  Benjamin Otte  <otte@gnome.org>
7775
7776         * gst/gstcaps.c: (gst_caps_structure_simplify):
7777           unset GValue after use
7778         * gst/gstcaps.c: (gst_caps_append), 
7779         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
7780           use gst_caps_simplify (reduces registry size by 30%)
7781         * gst/gstpad.c: (gst_pad_template_new):
7782           don't allow NULL caps
7783
7784 2004-04-22  Benjamin Otte  <otte@gnome.org>
7785
7786         * docs/gst/gstreamer-sections.txt:
7787           add gst_caps_do_simplify
7788         * gst/gstcaps.c:
7789           add documentation for gst_caps_do_simplify
7790         * gst/gstvalue.h:
7791           fix typo in gst_value_register_subtract_func declaration for gst-doc
7792
7793 2004-04-22  Benjamin Otte  <otte@gnome.org>
7794
7795         * gst/gstcaps.c: (gst_caps_from_string_inplace):
7796           fix bug when converting from empty string.
7797         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
7798         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
7799           use gst_caps_new_empty to allocate a new caps. Only that function
7800           allocates memory for caps now.
7801         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
7802         (gst_caps_remove_structure):
7803           add ability to remove one structure (but not to header yet)
7804         * gst/gstcaps.c: (gst_caps_compare_structures),
7805         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
7806         (gst_caps_structure_simplify), (gst_caps_do_simplify),
7807         * gst/gstcaps.h:
7808           add gst_caps_do_simplify that tries to simplify a caps in place.
7809           Deprecate old gst_caps_simplify function.
7810         * testsuite/caps/caps.h:
7811           add caps.h containing a common set of caps to test against.
7812         * testsuite/caps/sets.c: (check_caps), (main):
7813           use it.
7814         * testsuite/caps/.cvsignore:
7815         * testsuite/caps/Makefile.am:
7816         * testsuite/caps/simplify.c: (check_caps), (main):
7817           add test to check correctness and efficency of caps simplification.
7818
7819 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
7820
7821         reviewed by Benjamin Otte  <otte@gnome.org>
7822
7823         * gst/gstparse.c: (_gst_parse_escape):
7824           Free the GString used in _gst_parse_escape()
7825
7826 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7827
7828         * gst/gstpad.c: (gst_pad_link_negotiate):
7829           refuse to link if the link is not possible
7830         * configure.ac:
7831         * testsuite/Makefile.am:
7832         * testsuite/negotiation/.cvsignore:
7833         * testsuite/negotiation/Makefile.am:
7834         * testsuite/negotiation/pad_link.c: (main):
7835           add test that checks the above behaviour
7836
7837 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7838
7839         * docs/gst/gstreamer-sections.txt:
7840           add newly added API
7841
7842 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7843
7844         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
7845         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
7846         (gst_filesrc_open_file), (gst_filesrc_close_file),
7847         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
7848         * gst/elements/gstfilesrc.h:
7849           add support for non-regular files (#140734)
7850
7851 2004-04-21  Benjamin Otte  <otte@gnome.org>
7852
7853         * gst/gstpad.c: (gst_pad_link_fixate):
7854           add sophisticated error checking code to see if fixation functions
7855           did their fixation right
7856
7857 2004-04-21  Benjamin Otte  <otte@gnome.org>
7858
7859         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
7860           check for ANY caps before appending/unioning
7861         * gst/gstcaps.c: (gst_caps_is_subset),
7862         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
7863         (gst_caps_structure_subtract), (gst_caps_subtract):
7864         * gst/gstcaps.h:
7865           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
7866           the API. deprecate gst_caps_is_equal_fixed
7867         * gst/gstpad.c: (gst_pad_try_set_caps):
7868         * gst/gstqueue.c: (gst_queue_link):
7869           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
7870         * gst/gststructure.c: (gst_structure_get_name_id):
7871         * gst/gststructure.h:
7872           add function gst_structure_get_name_id
7873         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
7874         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
7875         (gst_value_subtract_int_range_int_range),
7876         (gst_value_subtract_double_double_range),
7877         (gst_value_subtract_double_range_double),
7878         (gst_value_subtract_double_range_double_range),
7879         (gst_value_subtract_from_list), (gst_value_subtract_list),
7880         (gst_value_can_intersect), (gst_value_subtract),
7881         (gst_value_can_subtract), (gst_value_register_subtract_func),
7882         (_gst_value_initialize):
7883         * gst/gstvalue.h:
7884           add support for subtracting values from each other. Note that
7885           subtracting means subtracting as in set theory. Required for caps
7886           stuff above.
7887         * testsuite/caps/.cvsignore:
7888         * testsuite/caps/Makefile.am:
7889         * testsuite/caps/erathostenes.c: (erathostenes), (main):
7890         * testsuite/caps/sets.c: (check_caps), (main):
7891         * testsuite/caps/subtract.c: (check_caps), (main):
7892           add tests for subtraction and equality code.
7893
7894 2004-04-20  David Schleef  <ds@schleef.org>
7895
7896         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
7897         * gst/indexers/Makefile.am:
7898         * gst/schedulers/Makefile.am:
7899         * libs/gst/bytestream/Makefile.am:
7900         * libs/gst/control/Makefile.am:
7901         * libs/gst/getbits/Makefile.am:
7902
7903 2004-04-20  David Schleef  <ds@schleef.org>
7904
7905         * common/as-libtool.mak: Fine-tune DLL building.
7906         * configure.ac: Link plugins against libgstreamer.  Define plugindir
7907         (like gst-plugins)
7908         * examples/plugins/Makefile.am: remove plugindir
7909         * gst/autoplug/Makefile.am: DLL building fixes
7910         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
7911         Windows.
7912         * gst/elements/gstelements.c: Conditionally disable pipefilter.
7913         * gst/indexers/Makefile.am: DLL building fixes
7914         * gst/schedulers/Makefile.am: DLL building fixes.
7915         * libs/gst/bytestream/Makefile.am: DLL building fixes.
7916         * libs/gst/control/Makefile.am: same
7917         * libs/gst/getbits/Makefile.am: same
7918         * testsuite/Makefile.am: New dlopen directory
7919         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
7920         when dlopened.
7921         * testsuite/dlopen/dlopen_gst.c: (main): same
7922         * testsuite/dlopen/loadgst.c: (do_test): same
7923
7924 2004-04-20  David Schleef  <ds@schleef.org>
7925
7926         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
7927         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
7928
7929 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7930
7931         * gst/gstelement.c: (gst_element_wait),
7932         (gst_element_set_time_delay), (gst_element_change_state):
7933           Use GST_TIME_*
7934
7935 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7936
7937         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
7938         (gst_spider_identity_plug):
7939           improve debugging messages
7940         * gst/gstbin.c: (gst_bin_remove_func):
7941           make sure the state_change function is only called with simple state
7942           transitions
7943
7944 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7945
7946         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
7947         (gst_fakesink_set_property), (gst_fakesink_chain):
7948         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
7949         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
7950         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
7951         * gst/elements/gstidentity.c: (gst_identity_chain),
7952         (gst_identity_set_property):
7953         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
7954         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
7955           add warnings to _set_property for unknown arguments
7956           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
7957
7958 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7959
7960         * Makefile.am:
7961         * docs/manuals.mak:
7962           add .po file download snippet
7963           fix a bug in the doc makefile
7964
7965 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7966
7967         * Makefile.am:
7968         * po/LINGUAS:
7969         * po/en_GB.po:
7970           Added en_GB translation (Gareth Owen)
7971
7972 2004-04-20  Johan Dahlin  <johan@gnome.org>
7973
7974         * gst/gstpad.c (_invent_event): Clean up
7975
7976 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7977
7978         * testsuite/caps/filtercaps.c: (main):
7979           fix test to test things correctly (caps are complicated)
7980
7981 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7982
7983         * testsuite/caps/Makefile.am:
7984         * testsuite/caps/filtercaps.c: (main):
7985           add test (that doesn't work right now, but should)
7986
7987 2004-04-19  David Schleef  <ds@schleef.org>
7988
7989         * configure.ac: Add test for allowing unaligned access.  Add define
7990         to put in gstconfig.h.
7991         * docs/gst/gstreamer-sections.txt: New symbols
7992         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
7993         * docs/gst/tmpl/gstfilesrc.sgml:
7994         * docs/gst/tmpl/gstparse.sgml:
7995         * docs/gst/tmpl/gsttypes.sgml:
7996         * docs/gst/tmpl/gstutils.sgml:
7997         * docs/gst/tmpl/gstvalue.sgml:
7998         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
7999         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
8000         on most !i386/!powerpc architectures.  From Daniel Gazard
8001         <daniel.gazard@free.fr>.  (bug #140156)
8002         * po/af.po: Check in changes made by gettext.
8003         * po/az.po:
8004         * po/fr.po:
8005         * po/nl.po:
8006         * po/sr.po:
8007         * po/sv.po:
8008
8009 2004-04-20  Benjamin Otte  <otte@gnome.org>
8010
8011         * gst/schedulers/entryscheduler.c: 
8012         (gst_entry_scheduler_yield):
8013           refuse to yield when decoupled elements insist on doing that.
8014           At least it's better than crashing
8015
8016 2004-04-19  David Schleef  <ds@schleef.org>
8017
8018         * docs/libs/Makefile.am: Change sinclude to include
8019         * docs/gst/Makefile.am: same
8020         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
8021
8022 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8023
8024         * po/LINGUAS:
8025         * po/uk.po:
8026           Added Ukrainian translation (Maxim V. Dziumanenko)
8027
8028 2004-04-19  Johan Dahlin  <johan@gnome.org>
8029
8030         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
8031         checking here, do it before calling the function.
8032         Clean up, use for loops instead of while loops while iterating
8033         over lists.
8034
8035         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
8036         in debug message.
8037         (gst_spider_create_and_plug): Improve debug message.
8038         General: Replace while loops which iterates over GLists with for
8039         loops. Which are much cleaner, improves readability, especially
8040         for gst_spider_identity_plug
8041
8042         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
8043         fixes bug 140477
8044
8045 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8046
8047         * po/LINGUAS:
8048         * po/tr.po:
8049           Added Turkish translation (Baris Cicek)
8050
8051 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8052
8053         * docs/faq/troubleshooting.xml:
8054           Mention gst-register in the FAQ (fixes 139045).
8055
8056 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8057
8058         * docs/gst/gstreamer-sections.txt:
8059
8060 2004-04-17  Benjamin Otte  <otte@gnome.org>
8061
8062         * gst/gstelement.c: (gst_element_dispose):
8063           simplify
8064         * gst/gstpad.c: (gst_pad_call_chain_function):
8065           don't create loads of events due to bad macro usage
8066
8067 2004-04-16  David Schleef  <ds@schleef.org>
8068
8069         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
8070         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
8071         * gst/gstvalue.c: (gst_value_serialize_buffer),
8072         (gst_value_deserialize_buffer), (gst_type_is_fixed),
8073         (_gst_value_initialize): Create a new function gst_type_is_fixed()
8074         to indicate types that are fixed wrt caps or not.  Switching to
8075         this function fixes (bug #140298).
8076         * gst/gstvalue.h:
8077
8078 2004-04-16  David Schleef  <ds@schleef.org>
8079
8080         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
8081         for GST_UNALIGNED_ACESS, since we essentially know which archs
8082         are ok.
8083
8084 2004-04-17  Benjamin Otte  <otte@gnome.org>
8085
8086         * docs/gst/Makefile.am:
8087           ignore gst/parse directory when building docs (fixes #140205)
8088
8089 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8090
8091         * testsuite/refcounting/mem.c: (vmsize):
8092           do error checking
8093
8094 2004-04-16  Johan Dahlin  <johan@gnome.org>
8095
8096         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
8097         and gst_pad_call_get_function.
8098
8099 2004-04-15  David Schleef  <ds@schleef.org>
8100
8101         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
8102         checks if we can access unaligned memory.
8103         * configure.ac: Use it.
8104
8105 2004-04-16  Benjamin Otte  <otte@gnome.org>
8106
8107         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
8108         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8109         * gst/elements/gstfilesrc.h:
8110           s/seek_happened/need_discont/ and require discont before sending any
8111           data
8112
8113 2004-04-15  David Schleef  <ds@schleef.org>
8114
8115         * gst/gstvalue.c: (gst_value_serialize_buffer),
8116         (gst_value_deserialize_buffer), (_gst_value_initialize):
8117         Register these types as fundamental types. (bug #140015)
8118
8119 2004-04-16  Benjamin Otte  <otte@gnome.org>
8120
8121         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
8122         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
8123         (gst_pad_pull):
8124           implement enforcing discont events before buffers are passed. This
8125           allows state changes of only some elements and later correctly going
8126           on where they left off (or in short: you can now set audio sinks to
8127           NULL to release the device when the pipeline is paused)
8128         * gst/gstpad.c: (gst_pad_call_chain_function),
8129         (gst_pad_call_get_function):
8130         * gst/gstpad.h:
8131           add gst_pad_call_chain_function and gst_pad_call_get_function for
8132           scheduler interaction. They are required because of the changes
8133           above.
8134         * gst/schedulers/entryscheduler.c: (get_buffer),
8135         (gst_entry_scheduler_chain_wrapper),
8136         (gst_entry_scheduler_get_wrapper),
8137         (gst_entry_scheduler_state_transition),
8138         (gst_entry_scheduler_pad_link):
8139         * gst/schedulers/gstbasicscheduler.c:
8140         (gst_basic_scheduler_chain_wrapper),
8141         (gst_basic_scheduler_src_wrapper),
8142         (gst_basic_scheduler_chainhandler_proxy),
8143         (gst_basic_scheduler_gethandler_proxy),
8144         (gst_basic_scheduler_cothreaded_chain),
8145         (gst_basic_scheduler_chain_elements):
8146         * gst/schedulers/gstoptimalscheduler.c:
8147         (get_group_schedule_function), (pad_clear_queued),
8148         (gst_opt_scheduler_pad_link):
8149           use the new functions instead of calling get/chain-functions
8150           directly.
8151
8152 2004-04-15  David Schleef  <ds@schleef.org>
8153
8154         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
8155         * docs/gst/tmpl/gstinfo.sgml: same
8156         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
8157         gtk-doc put here.
8158         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
8159         * examples/queue/queue.c: (main):  We iterate pipelines, not
8160         bins.  (bug #139996)
8161
8162 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8163
8164         * docs/pwg/advanced-types.xml:
8165           Add MS RLE support. Also document Qt RLE although I have no sample
8166           files for that yet. And document an extra property for ADPCM.
8167
8168 2004-04-15  David Schleef  <ds@schleef.org>
8169
8170         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
8171         (_gst_plugin_fault_handler_setup):  Disable more stuff on
8172         Windows.
8173
8174 2004-04-15  David Schleef  <ds@schleef.org>
8175
8176         * gst/gstinfo.c: (_gst_debug_init): Change some internal
8177         symbol names to not conflict with new gstinfo.h symbols.
8178         * gst/gstinfo.h: Add inline functions for all those crazy
8179         compilers that don't know how to handle variadic macros (MSVC).
8180
8181 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8182
8183         * configure.ac: bump nano to 1
8184
8185 === release 0.8.1 ===
8186
8187 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8188
8189         * NEWS:
8190         * RELEASE:
8191         * configure.ac:
8192           releasing 0.8.1, "Snow Brigade"
8193
8194 2004-04-14  David Schleef  <ds@schleef.org>
8195
8196         * testsuite/Makefile.am: define tests_ignore
8197         * testsuite/Rules: Added new tests_ignore, which get compiled,
8198         but not run (generally because they're inconsistent or have
8199         heisenbugs).  Now we can ensure all the .c files compile in
8200         testsuite/.
8201         * testsuite/bins/Makefile.am: define tests_ignore
8202         * testsuite/bytestream/Makefile.am:
8203         * testsuite/caps/Makefile.am:
8204         * testsuite/clock/Makefile.am:
8205         * testsuite/debug/Makefile.am:
8206         * testsuite/debug/global.c: (gst_debug_log_one),
8207         (gst_debug_log_two): Fix compilation problem.
8208         * testsuite/dynparams/Makefile.am:
8209         * testsuite/elements/Makefile.am:
8210         * testsuite/ghostpads/Makefile.am:
8211         * testsuite/indexers/Makefile.am:
8212         * testsuite/parse/Makefile.am:
8213         * testsuite/plugin/Makefile.am:
8214         * testsuite/refcounting/Makefile.am:
8215         * testsuite/refcounting/element_pad.c: (main): Don't return leak
8216         results, because it's not calculated correctly.
8217         * testsuite/refcounting/pad.c: (main): same
8218         * testsuite/states/Makefile.am:
8219         * testsuite/tags/Makefile.am:
8220         * testsuite/threads/Makefile.am:
8221
8222 2004-04-14  David Schleef  <ds@schleef.org>
8223
8224         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
8225         generating bad code around the cpu detection asm code.
8226
8227 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8228
8229         * tools/gst-inspect.c: (print_element_info):
8230           print numeric version of rank as well, since we added some - 1
8231           rank values to elements
8232
8233 2004-04-13  David Schleef  <ds@schleef.org>
8234
8235         * configure.ac:  Disable various code when compiling for MinGW.
8236         * gst/elements/Makefile.am:
8237         * gst/elements/gstelements.c:
8238         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
8239         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
8240         * gst/registries/gstxmlregistry.c: (make_dir):
8241
8242 2004-04-13  David Schleef  <ds@schleef.org>
8243
8244         * gst/Makefile.am:
8245         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
8246         assembly.
8247         * gst/gstcpuid_i386.s: remove
8248
8249 2004-04-13  David Schleef  <ds@schleef.org>
8250
8251         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
8252         seems to think it needs to be done.
8253         * docs/gst/tmpl/gstfakesink.sgml:
8254         * docs/gst/tmpl/gstfakesrc.sgml:
8255         * docs/gst/tmpl/gstfdsink.sgml:
8256         * docs/gst/tmpl/gstfdsrc.sgml:
8257         * docs/gst/tmpl/gstfilesink.sgml:
8258         * docs/gst/tmpl/gstfilesrc.sgml:
8259         * docs/gst/tmpl/gstidentity.sgml:
8260         * docs/gst/tmpl/gstmd5sink.sgml:
8261         * docs/gst/tmpl/gstmultifilesrc.sgml:
8262         * docs/gst/tmpl/gstpipefilter.sgml:
8263         * docs/gst/tmpl/gstshaper.sgml:
8264         * docs/gst/tmpl/gstspider.sgml:
8265         * docs/gst/tmpl/gstspideridentity.sgml:
8266         * docs/gst/tmpl/gststatistics.sgml:
8267         * docs/gst/tmpl/gsttee.sgml:
8268         * docs/gst/tmpl/gsttypefind.sgml:
8269         * docs/gst/tmpl/gstutils.sgml:
8270
8271 2004-04-13  David Schleef  <ds@schleef.org>
8272
8273         * configure.ac: Changes to remove POSIXisms (mmap in this case)
8274         and to build DLLs on Windows.
8275         * gst/Makefile.am:
8276         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8277         (gst_filesrc_open_file):
8278         * gst/schedulers/Makefile.am:
8279
8280 2004-04-13  David Schleef  <ds@schleef.org>
8281
8282         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
8283         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
8284         fixating lists.
8285
8286 2004-04-12  David Schleef  <ds@schleef.org>
8287
8288         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
8289         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
8290         to using it.
8291         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
8292         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
8293         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
8294         * gst/gststructure.c: (gst_structure_set_valist),
8295         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
8296         support for buffers.
8297         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
8298         intended to be const.
8299         * gst/gsttag.h: same
8300         * gst/gstvalue.c: (gst_value_serialize_buffer),
8301         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
8302         to (de)serialize buffers.
8303         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
8304         * testsuite/caps/string-conversions.c: (main):
8305         * testsuite/caps/value_serialize.c: add new test
8306
8307 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8308
8309         * docs/pwg/advanced-types.xml:
8310           Document MS video 1 (video/x-msvideocodec) mimetype/format.
8311
8312 2004-04-11  Benjamin Otte  <otte@gnome.org>
8313
8314         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
8315           rename categories to basic_*
8316         * gst/schedulers/gstbasicscheduler.c: 
8317         (gst_basic_scheduler_chain_wrapper),
8318         (gst_basic_scheduler_chainhandler_proxy),
8319         (gst_basic_scheduler_gethandler_proxy),
8320         (gst_basic_scheduler_eventhandler_proxy):
8321           debugging category fixes - put common stuff in log category
8322         * gst/schedulers/gstbasicscheduler.c: 
8323         (gst_basic_scheduler_chain_elements):
8324           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
8325           active and linking two active chains
8326
8327 2004-04-10  Benjamin Otte  <otte@gnome.org>
8328
8329         * docs/pwg/intro-preface.xml:
8330           fix dead links and remove reference to Wiki
8331
8332 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8333
8334         * gst/schedulers/gstbasicscheduler.c:
8335           make sure we can switch back to the main function if we're still in
8336           the main function (supposed to fix #139617)
8337         * gst/schedulers/gthread-cothreads.h:
8338           don't throw an error when switching to the same cothread
8339
8340 2004-04-09  Benjamin Otte  <otte@gnome.org>
8341
8342         * gst/gstbin.c: (gst_bin_get_type):
8343         * gst/gstclock.c: (gst_clock_get_type):
8344         * gst/gstindex.c: (gst_index_get_type):
8345         * gst/gstobject.c: (gst_object_get_type),
8346         (gst_signal_object_get_type):
8347         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
8348         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
8349         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
8350         * gst/gstqueue.c: (gst_queue_get_type):
8351         * gst/gstregistry.c: (gst_registry_get_type):
8352         * gst/gstsystemclock.c: (gst_system_clock_get_type):
8353         * gst/gstthread.c: (gst_thread_get_type):
8354           don't use memchunks for these objects, use malloc instead
8355
8356 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
8357
8358         * docs/gst/.cvsignore:
8359         * docs/gst/Makefile.am:
8360         * docs/gst/gstreamer-sections.txt:
8361         * docs/gst/tmpl/gstaggregator.sgml:
8362         * docs/gst/tmpl/gstbuffer.sgml:
8363         * docs/gst/tmpl/gstclock.sgml:
8364         * docs/gst/tmpl/gstelement.sgml:
8365         * docs/gst/tmpl/gstfakesink.sgml:
8366         * docs/gst/tmpl/gstfakesrc.sgml:
8367         * docs/gst/tmpl/gstfdsink.sgml:
8368         * docs/gst/tmpl/gstfdsrc.sgml:
8369         * docs/gst/tmpl/gstfilesink.sgml:
8370         * docs/gst/tmpl/gstfilesrc.sgml:
8371         * docs/gst/tmpl/gstidentity.sgml:
8372         * docs/gst/tmpl/gstindex.sgml:
8373         * docs/gst/tmpl/gstinfo.sgml:
8374         * docs/gst/tmpl/gstmd5sink.sgml:
8375         * docs/gst/tmpl/gstmultifilesrc.sgml:
8376         * docs/gst/tmpl/gstpad.sgml:
8377         * docs/gst/tmpl/gstpipefilter.sgml:
8378         * docs/gst/tmpl/gstpipeline.sgml:
8379         * docs/gst/tmpl/gstpluginfeature.sgml:
8380         * docs/gst/tmpl/gstqueue.sgml:
8381         * docs/gst/tmpl/gstregistry.sgml:
8382         * docs/gst/tmpl/gstscheduler.sgml:
8383         * docs/gst/tmpl/gstshaper.sgml:
8384         * docs/gst/tmpl/gstspider.sgml:
8385         * docs/gst/tmpl/gstspideridentity.sgml:
8386         * docs/gst/tmpl/gststatistics.sgml:
8387         * docs/gst/tmpl/gstsystemclock.sgml:
8388         * docs/gst/tmpl/gsttee.sgml:
8389         * docs/gst/tmpl/gstthread.sgml:
8390         * docs/gst/tmpl/gsttypefind.sgml:
8391         * docs/gst/tmpl/gstutils.sgml:
8392           further doc build fixes
8393
8394 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
8395
8396         * docs/gst/Makefile.am:
8397           make docs exit on scanning problems
8398           fix nonsrcdir build issues
8399         * docs/gst/gstreamer-sections.txt:
8400           adding stuff from -unused
8401         * gst/gstqueue.h:
8402           create GstQueueSize
8403         * gst/schedulers/cothreads_compat.h:
8404           fix cothread warnings
8405
8406 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
8407
8408         * docs/gst/gstreamer-sections.txt:
8409           remove defines deprecated by Benjamin
8410
8411 2004-04-07  Benjamin Otte  <otte@gnome.org>
8412
8413         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
8414           when the buffer is complete, don't check if other buffers are needed
8415         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
8416           check that the offset is >0 so we don't try to read before the
8417           beginning of the file
8418         * gst/gstpad.c: (gst_pad_set_pad_template):
8419           sink the template, so we don't end up with 130k pad templates
8420
8421 2004-04-06  Benjamin Otte  <otte@gnome.org>
8422
8423         * gst/autoplug/gstspider.c: (gst_spider_link_add):
8424           don't ref the element, adding already reffed it. And we didn't unref
8425           it later anyway... (huge memleak when you used many spider elements)
8426         * gst/gstelement.c: (gst_element_base_class_finalize):
8427         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
8428         (gst_element_register):
8429         * gst/gsturi.c: (gst_element_make_from_uri):
8430           use gst_object_(un)ref instead of g_object(un)ref
8431
8432 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8433
8434         * gst/gstbuffer.h:
8435           remove macro that wouldn't work anymore because struct member has
8436           been removed.
8437         * gst/schedulers/entryscheduler.c: (schedule_forward):
8438           fix segfault for unconnected pads
8439         
8440 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8441
8442         reviewed by David Schleef <ds@schleef.org>
8443
8444         * gst/gstinfo.h:
8445           *_FORMAT modifiers should require putting a % in front of them for
8446           consistency reasons.
8447
8448 2004-04-05  Colin Walters  <walters@redhat.com>
8449
8450         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
8451         space.
8452
8453 2004-04-05  Benjamin Otte  <otte@gnome.org>
8454
8455         * configure.ac:
8456         * gst/Makefile.am:
8457         * gst/gst_private.h:
8458         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
8459           add support for detecting if GStreamer runs inside valgrind.
8460           requires valgrind (d'oh) and --enable-debug for correct cdetection.
8461           print a big message in valgrind that GStreamer has detected it's
8462           running inside and might now use different code.
8463         * gst/gstmemchunk.c: (populate), (free_area),
8464         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
8465         (gst_mem_chunk_free):
8466           flag memchunks for valgrind, so it can detect leaking of chunks.
8467           This allows detecting leaks of GstBuffer and GstEvent correctly
8468           inside valgrind.
8469
8470 2004-04-05  David Schleef  <ds@schleef.org>
8471
8472         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
8473           jensgr@gmx.net (Jens Granseuer)
8474
8475 2004-04-05  David Schleef  <ds@schleef.org>
8476
8477         * gst/gstbuffer.c: (_gst_buffer_sub_free),
8478         (gst_buffer_default_free), (gst_buffer_default_copy),
8479         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
8480         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
8481         structures in one place.
8482
8483 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8484
8485         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
8486           (GST_TIME_FORMAT, GST_TIME_ARGS)
8487
8488 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8489
8490         * testsuite/elements/Makefile.am:
8491           disable test until it stops breaking make distcheck
8492
8493 2004-04-05  Johan Dahlin  <johan@gnome.org>
8494
8495         * po/sv.po: Updated translation
8496
8497 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8498
8499         * gst/gstplugin.c: (gst_plugin_load_file):
8500           fix segfault for when original plugin was loaded statically
8501
8502 2004-04-05  Benjamin Otte  <otte@gnome.org>
8503
8504         * testsuite/debug/category.c: (main):
8505         * testsuite/debug/commandline.c: (main):
8506         * testsuite/debug/output.c: (main):
8507           fix tests to work again with debugging enabled
8508
8509 2004-04-05  Benjamin Otte  <otte@gnome.org>
8510
8511         * gst/schedulers/gstbasicscheduler.c:
8512         (gst_basic_scheduler_pad_link):
8513           fix to work with recent scheduling changes
8514
8515 2004-04-05  Benjamin Otte  <otte@gnome.org>
8516
8517         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
8518         prepareChangeLog doesn't work when cvs indents):
8519           don't throw an error when no element can be scheduled, there's too
8520           many weird reasons why it doesn't work. Return STOPPED instead.
8521           decoupled elemts' schedulability doesn't depend on bufpens.
8522
8523 2004-04-04  Benjamin Otte  <otte@gnome.org>
8524
8525         * gst/schedulers/gstbasicscheduler.c:
8526         (gst_basic_scheduler_pad_select):
8527           fix uninitialized variable warnings
8528
8529 2004-04-04  Benjamin Otte  <otte@gnome.org>
8530
8531         * gst/gstpad.c: (gst_pad_collect_valist):
8532           fix uninitialized variable warning
8533         * gst/schedulers/entryscheduler.c: (schedule_forward):
8534           fix shadowed variable
8535
8536 2004-04-04  Benjamin Otte  <otte@gnome.org>
8537
8538         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
8539         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
8540         (gst_pad_select):
8541         * gst/gstpad.h:
8542         * gst/gstscheduler.c: (gst_scheduler_pad_select),
8543         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
8544         * gst/gstscheduler.h:
8545           implement gst_pad_collect as replacement for gst_pad_select.
8546           deprecate gst_pad_select and gst_scheduler_(un)lock_element
8547           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
8548           new pad_select, lock and unlock calls.
8549         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
8550         * gst/cothreads.h:
8551         * gst/schedulers/cothreads_compat.h:
8552         * gst/schedulers/gthread-cothreads.h:
8553           remove unused cothread_lock and cothread_unlock calls
8554         * gst/schedulers/entryscheduler.c:
8555         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
8556         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
8557         (gst_entry_scheduler_pad_select):
8558           update to new API
8559         * gst/schedulers/gstbasicscheduler.c:
8560         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
8561         (gst_basic_scheduler_pad_select):
8562           remove useless lock and unlock calls, update pad_select to new API
8563           (untested)
8564         * gst/schedulers/gstoptimalscheduler.c:
8565         (gst_opt_scheduler_class_init):
8566           remove useless select, lock and unlock function calls
8567         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
8568           use gst_pad_collect instead of gst_pad_select
8569
8570 2004-04-04  Benjamin Otte  <otte@gnome.org>
8571
8572         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
8573         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
8574         (schedule_next_element), (print_entry):
8575           add can_schedule_pad to handle element states.
8576           add schedule_forward to select the correct entry to schedule next
8577
8578 2004-04-03  Benjamin Otte  <otte@gnome.org>
8579
8580         * gst/schedulers/entryscheduler.c: 
8581           remove unused variable, fix error inside Rb, fix compile warning in
8582           unreachable code
8583
8584 2004-04-03  Benjamin Otte  <otte@gnome.org>
8585
8586         * gst/schedulers/entryscheduler.c:
8587           completely revamp the inner workings, so it's a lot easier to
8588           understand and extend
8589
8590 2004-04-03  Andy Wingo  <wingo@pobox.com>
8591
8592         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
8593         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
8594         This allows better introspection of pipeline topology.
8595         (add_to_chain): Don't do trickery to put loop elements first;
8596         rather, queue a chain sort by marking the chain as dirty.
8597         (remove_from_chain): Mark the chain dirty.
8598         (sort_chain): New function. Sorts the group list so that terminal
8599         sinks are first. This means elements on the sink side will be
8600         preferentially sscheduled before elements on the src side of the
8601         pipeline.
8602         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
8603         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
8604         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
8605         (group_inc_link): Change argument and variable names to match the
8606         new link structure member names (src and sink).
8607         (group_dec_link): Add some description
8608
8609 2004-04-03  Benjamin Otte  <otte@gnome.org>
8610
8611         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
8612         * gst/gstinfo.h:
8613         * testsuite/debug/category.c: (main):
8614         * testsuite/debug/commandline.c: (main):
8615         * testsuite/debug/output.c: (main):
8616         * testsuite/debug/printf_extension.c: (main):
8617           fix to successfully build and test with --disable-gst-debug
8618           configure switch (fixes #138705)
8619
8620 2004-04-03  Benjamin Otte  <otte@gnome.org>
8621
8622         * docs/pwg/building-boiler.xml:
8623           add cvs login line and s/anonymous/anoncvs/
8624
8625 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
8626
8627         reviewed by Benjamin Otte  <otte@gnome.org>
8628
8629         * gst/gststructure.c: (gst_structure_free):
8630           memleak fix: free fields array (partial fix for #134839)
8631
8632 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8633
8634         * docs/random/ds/0.9-suggested-changes:
8635           Add a note to change handoff use in fakesrc to be usable in
8636           a more generic way (fakesrc should be renamed to appsrc or so).
8637         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8638           Change signal type to scope, so we can fill the buffer in the
8639           handoff handler (that's the whole use of this signal...).
8640
8641 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8642
8643         * docs/pwg/other-ntoone.xml:
8644           Document muxers and n-to-1 elements.
8645
8646 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
8647
8648         * gst/registries/gstxmlregistry.c
8649         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
8650         determine if a file is a G_MODULE. The old one discards paths
8651         containing "so" somewhere in the middle. My home directory is
8652         called "soto". Go figure...
8653
8654 2004-03-31  David Schleef  <ds@schleef.org>
8655
8656         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
8657         to eventually deprecate gst_buffer_merge().  (bug: #136408)
8658         * gst/gstbuffer.h:
8659
8660 2004-03-31  David Schleef  <ds@schleef.org>
8661
8662         * gst/gstvalue.c: (gst_value_union_int_int_range),
8663         (gst_value_union_int_range_int_range), (gst_value_can_union),
8664         (gst_value_union), (_gst_value_initialize):  Add some union
8665         implementations.  We didn't have any previously.
8666         * testsuite/caps/Makefile.am:
8667         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
8668         (gst_audioscale_getcaps), (test_caps), (main): A little test
8669         that is the same as the caps manipulation in audioscale.
8670
8671 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8672
8673         * docs/faq/general.xml:
8674           add entry about "does gst support format X?"
8675
8676 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8677
8678         * gst/gstthread.c:
8679           fix docs
8680         * gst/gstutils.h:
8681           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
8682
8683 2004-03-30  Benjamin Otte  <otte@gnome.org>
8684
8685         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
8686           set the offset of the buffer to the requested offset
8687         * gst/elements/gsttypefind.c: (stop_typefinding):
8688           revert patch 1.18 (which I unfortunately don't know the reason for).
8689           This is needed to allow downstream elements to seek. Otherwise
8690           typefind might overwrite a previous seek by downstream elements.
8691           This lead to errors with id3tag and typefind on some mp3s.
8692         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8693         (gst_entry_scheduler_iterate):
8694           be more verbose when debugging
8695
8696 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8697
8698         * gst/gstcaps.c: (gst_caps_from_string_inplace):
8699           make sure we don't get NULL strings
8700
8701 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8702
8703         * gst/gstcaps.c:
8704         * gst/gstelement.c:
8705         * gst/gstelementfactory.c: (gst_element_factory_get_type):
8706         * gst/gstindex.c: (gst_index_resolver_get_type),
8707         (gst_index_get_type), (gst_index_factory_get_type):
8708         * gst/gstinfo.c:
8709         * gst/gstpad.c:
8710         * gst/gstplugin.c:
8711         * gst/gsturi.c: (gst_uri_handler_get_type):
8712         * gst/gstvalue.c:
8713           first batch of documentation fixes
8714
8715 2004-03-29  David Schleef  <ds@schleef.org>
8716
8717         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
8718         * docs/gst/gstreamer-docs.sgml:  More hacking
8719         * docs/gst/gstreamer-sections.txt:
8720         * docs/gst/tmpl/cothreads_compat.sgml:
8721         * docs/gst/tmpl/gstcaps.sgml:
8722         * docs/gst/tmpl/gstclock.sgml:
8723         * docs/gst/tmpl/gstelement.sgml:
8724         * docs/gst/tmpl/gstevent.sgml:
8725         * docs/gst/tmpl/gstpad.sgml:
8726         * docs/gst/tmpl/gstutils.sgml:
8727         * docs/gst/tmpl/gstxml.sgml:
8728         * docs/gst/tmpl/gthread-cothreads.sgml:
8729         * docs/random/ds/0.9-suggested-changes:
8730         * gst/elements/gstfakesink.h: doc fixes
8731         * gst/elements/gstfakesrc.h: doc fixes
8732         * gst/gstcaps.c: doc fixes
8733         * gst/gstcaps.h: doc fixes
8734         * gst/gstelement.c: doc fixes
8735         * gst/gstelement.h: doc fixes
8736         * gst/gstindex.c: doc fixes
8737         * gst/gstinfo.c: doc fixes
8738         * gst/gstpad.c: doc fixes
8739         * gst/gstpad.h: doc fixes
8740         * gst/gstplugin.c: doc fixes
8741         * gst/gsttypefind.h: doc fixes
8742         * gst/gsturi.c: doc fixes
8743         * gst/gstvalue.c: doc fixes
8744
8745 2004-03-29  Colin Walters  <walters@redhat.com>
8746
8747         * gst/registries/gstxmlregistry.c (get_time)
8748         (plugin_times_older_than_recurse):
8749         Use the result of stat to determine whether a path is a file,
8750         so we don't attempt to opendir() files.
8751
8752 2004-03-29  Benjamin Otte  <otte@gnome.org>
8753
8754         * gst/gstpad.c: (gst_pad_set_explicit_caps):
8755           print caps in debugging output when setting caps failed
8756         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8757         (schedule_next_element), (get_buffer), (run_chainhandler),
8758         (element_may_start), (gst_entry_scheduler_chain_handler),
8759         (gst_entry_scheduler_get_handler),
8760         (gst_entry_scheduler_state_transition),
8761         (gst_entry_scheduler_pad_link):
8762           make this scheduler a testcase for mandatory
8763           discont-before-first-buffer which is needed if we want to allow apps
8764           to release the sound device.
8765           add SCHED_ASSERT macro to print scheduler state before an assertion
8766           triggers.
8767
8768 2004-03-29  Benjamin Otte  <otte@gnome.org>
8769
8770         * COPYING:
8771           replace by LGPL (former COPYING.LIB). The core is completely
8772           licensed LGPL.
8773         * COPYING.LIB:
8774           remove
8775
8776 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8777
8778         * po/af.po:
8779         * po/sv.po:
8780           updated Afrikaans and Swedish
8781
8782 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8783
8784         * po/LINGUAS:
8785         * po/az.po:
8786           adding Azerbaijani (Mətin Əmirov)
8787
8788 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
8789
8790         * gst/gstelement.h: 
8791         * gst/gstelement.c (gst_element_set_time_delay): New function for
8792         setting element time taking into account a hardware buffering
8793         delay.
8794         (gst_element_set_time): Now just an invocation of
8795         gst_element_set_time_delay.
8796         * gst/gstclock.h: 
8797         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
8798         allowing to set event times in the future.
8799         (gst_clock_get_event_time): Now just an invocation of
8800         gst_clock_get_event_time_delay.
8801
8802 2004-03-28  Benjamin Otte  <otte@gnome.org>
8803
8804         * gst/gstbin.c: (gst_bin_set_element_sched),
8805         (gst_bin_unset_element_sched):
8806           don't add decoupled elements to schedulers - otherwise it's
8807           impossible to control if a link to a decoupled element was already
8808           removed from a scheduler or not.
8809         * gst/schedulers/cothreads_compat.h:
8810         * gst/schedulers/gthread-cothreads.h:
8811           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
8812           is no "unused" warning.
8813         * gst/schedulers/Makefile.am:
8814         * gst/schedulers/entryscheduler.c:
8815           add new scheduler, based on ideas from talking to David and Martin.
8816           It's supposed to be small and correct. Currently it's also slow (but
8817           it's not noticable)
8818         * examples/retag/retag.c: (main):
8819         * testsuite/bytestream/test1.c: (main):
8820           fix missing NULLs at end of variadic functions
8821         * testsuite/elements/.cvsignore:
8822           update
8823
8824 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
8825
8826         * gst/gstevent.h:
8827         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
8828
8829 2004-03-25  David Schleef  <ds@schleef.org>
8830
8831         * docs/gst/gstreamer-sections.txt:  More doc hacking.
8832         * docs/gst/tmpl/gstaggregator.sgml:
8833         * docs/gst/tmpl/gstautoplugfactory.sgml:
8834         * docs/gst/tmpl/gstbin.sgml:
8835         * docs/gst/tmpl/gstbuffer.sgml:
8836         * docs/gst/tmpl/gstbufferstore.sgml:
8837         * docs/gst/tmpl/gstfakesink.sgml:
8838         * docs/gst/tmpl/gstfakesrc.sgml:
8839         * docs/gst/tmpl/gstmd5sink.sgml:
8840         * docs/gst/tmpl/gstreamer-unused.sgml:
8841         * docs/gst/tmpl/gstsearchfuncs.sgml:
8842         * docs/gst/tmpl/gstshaper.sgml:
8843         * docs/gst/tmpl/gstspider.sgml:
8844         * docs/gst/tmpl/gsttee.sgml:
8845         * docs/gst/tmpl/gstutils.sgml:
8846         * docs/gst/tmpl/gstvalue.sgml:
8847         * docs/gst/tmpl/gstxml.sgml:
8848         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
8849         and we don't support it.
8850         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
8851         (gst_use_threads), (gst_has_threads): same
8852         * gst/gstthreaddummy.c: same
8853         * gst/autoplug/gstspider.c: Make gst_spider_details static.
8854         * gst/autoplug/gstspider.h: same
8855         * gst/elements/gstaggregator.h: Remove bogus function from header
8856         * gst/elements/gstfakesink.h: same
8857         * gst/elements/gstfakesrc.h: same
8858         * gst/elements/gstmd5sink.h: same
8859         * gst/elements/gstshaper.h: same
8860         * gst/elements/gsttee.h: same
8861         * gst/gstbin.c: doc fixes
8862         * gst/gstbin.h: Remove unused definition.
8863         * gst/gstbuffer.c: doc fixes
8864         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
8865         * gst/gstfilter.c: doc fixes
8866         * gst/gsttag.c: doc fixes
8867         * gst/gstvalue.c: doc fixes
8868
8869 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8870
8871         * docs/pwg/advanced-types.xml:
8872           Document typefinding.
8873         * docs/pwg/other-oneton.xml:
8874           Document one-to-n elements, demuxers and parsers.
8875
8876 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
8877
8878         reviewed by: David Schleef  <ds@schleef.org>
8879
8880         * configure.ac: Check bison version (bug #127838)
8881
8882 2004-03-25  David Schleef  <ds@schleef.org>
8883
8884         * docs/gst/gstreamer-docs.sgml: More fine tuning.
8885         * docs/gst/gstreamer-sections.txt:
8886         * docs/gst/tmpl/gstautoplug.sgml:
8887         * docs/gst/tmpl/gststaticautoplug.sgml:
8888         * docs/gst/tmpl/gststaticautoplugrender.sgml:
8889         * docs/gst/tmpl/gstutils.sgml:
8890         * docs/gst/tmpl/gstxml.sgml:
8891
8892 2004-03-24  David Schleef  <ds@schleef.org>
8893
8894         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
8895         manual being such complete crap, that I decided to do major
8896         hacking of it.  This checkin replaces any fine tuning that
8897         may have been done previously, with the benefit of actually
8898         being complete for much of the API that was changed since
8899         0.6.  Further fine tuning will occur shortly.  (bug #134721)
8900         * docs/gst/gstreamer-sections.txt:
8901         * docs/gst/tmpl/GstBin.sgml:
8902         * docs/gst/tmpl/GstBuffer.sgml:
8903         * docs/gst/tmpl/GstCaps.sgml:
8904         * docs/gst/tmpl/GstClock.sgml:
8905         * docs/gst/tmpl/GstCompat.sgml:
8906         * docs/gst/tmpl/GstData.sgml:
8907         * docs/gst/tmpl/GstElement.sgml:
8908         * docs/gst/tmpl/GstEvent.sgml:
8909         * docs/gst/tmpl/GstIndex.sgml:
8910         * docs/gst/tmpl/GstStructure.sgml:
8911         * docs/gst/tmpl/GstTag.sgml:
8912         * docs/gst/tmpl/cothreads.sgml:
8913         * docs/gst/tmpl/cothreads_compat.sgml:
8914         * docs/gst/tmpl/gettext.sgml:
8915         * docs/gst/tmpl/grammar.tab.sgml:
8916         * docs/gst/tmpl/gst-i18n-app.sgml:
8917         * docs/gst/tmpl/gst-i18n-lib.sgml:
8918         * docs/gst/tmpl/gst.sgml:
8919         * docs/gst/tmpl/gst_private.sgml:
8920         * docs/gst/tmpl/gstaggregator.sgml:
8921         * docs/gst/tmpl/gstarch.sgml:
8922         * docs/gst/tmpl/gstatomic.sgml:
8923         * docs/gst/tmpl/gstatomic_impl.sgml:
8924         * docs/gst/tmpl/gstbin.sgml:
8925         * docs/gst/tmpl/gstbuffer.sgml:
8926         * docs/gst/tmpl/gstbufferstore.sgml:
8927         * docs/gst/tmpl/gstcaps.sgml:
8928         * docs/gst/tmpl/gstclock.sgml:
8929         * docs/gst/tmpl/gstcompat.sgml:
8930         * docs/gst/tmpl/gstconfig.sgml:
8931         * docs/gst/tmpl/gstcpu.sgml:
8932         * docs/gst/tmpl/gstdata.sgml:
8933         * docs/gst/tmpl/gstdata_private.sgml:
8934         * docs/gst/tmpl/gstelement.sgml:
8935         * docs/gst/tmpl/gstenumtypes.sgml:
8936         * docs/gst/tmpl/gsterror.sgml:
8937         * docs/gst/tmpl/gstevent.sgml:
8938         * docs/gst/tmpl/gstfakesink.sgml:
8939         * docs/gst/tmpl/gstfakesrc.sgml:
8940         * docs/gst/tmpl/gstfilesink.sgml:
8941         * docs/gst/tmpl/gstfilter.sgml:
8942         * docs/gst/tmpl/gstindex.sgml:
8943         * docs/gst/tmpl/gstinfo.sgml:
8944         * docs/gst/tmpl/gstinterface.sgml:
8945         * docs/gst/tmpl/gstlog.sgml:
8946         * docs/gst/tmpl/gstmacros.sgml:
8947         * docs/gst/tmpl/gstmarshal.sgml:
8948         * docs/gst/tmpl/gstmd5sink.sgml:
8949         * docs/gst/tmpl/gstmultifilesrc.sgml:
8950         * docs/gst/tmpl/gstobject.sgml:
8951         * docs/gst/tmpl/gstpad.sgml:
8952         * docs/gst/tmpl/gstparse.sgml:
8953         * docs/gst/tmpl/gstpipeline.sgml:
8954         * docs/gst/tmpl/gstplugin.sgml:
8955         * docs/gst/tmpl/gstpluginfeature.sgml:
8956         * docs/gst/tmpl/gstqueue.sgml:
8957         * docs/gst/tmpl/gstreamer-unused.sgml:
8958         * docs/gst/tmpl/gstregistry.sgml:
8959         * docs/gst/tmpl/gstregistrypool.sgml:
8960         * docs/gst/tmpl/gstscheduler.sgml:
8961         * docs/gst/tmpl/gstsearchfuncs.sgml:
8962         * docs/gst/tmpl/gstshaper.sgml:
8963         * docs/gst/tmpl/gstspider.sgml:
8964         * docs/gst/tmpl/gstspideridentity.sgml:
8965         * docs/gst/tmpl/gststructure.sgml:
8966         * docs/gst/tmpl/gstsystemclock.sgml:
8967         * docs/gst/tmpl/gsttag.sgml:
8968         * docs/gst/tmpl/gsttaginterface.sgml:
8969         * docs/gst/tmpl/gsttee.sgml:
8970         * docs/gst/tmpl/gstthread.sgml:
8971         * docs/gst/tmpl/gsttrace.sgml:
8972         * docs/gst/tmpl/gsttrashstack.sgml:
8973         * docs/gst/tmpl/gsttypefind.sgml:
8974         * docs/gst/tmpl/gsttypes.sgml:
8975         * docs/gst/tmpl/gsturi.sgml:
8976         * docs/gst/tmpl/gsturitype.sgml:
8977         * docs/gst/tmpl/gstutils.sgml:
8978         * docs/gst/tmpl/gstvalue.sgml:
8979         * docs/gst/tmpl/gstversion.sgml:
8980         * docs/gst/tmpl/gstxml.sgml:
8981         * docs/gst/tmpl/gstxmlregistry.sgml:
8982         * docs/gst/tmpl/gthread-cothreads.sgml:
8983         * docs/gst/tmpl/types.sgml:
8984
8985 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8986
8987         * docs/pwg/other-sink.xml:
8988         * docs/pwg/other-source.xml:
8989           Documentation on how to write source and sink elements. Other
8990           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
8991           manager, autoplugger) are all still pending.
8992
8993 2004-03-25  Benjamin Otte  <otte@gnome.org>
8994
8995         * testsuite/elements/Makefile.am:
8996         * testsuite/elements/gst-compprep-check:
8997           add check to make sure gst-compprep works
8998         * testsuite/elements/gst-inspect-check.in:
8999           improve initialization output
9000         * testsuite/Makefile.am:
9001         * testsuite/gst-inspect-check:
9002           remove old file
9003
9004 2004-03-24  David Schleef  <ds@schleef.org>
9005
9006         * testsuite/elements/Makefile.am:
9007         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
9008         to the testsuite.
9009
9010 2004-03-24  Benjamin Otte  <otte@gnome.org>
9011
9012         * libs/gst/control/dparam.c: (gst_dparam_attach),
9013         (gst_dparam_detach):
9014         * libs/gst/control/dparammanager.c: (gst_dpman_init):
9015           fix lvalue casts for real
9016
9017 2004-03-24  Benjamin Otte  <otte@gnome.org>
9018
9019         * gst/schedulers/gstbasicscheduler.c:
9020         (gst_basic_scheduler_src_wrapper):
9021         * gst/schedulers/gstoptimalscheduler.c:
9022         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
9023         (pad_clear_queued), (gst_opt_scheduler_add_element),
9024         (gst_opt_scheduler_remove_element):
9025           fix GStreamer to not have issues with lvalue casts anymore (fixes
9026           #136841)
9027
9028 2004-03-24  Benjamin Otte  <otte@gnome.org>
9029
9030         * gst/gstelement.c:
9031           add documentation about a gobject quirk where the object hasn't the
9032           correct class pointer set on initialization
9033         * gst/schedulers/gstbasicscheduler.c:
9034         (gst_basic_scheduler_src_wrapper):
9035           make sure to not run into an infinite loop
9036
9037 2004-03-22  Benjamin Otte  <otte@gnome.org>
9038
9039         * gst/gstutils.c: (gst_util_dump_mem):
9040         * gst/gstutils.h:
9041           first argument of gst_util_dump_mem should be const
9042
9043 2004-03-22  Johan Dahlin  <johan@gnome.org>
9044
9045         * gst/gstvalue.h: Clean up a little bit.
9046
9047 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
9048
9049         reviewed by Benjamin Otte  <otte@gnome.org>
9050
9051         * gst/autoplug/gstspider.c: (gst_spider_dispose):
9052         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
9053         (gst_aggregator_class_init), (gst_aggregator_init):
9054         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9055         (gst_filesrc_dispose), (gst_filesrc_set_location):
9056         * gst/elements/gstidentity.c: (gst_identity_finalize),
9057         (gst_identity_class_init), (gst_identity_chain):
9058         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
9059         * gst/elements/gststatistics.c: (gst_statistics_finalize),
9060         (gst_statistics_class_init):
9061         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
9062         (gst_tee_get_property):
9063           clean up used memory in this elements correctly on teardown (closes
9064           #137279)
9065
9066 2004-03-20  Colin Walters  <walters@redhat.com>
9067
9068         * gst/registries/gstxmlregistry.c:
9069         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
9070         registry saving atomic.
9071
9072 2004-03-20  Colin Walters  <walters@redhat.com>
9073
9074         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
9075         Just use
9076         access() instead of actually creating and deleting files.
9077
9078 2004-03-18  David Schleef  <ds@schleef.org>
9079
9080         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
9081         (bug #137625)
9082
9083 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9084
9085         * po/sv.po: updated translation (Christian Rose)
9086
9087 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9088
9089         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
9090         (gst_filesink_get_query_types), (_do_init),
9091         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
9092           return FALSE silently
9093         * po/af.po: updated translation (Petri Jooste)
9094
9095 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9096
9097         * Makefile.am:
9098         * configure.ac:
9099           dist common properly
9100         * po/af.po:
9101         * po/fr.po:
9102         * po/nl.po:
9103         * po/sr.po:
9104         * po/sv.po:
9105           refreshing translations
9106
9107 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9108
9109         * po/LINGUAS:
9110         * po/sv.po:
9111         * po/af.po:
9112           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
9113
9114 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9115
9116         * Makefile.am: use common/release.mak
9117
9118 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9119
9120         * docs/faq/gst-uninstalled:
9121           adding gst-monkeysaudio to the list of possible plugin dirs
9122
9123 2004-03-16  David Schleef  <ds@schleef.org>
9124
9125         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
9126         (gst_init_check_with_popt_table):  Fix some gettext strings to
9127         make them easier to translate.  Required making the strings
9128         non-const.
9129
9130 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9131
9132         * configure.ac: bump nano to 1
9133
9134 === release 0.8.0 ===
9135
9136 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9137
9138         * configure.ac: release 0.8.0, "Executive Slacks"
9139
9140 2004-03-16  Johan Dahlin  <johan@gnome.org>
9141
9142         * gst/schedulers/gstoptimalscheduler.c
9143         (gst_opt_scheduler_pad_unlink): Remove double ;,
9144         spotted by Scott Wheeler
9145
9146 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9147
9148         * configure.ac: bump libtool version
9149
9150 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9151
9152         * gst/gstcaps.h:
9153         * gst/gststructure.h:
9154           add reserved padding
9155
9156 2004-03-15  Benjamin Otte  <otte@gnome.org>
9157
9158         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9159           set the first parameter for select call correctly.
9160           (fixes #137230)
9161
9162 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9163
9164         * *.c,*.h: don't mix tabs and spaces
9165
9166 2004-03-15  Johan Dahlin  <johan@gnome.org>
9167
9168         * gst/schedulers/gstoptimalscheduler.c
9169         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
9170         crash on MPEG playback. My boolean arithmetic is a bit rusty.
9171
9172         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
9173         
9174 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9175
9176         * testsuite/Rules:
9177           fix gst-register rules
9178
9179 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9180
9181         * testsuite/Rules:
9182           use versioned gst-register
9183
9184 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9185
9186         * docs/libs/gstreamer-libs-sections.txt:
9187           remove </SUBSECTION>
9188         * gst/gstplugin.c:
9189         * gst/gstregistry.c: (gst_registry_add_plugin):
9190         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
9191         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
9192           add debugging and fix some comment blocks
9193
9194 2004-03-15  Johan Dahlin  <johan@gnome.org>
9195
9196         * *.h: Revert indent changes.
9197         
9198 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9199
9200         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
9201           g_error_free the g_error
9202         * tools/gst-feedback-m.m:
9203           check for other versions of gstreamer
9204         * tools/gst-indent:
9205           use sh, not bash
9206
9207 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9208
9209         * tools/gst-register.c: do not spill paths when registries are not
9210           writable, until we fix the "user running gst-register" case.
9211
9212 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9213
9214         * *.c, *.h: commit of gst-indent run on core
9215
9216 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9217
9218         * tools/gst-indent:
9219         * tools/Makefile.am:
9220           add our indentation style as a script
9221
9222 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9223
9224         * po/sr.po:
9225         * po/LINGUAS:
9226           added Serbian translation
9227
9228 2004-03-13  Benjamin Otte  <otte@gnome.org>
9229
9230         * gst/gstelement.c:
9231           add documentation note about gst_element_found_tags_for_pad not
9232           being usable in getfunctions. (see #137042)
9233
9234 2004-03-12  David Schleef  <ds@schleef.org>
9235
9236         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
9237         change API right now!  Readd gst_caps_is_simple() macro.
9238         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
9239         uninitialized variable.  I'd bet this caused crashes.
9240         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
9241
9242 2004-03-12  Johan Dahlin  <johan@gnome.org>
9243
9244         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
9245         * gst/gstcaps.h: Clean up
9246
9247         * gst/gst.c (init_post): call gst_caps_get_type() instead of
9248         _gst_caps_initalize()
9249
9250         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
9251         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
9252
9253         * gst/gststructure.c (gst_structure_get_type): Ditto
9254
9255         * gst/gststructure.h: Ditto
9256         
9257 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9258
9259         * gst/gstqueue.c: (gst_queue_init):
9260           Reset default max. values in queues. Reason is simply to avoid
9261           braindead use. If you want wider values, use the properties. The
9262           default is supposed to always work. Wider values would make this
9263           beast a memory hog by default (250 full-PAL RGB32 video frames?
9264           That's 440 MB! No thank you).
9265
9266 2004-03-10  David Schleef  <ds@schleef.org>
9267
9268         * tools/gst-run.c: (main):  Fix crash when no relevant tools
9269         were found.  (bug #136793)
9270
9271 2004-03-10  Johan Dahlin  <johan@gnome.org>
9272
9273         * gst/schedulers/gstoptimalscheduler.c
9274         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
9275         links to elements within the same group, so we can finally remove
9276         that annoying warning. Refactor the code a little bit
9277         (group_dec_links_for_element): Split out
9278
9279 2004-03-09  David Schleef  <ds@schleef.org>
9280
9281         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
9282         (bug #134863)
9283
9284 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9285
9286         * configure.ac: first bug fix due to major/minor bump
9287
9288 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9289
9290         * configure.ac: bump nano to 1
9291
9292 === release 0.7.6 ===
9293
9294 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9295
9296         * NEWS:
9297         * RELEASE:
9298         * configure.ac:
9299           releasing 0.7.6, "Almost"
9300         * po/fr.po:
9301         * po/nl.po:
9302         * tools/Makefile.am:
9303         * tools/gst-feedback-m.m:
9304           unversioned source
9305
9306 2004-03-09  Johan Dahlin  <johan@gnome.org>
9307
9308         Reviewed by: Thomas Vander Stichele
9309
9310         * gst/gstelement.c (gst_element_class_init): register second
9311         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
9312         language bindings can (de)marshall correctly.
9313
9314         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
9315
9316         * gst/gsterror.c (gst_g_error_get_type): New function
9317
9318         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
9319         with VOID:OBJECT,OBJECT,STRING 
9320
9321 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
9322
9323         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
9324         Free a leaked g_timer on early returns.
9325
9326 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9327
9328         * docs/pwg/advanced-types.xml:
9329           Add cinepak description.
9330
9331 2004-03-07  David Schleef  <ds@schleef.org>
9332
9333         * docs/random/mimetypes:  Added cinepak description
9334
9335 2004-03-07  Andy Wingo  <wingo@pobox.com>
9336
9337         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
9338
9339         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
9340         there are no links to other groups when a group is destroyed.
9341         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
9342         removed from a group, make sure the link count to elements linked
9343         to other pads is appropriately decremented. This really fixes
9344         #135672.
9345
9346         The 1.60->1.61 patch has been reapplied in light of this fix.
9347
9348         * gst/gstelement.c (gst_element_dispose): Really protect against
9349         multiple invocations this time.
9350
9351 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9352
9353         * docs/gst/gstreamer-sections.txt:
9354         * docs/gst/tmpl/gsttag.sgml:
9355           remove some deprecated functions, document some existing ones
9356         * gst/gsttag.c: (gst_tag_get_flag):
9357         * gst/gsttag.h:
9358           add accessor function
9359
9360 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9361
9362         * docs/gst/gstreamer-sections.txt:
9363         * docs/gst/tmpl/gsttag.sgml:
9364         * docs/gst/tmpl/gstxml.sgml:
9365         * gst/gsttag.c: (gst_tag_get_flag):
9366         * gst/gsttag.h:
9367
9368 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
9369
9370         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
9371         leak
9372
9373 2004-03-05  David Schleef  <ds@schleef.org>
9374
9375         * REQUIREMENTS: Add bison and flex.
9376         * configure.ac: Fix comment about bison.
9377         * docs/random/ds/0.9-suggested-changes: yer ma
9378         * tools/gst-inspect.c: (print_element_info):  Fix warning.
9379
9380 2004-03-05  Benjamin Otte  <otte@gnome.org>
9381
9382         * gst/gstelement.c: (gst_element_error_full):
9383           revert recent recursive state changing commit - messing with other
9384           elements' states is evil and should be done by apps only.
9385
9386 2004-03-05  Benjamin Otte  <otte@gnome.org>
9387
9388         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
9389           check for empty intersection instead of NULL caps
9390         (gst_element_get_compatible_pad_filtered):
9391           remove old workaround that is only a bug nowadays
9392
9393 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9394
9395         * gst/gstelement.c: (gst_element_error_full):
9396           make elements try to recursively change state to PAUSED on all
9397           parents after an error to suppress ensuing warnings
9398         * gst/parse/grammar.y:
9399           make it check if it was able to sync the state, and throw an error
9400           if not, so stuff like
9401           oggdemux ! vorbisdec ! osssink gets caught
9402
9403 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9404
9405         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
9406           it contains lib64; use AS_AC_EXPAND to handle it properly
9407
9408 2004-03-05  David Schleef  <ds@schleef.org>
9409
9410         * gst/gstcpuid_i386.s:  Remove unused code
9411         * libs/gst/getbits/getbits.c: (gst_getbits_init),
9412         (gst_getbits_newbuf): Remove MMX code
9413         * libs/gst/getbits/getbits.h: Remove MMX code
9414
9415 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
9416
9417         * debian/.cvsignore:
9418         * debian/README.Debian:
9419         * debian/changelog:
9420         * debian/control:
9421         * debian/control.in:
9422         * debian/copyright:
9423         * debian/gstreamer-core-libs-dev.files:
9424         * debian/gstreamer-core-libs.files:
9425         * debian/gstreamer-core.files:
9426         * debian/gstreamer-core.postinst:
9427         * debian/gstreamer-core.postrm:
9428         * debian/gstreamer-doc.files:
9429         * debian/gstreamer-doc.links:
9430         * debian/gstreamer-doc.lintian:
9431         * debian/gstreamer-runtime.files:
9432         * debian/gstreamer-runtime.manpages:
9433         * debian/gstreamer-runtime.postinst:
9434         * debian/gstreamer-runtime.postrm:
9435         * debian/gstreamer-tools.files:
9436         * debian/gstreamer-tools.manpages:
9437         * debian/libgstreamer-dev.files:
9438         * debian/libgstreamer0.4.1.files:
9439         * debian/libgstreamerVERSION.files:
9440         * debian/rules:
9441         Debian package info not maintained here.
9442
9443 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9444
9445         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9446         * gst/gstbin.c: (gst_bin_class_init):
9447         * gst/gstelement.c: (gst_element_class_init):
9448         * gst/gstindex.c: (gst_index_class_init):
9449         * gst/gstobject.c: (gst_object_class_init),
9450         (gst_signal_object_class_init):
9451         * gst/gstpad.c: (gst_pad_template_class_init):
9452         * gst/gstregistry.c: (gst_registry_class_init):
9453         * gst/gsturi.c: (gst_uri_handler_base_init):
9454         * gst/gstxml.c: (gst_xml_class_init):
9455         * libs/gst/control/dparam.c: (gst_dparam_class_init):
9456         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
9457           make all signal names use dashes instead of underscore
9458
9459 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9460
9461         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
9462
9463 2004-03-03  Benjamin Otte  <otte@gnome.org>
9464
9465         * gst/schedulers/gstoptimalscheduler.c:
9466           revert last commit by Andy Wingo. It causes segfaults on unreffing
9467           in Rhythmbox. (see bug #135672)
9468
9469 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
9470
9471         * po/fr.po: fix typo
9472
9473 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
9474
9475         * tools/gst-inspect.c: (main): 
9476         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
9477
9478 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9479
9480         * configure.ac:
9481           get GLIB_ONLY and POPT flags for the nonversioned binaries
9482         * tools/Makefile.am:
9483           use them
9484
9485 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9486
9487         * gst/gst.c: (init_post):
9488           change so that GST_REGISTRY now is where the global registry gets
9489           saved, since that is where plugins now get attached to first, and
9490           spilled over to the user registry.  Note that in the case of using
9491           GST_REGISTRY env var, we don't want to affect any real registries
9492           beyond the one given by this var, and thus we don't set a user
9493           registry to spill to.  So make sure GST_REGISTRY is writable.
9494
9495 2004-03-01  David Schleef  <ds@schleef.org>
9496
9497         * AUTHORS:  Added some names.  Add yourself if you're missing.
9498
9499 2004-03-01  David Schleef  <ds@schleef.org>
9500
9501         * MAINTAINERS: Add
9502
9503 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
9504
9505         * configure.ac:
9506           remove whitespace
9507         * docs/gst/tmpl/gstbuffer.sgml:
9508         * docs/gst/tmpl/gstdata.sgml:
9509         * docs/gst/tmpl/gstreamer-unused.sgml:
9510         * docs/gst/tmpl/gstxml.sgml:
9511           doc update
9512         * docs/manuals.mak:
9513           add a FIXME
9514         * docs/pwg/intro-preface.xml:
9515         * docs/pwg/pwg.xml:
9516           remove GNOME
9517         * gst/gst.c: (init_post):
9518           try GST_PLUGIN_PATH paths for the _global_registry first
9519         * gst/gstelement.h:
9520           add the error message as well, otherwise (null) debug info doesn't
9521           make much sense
9522         * tools/gst-register.c: (main):
9523           spill paths to next registry if this registry is not writable
9524         * po/fr.po:
9525         * po/nl.po:
9526           translation updates
9527
9528 2004-03-01  Johan Dahlin  <johan@gnome.org>
9529
9530         * gst/gstbuffer.c (_gst_buffer_initialize): 
9531         * gst/gstdata.c (gst_data_get_type): 
9532         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
9533         instead of ref, since some applications that uses GBoxed
9534         routines depends on a function that actually returns a copy.
9535
9536 2004-02-27  Benjamin Otte  <otte@gnome.org>
9537
9538         * gst/gstbuffer.h:
9539           remove gst_buffer_free, use gst_data_unref
9540         * gst/gstdata.c: (gst_data_get_type):
9541           use refcounting in GstData GBoxed registration
9542         * gst/gstdata.h:
9543           remove gst_data_free, use gst_data_unref
9544
9545 2004-02-27  Johan Dahlin  <johan@gnome.org>
9546
9547         * gst/gstdata.c (gst_data_get_type): New function, register
9548         GstData as a GBoxed type.
9549
9550         * gst/gstdata.h (GST_TYPE_DATA): New macro
9551
9552 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
9553
9554         * Makefile.am:
9555         * gstreamer.spec.in:
9556           put back RELEASE
9557         * gst/Makefile.am:
9558           clean up non-disting of built files
9559         * testsuite/debug/commandline.c:
9560           test fix for option rename
9561
9562 2004-02-26  David Schleef  <ds@schleef.org>
9563
9564         * configure.ac:  We don't really need glib-2.3.  Also remove
9565         some unneeded checks for library functions.
9566         * gst/Makefile.am:  Instead, we need to not dist files created
9567         by glib-genmarshal.
9568
9569 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9570
9571         * configure.ac:
9572           bump glib required version to 2.3.0 for g_value_takes_boxed
9573
9574  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
9575
9576         * common/m4/gst-docs.m4
9577         change flavour text from enable to disable as enable is our default
9578         closes bug Bug 135304
9579
9580 === release 0.7.5 ===
9581  
9582  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9583  
9584         * NEWS:
9585           instate NEWS file
9586         * Makefile.am:
9587         * gstreamer.spec.in:
9588         * RELEASE:
9589           put back release
9590         * configure.ac:
9591         * docs/random/release:
9592           more updates
9593
9594 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9595
9596         * gst/gsttag.c: (_gst_tag_initialize):
9597         * po/fr.po:
9598         * po/nl.po:
9599           remove hyphen from codec tags
9600
9601 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9602
9603         * gst/parse/Makefile.am:
9604           fix dependency so that a make from a clean build works the first
9605           time
9606
9607 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9608
9609         * docs/random/release:
9610           update release strategy
9611         * po/fr.po:
9612           auto-update po file
9613         * po/nl.po:
9614           update dutch translation
9615
9616 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
9617
9618         * docs/manual/debugging.xml:
9619         fix manual for new debugging system
9620
9621 2004-02-25  Andy Wingo  <wingo@pobox.com>
9622
9623         * gst/gstpad.c (gst_pad_link_prepare): Re-add
9624         gst_pad_link_prepare. Please email the list with specific reasons
9625         for reverting.
9626
9627 2004-02-24  Andy Wingo  <wingo@pobox.com>
9628
9629         * gst/gstelement.c (gst_element_dispose): Protect against multiple
9630         invocations.
9631
9632         * gst/schedulers/gstoptimalscheduler.c:
9633         I added a mess of prototypes at the top of the file by way of
9634         documentation. Some of the operations on chains and groups were
9635         re-organized.
9636
9637         (create_group): Added a type argument so if the group is enabled,
9638         the setup_group_scheduler knows what to do.
9639         (group_elements): Added a type argument here, too, to be passed on
9640         to create_group.
9641         (group_element_set_enabled): If an unlinked PLAYING element is
9642         added to a bin, we have to create a new group to hold the element,
9643         and this function will be called before the group is added to the
9644         chain. Thus we have a valid case for group->chain==NULL. Instead
9645         of calling chain_group_set_enabled, just set the flag on the group
9646         (the chain's status will be set when the group is added to it).
9647         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
9648         Setup the group scheduler when the group is enabled, not
9649         specifically when an element goes PAUSED->PLAYING. This means
9650         PLAYING elements can be added, linked, and scheduled into a
9651         PLAYING pipeline, as was intended.
9652         (add_to_group): Don't ref the group twice. I don't know when this
9653         double-ref got in here. Removing it has the potential to cause
9654         segfaults if other parts of the scheduler are buggy. If you find
9655         that the scheduler is segfaulting for you, put in an extra ref
9656         here and see if that hacks over the underlying issue. Of course,
9657         then find out what code is unreffing a group it doesn't own...
9658         (create_group): Make the extra refcount floating, and remove it
9659         after adding the element. This means that...
9660         (unref_group): Destroy when the refcount reaches 0, not 1, like
9661         every other refcounted object in the known universe.
9662         (remove_from_group): When a group becomes empty, set it to be not
9663         active, and remove it from its chain. Don't unref it again,
9664         there's no floating reference any more.
9665         (destroy_group): We have to remove the group from the chain in
9666         remove_from_group (rather than here) to break refcounting cycles
9667         (the chain always has a ref on the group). So assert that
9668         group->chain==NULL.
9669         (ref_group_by_count): Removed, it was commented out anyway.
9670         (merge_chains): Use the remove_from_chain and add_to_chain
9671         primitives to do the reparenting, instead of rolling our own
9672         implementation.
9673         (add_to_chain): The first non-disabled group in the chain's group
9674         list will be the entry point for the chain. Because buffers can
9675         accumulate in loop elements' peer bufpens, we preferentially
9676         schedule loop groups before get groups to avoid unnecessary
9677         execution of get-based groups when the bufpens are already full.
9678         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
9679         (get_group_schedule_function): Ditto.
9680         (loop_group_schedule_function): Ditto.
9681         (gst_opt_scheduler_loop_wrapper): Ditto.
9682         (gst_opt_scheduler_iterate): Ditto.
9683
9684         I understand the opt scheduler now, yippee!
9685
9686         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
9687         (gst_pad_get_name, gst_pad_set_chain_function) 
9688         (gst_pad_set_get_function, gst_pad_set_event_function) 
9689         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
9690         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
9691         (gst_pad_set_query_function, gst_pad_get_query_types) 
9692         (gst_pad_get_query_types_default) 
9693         (gst_pad_set_internal_link_function) 
9694         (gst_pad_set_formats_function, gst_pad_set_link_function) 
9695         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
9696         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
9697         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
9698         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
9699         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
9700         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
9701         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
9702         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
9703         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
9704         (gst_pad_event_default_dispatch, gst_pad_event_default) 
9705         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
9706         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
9707         (gst_pad_get_formats_default, gst_pad_get_formats): Better
9708         argument checks, and some doc fixes.
9709
9710         (gst_pad_custom_new_from_template): Um, does anyone
9711         use these functions? Actually make a custom pad instead of a
9712         normal one.
9713         (gst_pad_try_set_caps): Transpose some checks.
9714         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
9715         the pad is in negotiation.
9716         (gst_pad_try_relink_filtered): Use pad_link_prepare.
9717         
9718         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
9719
9720         * gst/gstelement.h: 
9721         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
9722         on the list.
9723
9724 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
9725
9726         * gst/gstbin.c: (gst_bin_add):
9727           add error for not being able to add elements
9728
9729 2004-02-22  Julien MOUTTE <julien@moutte.net>
9730
9731         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
9732         audio-codec and video-codec.
9733
9734 2004-02-22  Benjamin Otte  <otte@gnome.org>
9735
9736         reported by: Padraig O'Briain <padraig.obriain@sun.com>
9737
9738         * autogen.sh:
9739           replace test -e with test -x for mkinstalldirs to be more portable.
9740           (fixes #134816)
9741
9742 2004-02-22  Benjamin Otte  <otte@gnome.org>
9743
9744         * gst/gstpad.c:
9745           revert last patch from Andy, it makes gst_pad_can_link_filtered much
9746           too noisy
9747         * gst/gsttag.c: (_gst_tag_initialize):
9748         * gst/gsttag.h:
9749           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
9750         * libs/gst/control/dparam.c: (gst_dparam_attach):
9751         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
9752           check that types for attached dparams match
9753
9754 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
9755
9756         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
9757         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9758         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
9759           fix errors
9760
9761 2004-02-20  Andy Wingo  <wingo@pobox.com>
9762
9763         * gst/gstbin.c:
9764         * gst/gstbuffer.c:
9765         * gst/gstplugin.c:
9766         * gst/registries/gstxmlregistry.c: 
9767         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
9768
9769         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
9770         (gst_element_add_pad): DEBUG->INFO, some fixes.
9771         (gst_element_get_compatible_pad_template): Just see if the
9772         templates' caps intersect, not if one is a strict subset of the
9773         other. This conforms more to what gst_pad_link_intersect() does.
9774         (gst_element_class_add_pad_template): Don't memcpy the pad
9775         template, just ref it.
9776         (gst_element_get_compatible_pad_filtered): Clean up debug messages
9777
9778         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
9779         (gst_pad_link_filtered): Debug changes.
9780         (gst_pad_link_prepare): New function, consolidated from
9781         can_link_filtered and link_filtered.
9782
9783         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
9784         look more like that of the functions in gstelement.c
9785
9786         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
9787         object, and return the empty string if object is NULL.
9788
9789         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
9790         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
9791         LOG, not DEBUG. We still get flex info on debug.
9792
9793         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
9794         debug string more verbose.
9795         (plugin_times_older_than): DEBUG->LOG.
9796
9797 2004-02-20  Julien MOUTTE <julien@moutte.net>
9798
9799         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
9800         will emit found_tag for each stream they demux with the codec.
9801
9802 2004-02-20  Benjamin Otte  <otte@gnome.org>
9803
9804         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
9805           copy navigation event correctly. Check freeing tag lists. 
9806         * gst/gstthread.c: (gst_thread_change_state):
9807           don't abort() on state changing mess - it might happen because of
9808           bugs.
9809         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
9810           use boxed functions
9811         * gst/gstvalue.h:
9812           fix GST_VALUE_HOLDS_CAPS
9813
9814 2004-02-19  David Schleef  <ds@schleef.org>
9815
9816         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
9817         and use it for GST_FUNCTION.  (bug #134750)
9818
9819 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9820
9821         * po/fr.po:
9822         * po/nl.po:
9823           updating translations
9824
9825 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9826
9827         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
9828
9829 2004-02-18  kost@imn.htwk-leipzig.de
9830
9831         reviewed by: David Schleef  <ds@schleef.org>
9832
9833         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
9834         for libgstcontrol.
9835
9836 2004-02-18  David Schleef  <ds@schleef.org>
9837
9838         * libs/gst/control/dparam.c: (gst_dparam_class_init):
9839         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9840         (gst_dpsmooth_new): Additional fixes to get double dparams working.
9841         * tools/gst-inspect.c: (print_element_info): Support dumping of
9842         double dparam information.
9843
9844 2004-02-17  David Schleef  <ds@schleef.org>
9845
9846         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9847         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
9848         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
9849         Use GST_TYPE_CAPS in signal prototype.
9850         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
9851         Convert GST_TYPE_CAPS to boxed.
9852         * gst/gstelement.c: (gst_element_class_init):
9853         Use GST_TYPE_TAG_LIST in signal prototype.
9854         * gst/gstindex.c: (gst_index_class_init):
9855         * gst/gstindex.h:
9856         Add GST_TYPE_INDEX_ENTRY type.
9857         * gst/gstmarshal.list:
9858         Add necessary marshal types.
9859         * gst/gstpad.c: (gst_real_pad_class_init),
9860         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
9861         (gst_pad_recover_caps_error):
9862         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
9863         * gst/gststructure.c: (_gst_structure_initialize),
9864         (gst_structure_copy), (_gst_structure_copy_conditional):
9865         * gst/gststructure.h:
9866         Convert GST_TYPE_STRUCTURE to boxed.
9867         * gst/gsttag.c: (gst_tag_list_get_type):
9868         * gst/gsttag.h:
9869         Add GST_TYPE_TAG_LIST type.
9870
9871 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9872
9873         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
9874         to what we agreed with david.
9875         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
9876
9877 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9878
9879         * po/nl.po: update translation
9880
9881 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9882
9883         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9884           throw an error if spider is trying to play a mime type there is
9885           no decoder for
9886         * po/POTFILES.in:
9887           add gst/autoplug/gstspider.c for translation
9888
9889 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9890
9891         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
9892         silently when the pad is negotiating.
9893
9894 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9895
9896         * docs/faq/Makefile.am:
9897           add script to run gstreamer uninstalled 
9898         * docs/faq/faq.xml:
9899         * docs/faq/developing.xml:
9900         * docs/faq/gst-uninstalled:
9901           extract script to run gstreamer uninstalled
9902         * docs/manuals.mak:
9903           add EXTRA_SOURCES variable for Makefile.am's to set to
9904           use additional SOURCE files for the doc build
9905
9906 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9907
9908         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
9909
9910 2004-02-15  Julien MOUTTE  <julien@moutte.net>
9911
9912         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
9913         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
9914         an error was thrown by osssink. Basically a state change failure for
9915         an element in a different scheduling group was considered as
9916         successful, which means that caps nego was going on and weird stuff
9917         happened. Like I wrote in the comment there, if someone wants to
9918         revert that please drop me a mail explaining why because I really see
9919         no point in keeping that broken behaviour there.
9920         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
9921         be empty, we then return NULL which will trigger a nice error when 
9922         pulling from the pad.
9923
9924 2004-02-13  David Schleef  <ds@schleef.org>
9925
9926         * libs/gst/control/dparam.c: (gst_dparam_class_init),
9927         (gst_dparam_get_property), (gst_dparam_set_property),
9928         (gst_dparam_do_update_default):
9929         * libs/gst/control/dparam.h:
9930         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9931         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
9932         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
9933         (gst_dpsmooth_do_update_double):
9934         * libs/gst/control/dparam_smooth.h:
9935         * libs/gst/control/dparammanager.c:
9936         (gst_dpman_inline_direct_update):
9937         Add support for double dparams.
9938
9939 2004-02-13  David Schleef  <ds@schleef.org>
9940
9941         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
9942         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
9943
9944 2004-02-13  Mattias Wadman  <mattias@sudac.org>
9945
9946         reviewed by: David Schleef  <ds@schleef.org>
9947
9948         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
9949         (gst_fdsrc_init), (gst_fdsrc_set_property),
9950         (gst_fdsrc_get_property), (gst_fdsrc_get):
9951         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
9952         and sends an EOS event if file descriptor reading times out.
9953
9954 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9955
9956         * configure.ac:
9957           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
9958
9959 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9960
9961         * configure.ac: pass required libxml version as argument
9962         (bug reported by Christophe Fergeau)
9963
9964 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9965   
9966         * docs/gst/gstreamer-docs.sgml:
9967         * docs/gst/tmpl/gstxml.sgml:
9968         * docs/libs/gstreamer-libs-docs.sgml:
9969           version API docs
9970
9971 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9972
9973         * gst/gstinfo.c:
9974         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
9975         (gst_registry_pool_feature_filter):
9976         * gst/gstthread.c: (gst_thread_class_init):
9977         * gst/gstvalue.c:
9978           add includes exposed by building without libxml
9979         * gst/indexers/Makefile.am:
9980           do not build fileindex when LOADSAVE disabled; we should have
9981           a better libxml check later since fileindex depends on xml, not
9982           LOADSAVE or REGISTRY
9983         * libs/gst/control/Makefile.am:
9984           link with m
9985         * tools/Makefile.am:
9986           fix wrong source code for gst-xmlinspect
9987
9988 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9989
9990         * configure.ac:
9991           fix gcov help output
9992           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
9993         * docs/random/release:
9994           some updated releasing notes
9995         * gstreamer.spec.in:
9996           more updates
9997
9998 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9999
10000         * docs/faq/faq.xml:
10001         * docs/manual/manual.xml:
10002         * docs/pwg/pwg.xml:
10003         * docs/pwg/titlepage.xml:
10004           put version in documentation
10005
10006 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10007
10008         * tools/Makefile.am: fix man page installation
10009
10010 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10011
10012         * configure.ac:
10013           don't check for libxml when load/save and registry disabled (#105844)
10014         * gstreamer.spec.in:
10015           sync with fedora candidate spec
10016
10017 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10018
10019         * po/fr.po:
10020         * po/nl.po:
10021           replace multidisksrc with multifilesrc
10022
10023 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10024
10025         * po/POTFILES.in:
10026           update to multidisksrc => multifilesrc file renaming (#134145)
10027
10028 2004-02-11  David Schleef  <ds@schleef.org>
10029
10030         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
10031         * docs/gst/tmpl/gstpadtemplate.sgml: same
10032         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
10033         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
10034         fixing dance.
10035         * gst/gstutils.c: Remove disabled code that uses GstProps.
10036         * gst/registries/gstxmlregistry.h: same
10037         * docs/random/ds/0.9-suggested-changes: random notes
10038
10039 2004-02-11  kost@imn.htwk-leipzig.de
10040
10041         reviewed by: David Schleef  <ds@schleef.org>
10042
10043         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
10044         initialisation of clock (bug #134128)
10045
10046 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10047
10048         * configure.ac:
10049         * gst/elements/Makefile.am:
10050         * gst/elements/gstelements.c:
10051         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
10052         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
10053         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
10054         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
10055         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
10056         * gst/elements/gstmultifilesrc.h:
10057           rename multidisksrc to multifilesrc (part of #122200)
10058
10059 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10060
10061         * docs/manuals.mak:
10062           fix automake complaints
10063         * gst-element-check.m4:
10064           fix unquotedness
10065
10066 2004-02-11  David Schleef  <ds@schleef.org>
10067
10068         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
10069         * gst/gstatomic_impl.h: Disable sparc implementation.
10070
10071 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10072
10073         * gst-element-check.m4:
10074           fix underquoted macros as reported by automake 1.8.x (#133800)
10075         * configure.ac:
10076           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
10077           by autopoint (fixes #132996)
10078
10079 2004-02-10  Andy Wingo  <wingo@pobox.com>
10080
10081         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
10082         way to do inheritance.
10083         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
10084         (gst_pad_get_query_types, gst_pad_get_query_types_default):
10085         Routine docs.
10086         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
10087         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
10088         doc.
10089         (gst_pad_unlink, gst_pad_is_linked): Docs.
10090         (gst_pad_renegotiate): A brief description of capsnego.
10091         (gst_pad_try_set_caps): Document.
10092         (gst_pad_try_set_caps_nonfixed): Document.
10093         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
10094         (gst_pad_set_parent): Deprecated (although not out of the API).
10095         (gst_pad_get_parent): Deprecated, although many plugins use this.
10096         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
10097         are private and will go away in 0.9.
10098         (gst_pad_perform_negotiate): Doc.
10099         (gst_pad_link_unnegotiate): I think this is meant to be static.
10100         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
10101         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
10102         (gst_pad_get_peer): Doc updates.
10103         (gst_pad_caps_change_notify): Doc.
10104         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
10105         (gst_ghost_pad_new): Doc fixes.
10106
10107         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
10108         (gst_object_check_uniqueness): 
10109
10110         * gst/gstelement.c (gst_element_add_pad) 
10111         (gst_element_add_ghost_pad, gst_element_remove_pad) 
10112         (gst_element_remove_ghost_pad, gst_element_get_pad) 
10113         (gst_element_get_static_pad, gst_element_get_pad_list) 
10114         (gst_element_class_get_pad_template_list) 
10115         (gst_element_class_get_pad_template): Work on the docs.
10116         (gst_element_get_pad_template_list): Uses the class method.
10117         (gst_element_get_compatible_pad_template): Docs, and consolidate
10118         some test conditions. 
10119         (gst_element_get_pad_from_template): New static function.
10120         (gst_element_request_compatible_pad): Docs, and work with
10121         non-request compatible templates. 
10122         (gst_element_get_compatible_pad_filtered): Docs and remove
10123         redundant checks.
10124         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
10125         (gst_element_link_filtered, gst_element_link_many) 
10126         (gst_element_link, gst_element_link_pads) 
10127         (gst_element_unlink_many): Docs.
10128
10129 2004-02-05  Andy Wingo  <wingo@pobox.com>
10130
10131         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
10132         s/pointer/boxed/.
10133
10134         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
10135
10136         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
10137         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
10138         with the type=GST_TYPE_CAPS. This allows language bindings to know
10139         what kind of data they're dealing with.
10140
10141         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
10142         to NULL when g_value_init is called. GstCaps, which rolls its own
10143         type implementation, now does the same instead of allocating empty
10144         caps.
10145         (_gst_caps_initialize, _gst_caps_collect_value,
10146         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
10147         table methods. This allows G_VALUE_COLLECT to work.
10148
10149 2004-02-05  Andy Wingo  <wingo@pobox.com>
10150
10151         * configure.ac:
10152         * testsuite/Makefile.am (SUBDIRS): 
10153         * testsuite/ghostpads/Makefile.am: 
10154         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
10155
10156         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
10157         These two routines are the only ones that set
10158         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
10159         pad template. They should be made static, depending on ABI needs.
10160         (gst_real_pad_dispose): Handle the case of ghost pads without a
10161         parent. Assert after dealing with ghost pads that the ghost pad
10162         list is empty.
10163         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
10164         set after creation.
10165         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
10166         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
10167         functions. set_property will call add_ghost_pad/remove_ghost_pad
10168         as appropriate.
10169         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
10170
10171         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
10172         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
10173         (gst_element_remove_pad): Handle ghost pads as well.
10174         (gst_element_remove_ghost_pad): Deprecated (could be removed,
10175         depending on API-stability needs).
10176
10177 2004-02-05  Andy Wingo  <wingo@pobox.com>
10178
10179         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
10180         of course they're const
10181
10182 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10183
10184         * tools/Makefile.am:
10185         * tools/gst-feedback:
10186         * tools/gst-feedback-0.7:
10187           make gst-feedback versioned too for consistency
10188
10189 2004-02-11  David Schleef  <ds@schleef.org>
10190
10191         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10192         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
10193
10194 2004-02-10  Julien MOUTTE <julien@moutte.net>
10195
10196         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
10197         the structure does not contain a valid tag list. Adding a safety check
10198         to remove a noisy warning in that case.
10199
10200 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
10201
10202         * gst/gst.c: fix name to be in line with others
10203
10204 2004-02-09  Julien MOUTTE <julien@moutte.net>
10205
10206         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
10207         not shout that loud when len is 0. Just return 0 silently.
10208
10209 2004-02-09  Julien MOUTTE  <julien@moutte.net>
10210
10211         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
10212         because data_unref has one and I prefer the debug to be symetric.
10213         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
10214         were refed when added to the queue and unrefed only once when the queue
10215         was flushed. Now the flush handler unref the buffers two times : first
10216         unref for the ref added when pushing in the queue's tail and second
10217         unref to destroy the flushed buffer.
10218
10219 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10220
10221         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
10222
10223 2004-02-06  David Schleef  <ds@schleef.org>
10224
10225         * docs/random/ds/0.9-suggested-changes: Random ramblings
10226         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
10227         to int before printing.
10228         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
10229         * gst/parse/parse.l: same.  See bug #129600
10230
10231 2004-02-06  David Schleef  <ds@schleef.org>
10232
10233         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
10234         (gst_index_add_entry), (gst_index_add_associationv),
10235         (gst_index_add_association): Add gst_index_add_associationv()
10236         and clean up gst_index_add_association(). #127133
10237
10238 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10239
10240         * autogen.sh: check out common with right tag if CVS/Tag exists
10241
10242 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10243
10244         * testsuite/ghostpads/ghostpads.c: (main):
10245           fix testsuite from segfaulting
10246
10247 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10248
10249         * Makefile.am: add release target
10250         * configure.ac: bump nano to 1
10251         * docs/random/release:
10252
10253 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10254
10255         * gst/gstcaps.h:
10256         * gst/gstelement.c: (gst_element_base_class_init),
10257         (gst_element_class_set_details), (gst_element_clear_pad_caps):
10258         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10259         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
10260         (gst_real_pad_dispose):
10261         * gst/gststructure.c: (gst_structure_free),
10262         (gst_structure_from_string):
10263           put reverted patch back in
10264         * gst/gstelement.c: (gst_element_remove_pad):
10265           free explicit caps if they're set
10266         * gst/gstpad.c: (_gst_pad_default_fixate_func):
10267           copy the structure when fixating
10268
10269 2004-02-05  David Schleef  <ds@schleef.org>
10270
10271         * gst/gstmarshal.list:
10272         * gst/gstpad.c: (gst_real_pad_class_init),
10273         (_gst_real_pad_fixate_accumulator):
10274         Revert POINTER->BOXED change in signal marshaller.
10275
10276 === release 0.7.4 ===
10277                                                                                 
10278 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10279                                                                                 
10280         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
10281         * configure.ac: changed for release
10282
10283 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
10284
10285         * gstreamer.spec.in:
10286           bump required version of gtk-doc
10287
10288 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10289
10290         * gst/gstcaps.h:
10291         * gst/gstelement.c: (gst_element_base_class_init),
10292         (gst_element_class_set_details), (gst_element_clear_pad_caps):
10293         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10294         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
10295         (gst_real_pad_dispose):
10296         * gst/gststructure.c: (gst_structure_free),
10297         (gst_structure_from_string):
10298           revert patch that breaks applications, reapply after release
10299           to get this fixed properly
10300
10301 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10302
10303         * gst/gsttag.c: (_gst_tag_initialize):
10304         * gst/gsttag.h:
10305           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
10306
10307 2004-02-04  David Schleef  <ds@schleef.org>
10308
10309         Fix some memleaks:
10310         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
10311         (gst_spider_plug_from_srcpad):
10312         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
10313
10314 2004-02-04  David Schleef  <ds@schleef.org>
10315
10316         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
10317         a GstRealPad before accessing its structure members.
10318
10319 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10320
10321         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
10322         (gst_clock_get_speed):
10323         * gst/gstclock.h:
10324           reset padding, remove unused fields
10325
10326 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10327
10328         * gst/autoplug/gstspideridentity.c:
10329         (gst_spider_identity_sink_loop_type_finding):
10330           use get_allowed_caps, not get_caps (fixes #132519)
10331         * gst/elements/gsttypefind.c: (stop_typefinding):
10332           use correct order when sending buffers and seeking
10333
10334 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10335
10336         * configure.ac:
10337         * gst/gstelement.h:
10338         * gst/gstpad.h:
10339         * gst/gstqueue.h:
10340           upgrade libtool CURRENT, reset padding
10341
10342 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10343
10344         * configure.ac:
10345           bump to prerelease
10346           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
10347
10348 2004-02-04  David Schleef  <ds@schleef.org>
10349
10350         * docs/random/ds/0.9-suggested-changes: random notes
10351         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
10352         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
10353         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
10354         expansion.
10355         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10356         (gst_filesink_get_query_types): same
10357         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
10358         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
10359         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
10360         to use new GST_PTR_FORMAT.
10361         * gst/gstelement.h: deprecate function factory macros
10362         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
10363         These are our last variadic macros that can't be replaced with
10364         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
10365         attempting to deprecate gst_element_clock_wait().
10366         * gst/gstevent.h: same
10367         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10368         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
10369         * gst/gstpad.h: deprecate function factory macros similar to above.
10370
10371 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10372
10373         * configure.ac:
10374         * tools/Makefile.am:
10375         * tools/gst-run.c: (popt_callback), (hash_print_key),
10376         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
10377         (get_candidates), (main):
10378           add new source file to generate non-versioned wrapper binaries
10379           for our tools.
10380
10381 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10382
10383         * gst/gstevent.c: (_gst_event_free):
10384           actually break; inside the switch statement
10385         * gst/parse/grammar.y:
10386           fix memleak where GValues weren't unset
10387
10388 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10389
10390         * gst/gststructure.c: (gst_structure_from_string):
10391           fix huge memleak
10392         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
10393         (new_entry), (gst_type_find_element_chain):
10394         * gst/gstelement.c: (gst_element_base_class_init),
10395         (gst_element_class_set_details):
10396         * gst/gstpad.c: (gst_pad_can_link_filtered):
10397           fix smaller memleaks
10398         * gst/gstpad.c: (gst_real_pad_dispose):
10399           check that explicit caps are gone
10400         * gst/gststructure.c: (gst_structure_free):
10401           actually free the structure
10402         * gst/gstelement.c: (gst_element_clear_pad_caps):
10403           unset explicit caps
10404
10405 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10406
10407         * tools/Makefile.am:
10408           use AM_CFLAGS since all the CFLAGS are the same
10409           use AM_LDFAGS
10410
10411 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10412
10413         * docs/manual/gnome.xml:
10414           expand example a little
10415         * gst/gst.c: (gst_init_with_popt_table),
10416         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
10417           make sure popt option displays are done with right textdomain
10418           use GstPoptOption type
10419         * gst/gst.h:
10420           create GstPoptOption type
10421
10422 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10423
10424         * gst/gsterror.c: (_gst_stream_errors_init):
10425         * gst/gsterror.h:
10426           adding error type for no codec
10427         * po/POTFILES.in:
10428           add gst-inspect
10429         * po/nl.po:
10430           update dutch translation
10431         * tools/gst-inspect.c: (print_element_list), (main):
10432           do proper internationalization
10433         * tools/gst-launch.c: (idle_func):
10434           remove commented out function call
10435
10436 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10437
10438         * docs/README:
10439           add some error fixing notes
10440         * docs/gst/gstreamer-sections.txt:
10441           remove double entries
10442         * docs/gst/tmpl/gstbin.sgml:
10443         * docs/gst/tmpl/gstclock.sgml:
10444           remove override
10445         * docs/gst/tmpl/gstelement.sgml:
10446         * docs/gst/tmpl/gstindex.sgml:
10447         * docs/gst/tmpl/gstobject.sgml:
10448         * docs/gst/tmpl/gstpadtemplate.sgml:
10449         * docs/gst/tmpl/gstreamer-unused.sgml:
10450         * docs/gst/tmpl/gsttag.sgml:
10451         * docs/gst/tmpl/gstthread.sgml:
10452         * docs/gst/tmpl/gstxml.sgml:
10453         * gst/gsttag.h:
10454           sync header prototypes with c decls
10455         * gst/gsttaginterface.c:
10456           fix doc headers
10457
10458 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10459
10460         * gst/parse/Makefile.am:
10461         * gst/gstobject.h:
10462           get rid of gstmarshal.h dependency. It's not needed.
10463         * gst/gst.h:
10464         * gst/elements/gstfakesink.c:
10465         * gst/elements/gstfakesrc.c:
10466         * gst/elements/gstidentity.c:
10467         * gst/gstbin.c:
10468         * gst/gstelement.c:
10469         * gst/gstindex.c:
10470         * gst/gstobject.c:
10471         * gst/gstpad.c:
10472         * gst/gstthread.c:
10473         * gst/gstxml.c:
10474         * libs/gst/control/dparam.c:
10475         * libs/gst/control/dparammanager.c:
10476           include gstmarshal.h.
10477         Fixes #132045
10478
10479 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10480
10481         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10482         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
10483         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
10484         * gst/elements/gstfilesrc.h:
10485           don't ref the filesrc when creating mmaped buffers. Don't keep a
10486           list of not-yet-destroyed buffers.
10487         * gst/gstbuffer.h:
10488           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
10489
10490 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10491
10492         * gst/gst.c: (init_pre):
10493           remove textdomain
10494
10495 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10496
10497         * docs/pwg/advanced-events.xml:
10498         * docs/pwg/advanced-scheduling.xml:
10499         * docs/pwg/intro-basics.xml:
10500         * docs/pwg/other-manager.xml:
10501         * docs/pwg/other-nton.xml:
10502         * docs/pwg/other-ntoone.xml:
10503         * docs/pwg/other-oneton.xml:
10504         * docs/pwg/pwg.xml:
10505           All sort of documentation... Forgot what. Point is that I want this
10506           in before I leave. The 'other-*' will be the last section and will
10507           explain issues specific to these type of elements.
10508
10509 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10510
10511         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10512         (gst_filesrc_get_read):
10513           set all the values on buffers that we can
10514
10515 2004-02-02  David Schleef  <ds@schleef.org>
10516
10517         Change usage of isblah() to g_ascii_isblah() to be more locale
10518         independent.  (#133076)
10519         * gst/gsturi.c: (gst_uri_protocol_check_internal):
10520         * gst/gstutils.c:
10521         * gst/parse/parse.l:
10522
10523 2004-02-02  Jon Trowbridge  <trow@gnu.org>
10524
10525         reviewed by: David Schleef  <ds@schleef.org>
10526
10527         Fix memory leaks:
10528         * gst/gstcaps.c: (gst_caps_to_string):
10529         * gst/registries/gstxmlregistry.c:
10530         (gst_xml_registry_add_path_list_func),
10531         (gst_xml_registry_parse_padtemplate):
10532
10533 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10534
10535         * gst/gstelement.c: (gst_element_default_error):
10536           suffix error messages with period
10537
10538 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10539
10540         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10541         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10542         * gst/gsterror.c: (gst_error_get_message):
10543           Suffix with dots
10544         * po/fr.po:
10545         * po/nl.po:
10546           Update translation files
10547
10548 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10549
10550         * gst/autoplug/gstspideridentity.c:
10551         (gst_spider_identity_sink_loop_type_finding):
10552         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10553         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10554         (gst_filesink_close_file), (gst_filesink_handle_event),
10555         (gst_filesink_chain):
10556         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10557         (gst_filesrc_get_read), (gst_filesrc_open_file):
10558         * gst/elements/gstidentity.c: (gst_identity_chain):
10559         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10560         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10561         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10562         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10563         * gst/gsterror.c: (_gst_core_errors_init),
10564         (_gst_library_errors_init), (_gst_resource_errors_init),
10565         (_gst_stream_errors_init), (gst_error_get_message):
10566         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10567         (gst_pad_recover_caps_error), (gst_pad_pull):
10568         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10569         * gst/schedulers/gstbasicscheduler.c:
10570         (gst_basic_scheduler_chainhandler_proxy),
10571         (gst_basic_scheduler_gethandler_proxy),
10572         (gst_basic_scheduler_cothreaded_chain):
10573           Suffix error messages with period.
10574           Use (NULL) instead of NULL
10575
10576 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10577
10578         * docs/gst/tmpl/gstelement.sgml:
10579         * docs/gst/tmpl/gstxml.sgml:
10580         * gst/gstelement.c: (gst_element_error_full):
10581           add element path to error
10582
10583 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10584
10585         * docs/random/mimetypes:
10586           update raw int/float info
10587         * gst/gsttag.c: (_gst_tag_initialize):
10588         * gst/gsttag.h:
10589           add GST_TAG_ENCODER
10590
10591 2004-01-30  David Schleef  <ds@schleef.org>
10592
10593         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
10594           missing (#132991)
10595
10596 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
10597
10598         reviewed by Benjamin Otte 
10599           parts of the patch submitted in bug #113913
10600
10601         * configure.ac:
10602           use AC_C_INLINE. Use = instead of == with test
10603         * examples/plugins/example.c:
10604         * gst/autoplug/gstspideridentity.c:
10605         * gst/elements/gstfdsrc.c:
10606         * gst/elements/gstfilesrc.c:
10607         * gst/elements/gstidentity.c:
10608         * gst/elements/gstmultidisksrc.c:
10609         * gst/elements/gststatistics.c:
10610         * gst/gstelement.c:
10611         * gst/gstobject.c:
10612         * gst/gstpad.c:
10613         * gst/gstpipeline.c:
10614         * gst/gstthread.c:
10615           don't end enums with a comma
10616         * gst/gstindex.c: (gst_index_compare_func):
10617           do explicit casting to gint
10618         * gst/gsttrace.c: (gst_trace_text_flush):
10619           #define strsize as a macro
10620
10621 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10622
10623         * docs/README:
10624         * docs/gst/gstreamer-docs.sgml:
10625         * docs/gst/gstreamer-sections.txt:
10626         * docs/gst/tmpl/gstelement.sgml:
10627         * docs/gst/tmpl/gsterror.sgml:
10628         * docs/gst/tmpl/gstinterface.sgml:
10629         * docs/gst/tmpl/gstreamer-unused.sgml:
10630         * docs/gst/tmpl/gststructure.sgml:
10631         * docs/gst/tmpl/gsttag.sgml:
10632         * docs/gst/tmpl/gsttaginterface.sgml:
10633         * docs/gst/tmpl/gstvalue.sgml:
10634         make sure all API ends up in the built docs
10635         * gst/gstinterface.c:
10636         * gst/gststructure.c: (gst_structure_id_set_value),
10637         (gst_structure_set_value), (gst_structure_id_get_value):
10638         * gst/gststructure.h:
10639         * gst/gstvalue.h:
10640         sync .h with .c declarations
10641
10642 2004-01-30  Julien Moutte  <julien@moutte.net>
10643
10644         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
10645         Ronald will fix riffread.
10646
10647 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10648
10649         * docs/pwg/advanced-interfaces.xml:
10650           Added tuner interface docs.
10651
10652 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10653
10654         * docs/random/mimetypes:
10655           correct Theora information
10656         * gst/gstelement.h:
10657           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
10658
10659 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10660
10661         * gst/gstelement.c: (gst_element_error_full):
10662         * gst/gstelement.h:
10663           GST_ELEMENT_ERROR in enum -> _IN_ERROR
10664
10665 2004-01-29  Julien MOUTTE  <julien@moutte.net>
10666
10667         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10668         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
10669         again and even before DISCONT.
10670         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
10671         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
10672         bytestream so that it's not stopping to fill the bytestream if events
10673         different than EOS or DISCONT are received. Instead it process them so
10674         that they go downstream.
10675
10676 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10677
10678         * docs/gst/tmpl/gstelement.sgml:
10679         * docs/gst/tmpl/gstreamer-unused.sgml:
10680         * docs/gst/tmpl/gstxml.sgml:
10681         * gst/autoplug/gstspideridentity.c:
10682         (gst_spider_identity_sink_loop_type_finding):
10683         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10684         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10685         (gst_filesink_close_file), (gst_filesink_handle_event),
10686         (gst_filesink_chain):
10687         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10688         (gst_filesrc_get_read), (gst_filesrc_open_file):
10689         * gst/elements/gstidentity.c: (gst_identity_chain):
10690         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10691         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10692         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10693         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10694         * gst/gstelement.h:
10695         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10696         (gst_pad_recover_caps_error), (gst_pad_pull):
10697         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10698         * gst/schedulers/gstbasicscheduler.c:
10699         (gst_basic_scheduler_chainhandler_proxy),
10700         (gst_basic_scheduler_gethandler_proxy),
10701         (gst_basic_scheduler_cothreaded_chain):
10702           gst_element_error -> GST_ELEMENT_ERROR
10703
10704 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10705
10706         * docs/Makefile.am:
10707         * docs/gst/tmpl/gstelement.sgml:
10708         * docs/gst/tmpl/gstxml.sgml:
10709         * docs/manuals.mak:
10710         * docs/pwg/advanced-request.xml:
10711         * docs/pwg/advanced-scheduling.xml:
10712         * docs/pwg/advanced-tagging.xml:
10713           fix non-validating docbook using CDATA
10714           make sure make check-local gets run first to check if it validates
10715
10716 2004-01-29  Julien MOUTTE <julien@moutte.net>
10717
10718         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
10719         handling (up and downstream).
10720         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
10721         my_filter thing.
10722
10723 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10724
10725         * docs/pwg/advanced-tagging.xml:
10726           Add docs about tag writing.
10727
10728 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10729
10730         * docs/pwg/advanced-tagging.xml:
10731           Add a part about tag reading and application signalling... Tag
10732           writing still needs to be documented.
10733         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10734           We can set file locations in READY, too.
10735
10736 2004-01-29  Julien MOUTTE <julien@moutte.net>
10737
10738         * docs/random/ds/element-checklist: Adding some notes about src
10739         events.
10740
10741 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10742
10743         * docs/random/mimetypes:
10744           Update docs to point to correct elements for various mimetypes, and
10745           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
10746           <stephane.loeuillet@tiscali.fr>.
10747
10748 2004-01-28  David Schleef  <ds@schleef.org>
10749
10750         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
10751
10752 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10753
10754         * docs/random/mimetypes:
10755           update docs for audio/x-raw-float. Add "buffer-frames=0 means
10756           undefined"
10757         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10758           make it only work in NULL.
10759         * gst/gstcaps.c:
10760           don't posion NULL caps
10761         * gst/gstelement.c: (gst_element_set_time):
10762           add debugging statement
10763         * gst/gstelement.c: (gst_element_emit_found_tag),
10764         (gst_element_found_tag_func), (gst_element_found_tags):
10765         * gst/gstelement.h:
10766           These functions take const taglists
10767         * gst/gstpad.c: (gst_pad_proxy_getcaps):
10768           fix memleak
10769         * gst/gstpad.c: (gst_pad_event_default):
10770           make more effort on handling discont and clocks, g_warn if everything
10771           fails
10772         * gst/gststructure.c: (gst_structure_remove_fields),
10773         (gst_structure_remove_fields_valist):
10774         * gst/gststructure.h:
10775           add gst_structure_remove_fields(_valist)
10776         * gst/gsttag.c:
10777           fix doc glitch
10778
10779 2004-01-28  David Schleef  <ds@schleef.org>
10780
10781         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
10782         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
10783         Fix memory leakage of gst_caps_to_string().
10784
10785         Use GST_PTR_FORMAT instead of gst_caps_to_string():
10786         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
10787         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
10788         (gst_spider_identity_sink_loop_type_finding):
10789         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
10790         (find_suggest):
10791         * gst/gstpad.c: (gst_pad_try_relink_filtered),
10792         (gst_pad_set_explicit_caps):
10793         * gst/parse/grammar.y:
10794
10795 2004-01-28  David Schleef  <ds@schleef.org>
10796
10797         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
10798         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
10799         * docs/random/ds/0.9-suggested-changes: Notes from Company.
10800         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
10801         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
10802         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
10803         (gst_debug_log_default), (_gst_info_printf_extension),
10804         (_gst_info_printf_extension_arginfo):  Add printf extension.
10805         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
10806         * gst/gststructure.c: (gst_structure_to_string),
10807         (_gst_structure_parse_value): Use gst_value_deserialize() and
10808         remove old code.
10809         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
10810         (gst_value_deserialize_boolean), (gst_strtoi),
10811         (gst_value_deserialize_int), (gst_value_deserialize_double),
10812         (gst_value_deserialize_string), (gst_value_deserialize): Implement
10813         a bunch of deserialize functions and gst_value_deserialize.
10814         * gst/gstvalue.h: er, _de_serialize, not unserialize
10815         * testsuite/caps/string-conversions.c: (main): We don't currently
10816         handle (float) in caps, so convert these to (double).
10817         * testsuite/debug/Makefile.am: Add new test for the printf extension
10818         * testsuite/debug/printf_extension.c: (main): same
10819
10820 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10821
10822         * docs/random/company/time:
10823           Add some docs about clocking and time
10824
10825 2004-01-28  Julien MOUTTE <julien@moutte.net>
10826
10827         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
10828
10829 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10830
10831         * docs/pwg/advanced-clock.xml:
10832         * docs/pwg/advanced-dparams.xml:
10833         * docs/pwg/advanced-events.xml:
10834         * docs/pwg/advanced-interfaces.xml:
10835         * docs/pwg/advanced-midi.xml:
10836         * docs/pwg/advanced-request.xml:
10837         * docs/pwg/advanced-scheduling.xml:
10838         * docs/pwg/advanced-tagging.xml:
10839         * docs/pwg/advanced-types.xml:
10840         * docs/pwg/appendix-checklist.xml:
10841         * docs/pwg/building-boiler.xml:
10842         * docs/pwg/building-chainfn.xml:
10843         * docs/pwg/building-filterfactory.xml:
10844         * docs/pwg/building-pads.xml:
10845         * docs/pwg/building-props.xml:
10846         * docs/pwg/building-signals.xml:
10847         * docs/pwg/building-state.xml:
10848         * docs/pwg/building-testapp.xml:
10849         * docs/pwg/intro-basics.xml:
10850         * docs/pwg/intro-preface.xml:
10851         * docs/pwg/other-autoplugger.xml:
10852         * docs/pwg/other-sink.xml:
10853         * docs/pwg/other-source.xml:
10854         * docs/pwg/titlepage.xml:
10855           fix up id's
10856
10857 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10858
10859         * docs/95NonPath:
10860         * docs/HACKING:
10861         * docs/README:
10862         * docs/building-the-docs-on-debian:
10863           collect relevant bits of doc info
10864
10865 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10866
10867         * docs/pwg/advanced_tagging.xml:
10868           Half-assed commit so Thomas can re-arrange document IDs here to be
10869           consistent, too.
10870
10871 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10872
10873         * docs/manual/autoplugging.xml:
10874         * docs/manual/bins-api.xml:
10875         * docs/manual/bins.xml:
10876         * docs/manual/buffers-api.xml:
10877         * docs/manual/buffers.xml:
10878         * docs/manual/clocks.xml:
10879         * docs/manual/components.xml:
10880         * docs/manual/cothreads.xml:
10881         * docs/manual/debugging.xml:
10882         * docs/manual/dparams-app.xml:
10883         * docs/manual/dynamic.xml:
10884         * docs/manual/elements-api.xml:
10885         * docs/manual/elements.xml:
10886         * docs/manual/factories.xml:
10887         * docs/manual/gnome.xml:
10888         * docs/manual/goals.xml:
10889         * docs/manual/helloworld.xml:
10890         * docs/manual/helloworld2.xml:
10891         * docs/manual/init-api.xml:
10892         * docs/manual/intro.xml:
10893         * docs/manual/links-api.xml:
10894         * docs/manual/links.xml:
10895         * docs/manual/manual.xml:
10896         * docs/manual/motivation.xml:
10897         * docs/manual/pads-api.xml:
10898         * docs/manual/pads.xml:
10899         * docs/manual/plugins-api.xml:
10900         * docs/manual/plugins.xml:
10901         * docs/manual/programs.xml:
10902         * docs/manual/queues.xml:
10903         * docs/manual/quotes.xml:
10904         * docs/manual/schedulers.xml:
10905         * docs/manual/states-api.xml:
10906         * docs/manual/states.xml:
10907         * docs/manual/threads.xml:
10908         * docs/manual/typedetection.xml:
10909         * docs/manual/xml.xml:
10910           use chapter, part, section or misc as id starts for all bits
10911
10912 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10913
10914         * docs/gst/gstreamer-sections.txt:
10915           Fix up TITLE of the sections
10916
10917 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10918
10919         * docs/pwg/advanced_interfaces.xml:
10920           Add documentation on propertyprobing.
10921         * docs/pwg/advanced_events.xml:
10922         * docs/pwg/advanced_tagging.xml:
10923         * docs/pwg/building_boiler.xml:
10924         * docs/pwg/building_filterfactory.xml:
10925         * docs/pwg/pwg.xml:
10926           Move filterfactory and tagging into their own chapter, add a chapter
10927           on events. all these are empty placeholders that will be filled in
10928           some day.
10929
10930 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10931
10932         * docs/pwg/advanced_interfaces.xml:
10933           Docs for mixer interface. Also a check for website uploading.
10934
10935 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10936
10937         * docs/HACKING:
10938         * docs/Makefile.am:
10939         * docs/faq/Makefile.am:
10940         * docs/gst/Makefile.am:
10941         * docs/gst/tmpl/gstelement.sgml:
10942         * docs/gst/tmpl/gstplugin.sgml:
10943         * docs/gst/tmpl/gstreamer-unused.sgml:
10944         * docs/libs/Makefile.am:
10945         * docs/manual/Makefile.am:
10946         * docs/manuals.mak:
10947         * docs/pwg/Makefile.am:
10948         * docs/upload.mak:
10949           Separate out upload target and make it similar for
10950           both docbook and gtk-doc docs
10951
10952 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10953
10954         * docs/manuals.mak:
10955           Fix upload target to work with freedesktop
10956
10957 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10958
10959         * docs/pwg/advanced_types.xml:
10960           Add notes on creating your own types.
10961         * docs/pwg/building_boiler.xml:
10962         * docs/pwg/building_pads.xml:
10963         * docs/pwg/building_state.xml:
10964           Add some stuff about how to retrieve values from structures, how
10965           that relates to types and change layout slightly again to be almost
10966           perfect.
10967
10968 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10969
10970         * docs/pwg/advanced_dparams.xml:
10971         * docs/pwg/advanced_scheduling.xml:
10972           Change index layout slightly.
10973
10974 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10975
10976         * docs/pwg/advanced_clock.xml:
10977         * docs/pwg/advanced_interfaces.xml:
10978         * docs/pwg/advanced_midi.xml:
10979           General placeholders for now.
10980         * docs/pwg/advanced_request.xml:
10981           Explanation about sometimes and request pads.
10982         * docs/pwg/advanced_scheduling.xml:
10983           Concept of bytestream, loopfunctions and schedulers.
10984         * docs/pwg/building_boiler.xml:
10985           Add something about plugin-init.
10986
10987 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10988
10989         * docs/pwg/building_pads.xml:
10990           Fix broken docbook
10991
10992 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10993
10994         * docs/pwg/advanced_interfaces.xml:
10995         * docs/pwg/pwg.xml:
10996           Add as a placeholder for future filling-in.
10997         * docs/pwg/basics_autoplugging.xml:
10998         * docs/pwg/basics_buffers.xml:
10999         * docs/pwg/basics_elements.xml:
11000         * docs/pwg/basics_events.xml:
11001         * docs/pwg/basics_plugins.xml:
11002         * docs/pwg/basics_types.xml:
11003           Remove, because unused (this is all in intro_basics.xml).
11004         * docs/pwg/building_signals.xml:
11005           Short intro to signals + reference to GObject docs - we really
11006           shouldn't go into these sort of things to deply because we don't
11007           use them that extensively anyway.
11008         * docs/pwg/building_state.xml:
11009           Explanation of states. Benjamin, please check.
11010         * docs/pwg/building_testapp.xml:
11011           Put everything in one page - putting only a few lines of content
11012           per page doesn't really make sense.
11013
11014           Time to get into the advanced topics. ;).
11015
11016 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11017
11018         * docs/pwg/advanced_types.xml:
11019           Finish documenting the current state of mimetypes.
11020         * docs/pwg/building_boiler.xml:
11021         * docs/pwg/building_chainfn.xml:
11022         * docs/pwg/building_pads.xml:
11023         * docs/pwg/building_props.xml:
11024         * docs/pwg/building_testapp.xml:
11025           Start documenting the "how to build a simple audio filter" part
11026           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
11027           states and (maybe?) a short introduction to capsnego in the chapter
11028           on pads (building_pads.xml). Capsnego should probably be explained
11029           fully in advanced_capsnego.xml or so.
11030
11031 2004-01-26  David Schleef  <ds@schleef.org>
11032
11033         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
11034         * gst/gstpad.h: Add new function to allow element to (somewhat)
11035         specify non-fixed caps on a pad.
11036         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
11037         that I added a few weeks ago.
11038
11039 2004-01-26  David Schleef  <ds@schleef.org>
11040
11041         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
11042           making try_set_caps() work with non-fixed caps.
11043
11044 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11045
11046         * docs/pwg/advanced_types.xml:
11047         * docs/pwg/intro_basics.xml:
11048         * docs/pwg/intro_preface.xml:
11049         * docs/pwg/pwg.xml:
11050         * docs/pwg/titlepage.xml:
11051           First try to resurrect the PWG. I'm halfway integrating the mimetypes
11052           in here (docs/random/mimetypes), and will from there on work on both
11053           updating outdated parts and adding missing parts.
11054           That doesn't mean I'll fix it completely, but I'll try at least. ;).
11055
11056 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11057
11058         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
11059           policy is set
11060
11061 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11062
11063         * gst/gstelement.h:
11064           remove gst_element_factory_get_version. It doesn't exist anymore.
11065         * gst/gstplugin.c:
11066         * gst/gstplugin.h:
11067           remove gst_plugin_set_name and change gst_plugin_get_longname to
11068           gst_plugin_get_description to match code.
11069         * gst/gsterror.h:
11070           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
11071         * gst/gstpad.c: (gst_pad_try_set_caps):
11072           make it work with nonfixed caps.
11073           Note that even in the nonfixed case the link function of the pad
11074           that tries to set caps isn't called.
11075
11076 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11077
11078         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
11079           fix bug where buffer was not assembled correctly
11080         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
11081           silence by default
11082         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11083           only seek if there's no more buffers that could work without seeking
11084
11085 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11086
11087         * gst/gsttag.c: (_gst_tag_initialize):
11088         * gst/gsttag.h:
11089           Add application tag (for encoding/muxing app).
11090
11091 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11092
11093         * autogen.sh:
11094           make autopoint force, and libtoolize not copy
11095         * common/m4/as-docbook.m4:
11096           added docbook xml catalog setup check
11097         * common/m4/gst-doc.m4:
11098           use docbook check
11099
11100 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11101
11102         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
11103         * gst/gsttag.h:
11104           add GstTagFlag
11105
11106 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11107
11108         * docs/gst/gstreamer-sections.txt:
11109         * docs/gst/tmpl/gst.sgml:
11110         * docs/gst/tmpl/gstbuffer.sgml:
11111         * docs/gst/tmpl/gstclock.sgml:
11112         * docs/gst/tmpl/gstelement.sgml:
11113         * docs/gst/tmpl/gstreamer-unused.sgml:
11114         * docs/gst/tmpl/gstxml.sgml:
11115           sync latest API changes to docs
11116
11117 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11118
11119         * gst/gstpluginfeature.c:
11120           fix doc snippet
11121         * tools/gst-inspect.c: (print_element_list):
11122           fix output of typefind
11123           add GPL header
11124         * tools/gst-launch.c:
11125           add GPL header
11126
11127 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11128
11129         * gst/elements/Makefile.am:
11130         * gst/elements/gstelements.c:
11131         * gst/elements/gsttypefindelement.c:
11132         * gst/elements/gsttypefindelement.h:
11133         * po/POTFILES.in:
11134         * po/fr.po:
11135         * po/nl.po:
11136           renamed gsttypefindelement to gsttypefind, conserving CVS history
11137
11138 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11139
11140         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
11141         * gst/gsttag.h:
11142           add some tags used in ogg as well
11143           fix _ in replaygain tags
11144
11145 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11146
11147         * gst/gsterror.h:
11148           fix wrong GST_LIBRARY_ERROR_ENCODE addition
11149
11150 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11151
11152         * gst/gstelement.c: (gst_element_error_full):
11153         * gst/gstelement.h:
11154           change _extended to _full
11155
11156 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11157
11158         reviewed by: <delete if not using a buddy>
11159
11160         * docs/gst/tmpl/gst.sgml:
11161         * docs/gst/tmpl/gstbuffer.sgml:
11162         * docs/gst/tmpl/gstclock.sgml:
11163         * docs/gst/tmpl/gstelement.sgml:
11164         * docs/gst/tmpl/gstreamer-unused.sgml:
11165         * docs/gst/tmpl/gstxml.sgml:
11166         * gst/gstelement.c: (gst_element_error_full):
11167         * gst/gstelement.h:
11168
11169 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11170
11171         * gst/gstelement.h: fix _gst_element_error_printf prototype
11172
11173 2004-01-20  David Schleef  <ds@schleef.org>
11174
11175         * gst/gststructure.c: (gst_structure_to_string):
11176         Convert function to use gst_value_serialize().
11177         * gst/gstvalue.c: (gst_value_serialize_list),
11178         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
11179         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
11180         (gst_value_serialize_int), (gst_value_serialize_double),
11181         (gst_string_wrap), (gst_value_serialize_string),
11182         (gst_value_serialize), (gst_value_deserialize):
11183         * gst/gstvalue.h:
11184         Add implementations for serialize.
11185
11186 2004-01-20  Julien MOUTTE  <julien@moutte.net>
11187
11188         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
11189         we want to keep that one in the future or change xvidenc.c to use 
11190         another error.
11191
11192 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11193
11194         * gst/gstelement.c: (_gst_element_error_printf):
11195         * gst/gstelement.h:
11196           privatise function
11197
11198 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11199
11200         * docs/random/error:
11201           doc explaining error system
11202         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11203           cleanup
11204
11205 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11206
11207         * gst/gst-i18n-app.h:
11208         * gst/gst-i18n-lib.h:
11209           remove inclusion of config.h
11210         * po/POTFILES.in:
11211         * po/nl.po:
11212           add gst/gstelement.c
11213
11214 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11215
11216         * po/nl.po: updated Dutch translation
11217
11218 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11219
11220         * gst/gsterror.c: (_gst_core_errors_init),
11221         (_gst_library_errors_init), (_gst_resource_errors_init),
11222         (_gst_stream_errors_init):
11223         remove ending punctuation dots
11224
11225 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11226
11227         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11228         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
11229         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11230         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11231         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11232         use GST_ERROR_SYSTEM
11233
11234 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11235
11236         * gst/gstelement.c: (gst_element_error_printf),
11237         (gst_element_error_extended):
11238         * gst/gstelement.h:
11239           add a helper printf function so we can have NULL values passed.
11240
11241 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11242
11243         * gst/gstelement.h:
11244           add G_STMT macros to gst_element_error, which isn't strictly
11245           necessary but people tell me to anyway.
11246
11247 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11248
11249         * gst/Makefile.am:
11250         * gst/autoplug/gstspideridentity.c:
11251         (gst_spider_identity_sink_loop_type_finding):
11252         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11253         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11254         (gst_filesink_close_file), (gst_filesink_handle_event),
11255         (gst_filesink_chain):
11256         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
11257         (gst_filesrc_map_region), (gst_filesrc_get_read),
11258         (gst_filesrc_open_file):
11259         * gst/elements/gstidentity.c: (gst_identity_chain):
11260         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11261         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11262         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11263         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
11264         * gst/gst.h:
11265         * gst/gst_private.h:
11266         * gst/gstelement.c: (gst_element_class_init),
11267         (gst_element_default_error), (gst_element_error_func),
11268         (gst_element_error_extended):
11269         * gst/gstelement.h:
11270         * gst/gsterror.c: (_gst_core_errors_init),
11271         (_gst_library_errors_init), (_gst_resource_errors_init),
11272         (_gst_stream_errors_init), (gst_error_get_message):
11273         * gst/gsterror.h:
11274         * gst/gstinfo.c: (_gst_debug_init):
11275         * gst/gstmarshal.list:
11276         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11277         (gst_pad_recover_caps_error), (gst_pad_pull):
11278         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11279         * gst/schedulers/gstbasicscheduler.c:
11280         (gst_basic_scheduler_chainhandler_proxy),
11281         (gst_basic_scheduler_gethandler_proxy),
11282         (gst_basic_scheduler_cothreaded_chain):
11283         * po/POTFILES.in:
11284         * po/fr.po:
11285         * po/nl.po:
11286           change error signal
11287           add error categories
11288
11289 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
11290
11291         * gst/gsttag.c: (_gst_tag_initialize):
11292         * gst/gsttag.h:
11293         Add replaygain tag
11294
11295 2004-01-18  Colin Walters  <walters@verbum.org>
11296
11297         * examples/retag/retag.c: Call gst_init before processing
11298         program args.  Add g_assert to _link_many call.
11299
11300 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11301
11302         * gst/gstpad.c: (gst_pad_alloc_buffer):
11303           Return a newly allocated buffer when the pad has no peer.
11304
11305 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11306
11307         * gst/gstclock.c: (gst_clock_get_time):
11308           make it compile with gcc 2.95 again.
11309           Patch by Scott Wheeler
11310
11311 2004-01-15  David Schleef  <ds@schleef.org>
11312
11313         * gst/gstcaps.h:
11314         Added gst_caps_is_simple() macro.
11315         * testsuite/caps/caps.c: (test1):
11316         * testsuite/caps/intersect2.c: (main):
11317         * testsuite/caps/intersection.c: (main):
11318         Fixes to make 'make check' work again after removing
11319         gst_caps_is_chained().
11320
11321 2004-01-15  Leif Johnson <leif@ambient.2y.net>
11322
11323         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
11324         and additions to the MIDI document.
11325
11326 2004-01-15  David Schleef  <ds@schleef.org>
11327
11328         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
11329         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
11330         of GST_RPAD_, since we don't know if it's a real or ghost pad.
11331
11332 2004-01-15  David Schleef  <ds@schleef.org>
11333
11334         * gst/gstqueue.c:
11335         * gst/gstqueue.h:
11336         Fix the spelling of "treshold" and make min_threshold actually
11337         affect the queue.
11338
11339 2004-01-15  David Schleef  <ds@schleef.org>
11340
11341         * gst/gstcaps.c:
11342         Add lots of documentation.
11343         * gst/gstcaps.h:
11344         Deprecate a few functions.
11345         * gst/gstpad.c:
11346         Removed use of deprecated functions.
11347
11348 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11349
11350         * gst/gstpad.c: (gst_pad_is_linked):
11351         * gst/gstpad.h:
11352           implement gst_pad_is_linked
11353         * gst/gstelement.h:
11354           reserve space for initiate_state_change
11355
11356 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11357
11358         * gst/autoplug/gstspideridentity.c:
11359         (gst_spider_identity_sink_loop_type_finding):
11360           break infinite loop by just returning instead of looping
11361         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
11362           set event time difference correctly. Set it to 1 second instead
11363           of 100ms to be more tolerant
11364         * gst/gstelement.c: (gst_element_set_time):
11365           add debugging output
11366
11367 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11368
11369         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
11370           query if buffers are inside the pool, ignore events
11371
11372 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11373
11374         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
11375         (gst_clock_set_speed), (gst_clock_set_active),
11376         (gst_clock_is_active), (gst_clock_reset),
11377         (gst_clock_handle_discont):
11378         * gst/gstclock.h:
11379           deprecate old interface and disable functions that aren't in use
11380           anymore.
11381         * gst/gstelement.h:
11382         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
11383         (gst_element_set_time), (gst_element_adjust_time):
11384           add concept of "element time" and functions to get/set this time.
11385         * gst/gstelement.c: (gst_element_change_state):
11386           update element time correctly.
11387         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
11388           This is a debug message, not a g_critical.
11389         * gst/gstpad.c: (gst_pad_event_default):
11390           handle discontinuous events right with element time.
11391         * gst/gstscheduler.c: (gst_scheduler_state_transition):
11392           update to clocking fixes.
11393           set clocks on elements in READY=>PAUSED. The old behaviour caused
11394           a wrong element time on the first element that started playing.
11395         * gst/schedulers/gstbasicscheduler.c:
11396         (gst_basic_scheduler_class_init):
11397         * gst/schedulers/gstoptimalscheduler.c:
11398         (gst_opt_scheduler_class_init):
11399           remove code that just implements the default behaviour.
11400         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
11401           update to use new clocking functions
11402         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
11403         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
11404           update to test new element time.
11405         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
11406           use _get_allowed_caps instead of _get_caps. This catches filtered
11407           caps correctly.
11408         * testsuite/debug/commandline.c:
11409           update for new GST_DEBUG syntax.
11410         * testsuite/threads/Makefile.am:
11411           disable a test that only works sometimes.
11412
11413 2004-01-13  Julien MOUTTE <julien@moutte.net>
11414
11415         * po/LINGUAS: Adding fr.
11416         * po/fr.po: Adding french translation.
11417
11418 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11419
11420         * gst/parse/grammar.y:
11421         * po/POTFILES.in:
11422         * po/nl.po:
11423         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
11424           translate parsing error messages
11425
11426 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11427
11428         * po/POTFILES.in: adding gst-launch
11429         * po/nl.po: updated translation, all 99 strings translated
11430         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
11431         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
11432           fix strings for translation
11433
11434 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11435
11436         * gst/gst.c:
11437           - capitalize beginnings of popt options
11438           - fix strings for translation
11439           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
11440
11441 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11442
11443         * po/README: add some notes on how to update translations
11444
11445 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11446
11447         * ABOUT-NLS: removed, is autogenerated from autopoint
11448         * autogen.sh: add autopoint stuff
11449         * configure.ac: fix up gettext stuff
11450         * gst/Makefile.am: add i18n headers to noinst_HEADERS
11451         * gst/elements/gsttypefindelement.c: add header include
11452         * gst/gettext.h: add header, copy from system-installed header
11453         * gst/gst-i18n-app.h: to be included by each app having translations
11454         * gst/gst-i18n-lib.h: to be included by each lib having translations
11455         * gst/gst.c: (init_pre): fix up gettext calls
11456         * gst/gst_private.h: remove i18n stuff, moving to separate headers
11457         * po/LINGUAS: the new way to specify translations present
11458         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
11459         * po/Makevars: the variables filled in for GStreamer
11460         * po/POTFILES.in: added new files with translations
11461         * po/de.po: has new strings
11462         * po/nl.po: readded, has new strings
11463
11464 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11465
11466         * gst/gsttag.c: fix some strings marked for translation
11467
11468 2004-01-13  Iain <iain@prettypeople.org>
11469
11470         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
11471         group when we add an element to it, cos we unref it when we remove one
11472
11473 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11474
11475         * testsuite/debug/commandline.c: (debug_not_reached):
11476         * testsuite/debug/output.c: (check_message):
11477           fix testsuite
11478
11479 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11480
11481         * examples/cutter/.cvsignore:
11482         * examples/helloworld/.cvsignore:
11483         * examples/launch/.cvsignore:
11484         * examples/manual/.cvsignore:
11485         * examples/mixer/.cvsignore:
11486         * examples/pingpong/.cvsignore:
11487         * examples/plugins/.cvsignore:
11488         * examples/queue/.cvsignore:
11489         * examples/queue2/.cvsignore:
11490         * examples/queue3/.cvsignore:
11491         * examples/queue4/.cvsignore:
11492         * examples/retag/.cvsignore:
11493         * examples/thread/.cvsignore:
11494         * examples/typefind/.cvsignore:
11495         * examples/xml/.cvsignore:
11496         * gst/.cvsignore:
11497         * gst/autoplug/.cvsignore:
11498         * gst/elements/.cvsignore:
11499         * gst/indexers/.cvsignore:
11500         * gst/parse/.cvsignore:
11501         * gst/registries/.cvsignore:
11502         * gst/schedulers/.cvsignore:
11503         * libs/gst/bytestream/.cvsignore:
11504         * libs/gst/control/.cvsignore:
11505         * libs/gst/getbits/.cvsignore:
11506         * tests/.cvsignore:
11507         * tests/bufspeed/.cvsignore:
11508         * tests/instantiate/.cvsignore:
11509         * tests/memchunk/.cvsignore:
11510         * tests/muxing/.cvsignore:
11511         * tests/sched/.cvsignore:
11512         * tests/seeking/.cvsignore:
11513         * tests/threadstate/.cvsignore:
11514         * testsuite/.cvsignore:
11515         * testsuite/caps/.cvsignore:
11516         * testsuite/cleanup/.cvsignore:
11517         * testsuite/dynparams/.cvsignore:
11518         * testsuite/plugin/.cvsignore:
11519         * tools/.cvsignore:
11520           update - this is huge, because it includes *.bb, *.bbg and *.da files
11521           which are generated for gcov.
11522
11523 2004-01-11  David Schleef  <ds@schleef.org>
11524
11525         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
11526         a function to parse integers in ways that strto[u]l() does not.
11527
11528 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11529
11530         * tools/gst-inspect.c: (print_caps):
11531           improve output of caps a bit
11532
11533 2004-01-11  David Schleef  <ds@schleef.org>
11534
11535         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
11536         inherit correct flags (READONLY and DONTKEEP).
11537
11538 2004-01-11  David Schleef  <ds@schleef.org>
11539
11540         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
11541         (gst_filesrc_map_region):
11542         * gst/gstbuffer.c: (_gst_buffer_initialize),
11543         (_gst_buffer_sub_free), (gst_buffer_default_copy),
11544         (gst_buffer_new), (gst_buffer_create_sub),
11545         (gst_buffer_is_span_fast), (gst_buffer_span):
11546         * gst/gstbuffer.h:
11547         Change GstBuffer private structure element names. (all files)
11548         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
11549         (gst_queue_link):
11550         * gst/gstqueue.h:
11551         Implement getcaps/pad_link functions that handle the case where
11552         there are data in the queue.
11553
11554 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11555
11556         * gst/elements/gstbufferstore.c:
11557           initialize debugging structure correctly
11558         * gst/elements/gsttee.c: (gst_tee_set_property):
11559           g_object_notify when property was changed
11560         * gst/elements/gsttypefindelement.c:
11561         (gst_type_find_element_change_state):
11562           clear caps correctly
11563
11564 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11565
11566         * gst/gstqueue.c: (gst_queue_init):
11567           Use better defaults for when a queue should block. This
11568           gets rid of jerky playback for quite a few files.
11569           It takes more memory.
11570
11571 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11572
11573         (gst_xml_registry_parse_padtemplate):
11574           make critical message slightly more useful
11575
11576 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11577
11578         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
11579         (gst_debug_message_get), (gst_debug_log_default):
11580         * gst/gstinfo.h:
11581           Change gst_debug_log(_valist) to take a const format string.
11582           Change prototype of log function and functions using those to 
11583           take a GstDebugMessage instead of a string that requires using
11584           gst_debug_message_get.
11585
11586 2004-01-08  David Schleef  <ds@schleef.org>
11587
11588         * Makefile.am:
11589         * configure.ac:
11590         Add option --enable-gcov to build GStreamer with -fprofile-arcs
11591         and -ftest-coverage, which allows gcov to show information about
11592         testsuite coverage.
11593
11594 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11595
11596         * gst/gstutils.h:
11597           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
11598           GST_PARENT_CALL_WITH_DEFAULT
11599         * gst/elements/gstaggregator.c: 
11600         * gst/elements/gstbufferstore.c: 
11601         * gst/elements/gstfakesink.c: 
11602         * gst/elements/gstfakesrc.c: 
11603         * gst/elements/gstfdsink.c: 
11604         * gst/elements/gstfdsrc.c: 
11605         * gst/elements/gstfilesink.c: 
11606         * gst/elements/gstfilesrc.c: 
11607         * gst/elements/gstidentity.c: 
11608         * gst/elements/gstmd5sink.c: 
11609         * gst/elements/gstmultidisksrc.c:
11610         * gst/elements/gstpipefilter.c: 
11611         * gst/elements/gstshaper.c:
11612         * gst/elements/gststatistics.c:
11613         * gst/elements/gsttee.c:
11614         * gst/elements/gsttypefindelement.c:
11615           use them.
11616
11617 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
11618
11619         * docs/gst/gstreamer-docs.sgml: remove props
11620         * docs/gst/gstreamer-sections.txt: remove props
11621         * docs/gst/tmpl/gst.sgml:
11622         * docs/gst/tmpl/gstbin.sgml:
11623         * docs/gst/tmpl/gstbuffer.sgml:
11624         * docs/gst/tmpl/gstcaps.sgml:
11625         * docs/gst/tmpl/gstclock.sgml:
11626         * docs/gst/tmpl/gstelement.sgml:
11627         * docs/gst/tmpl/gstindex.sgml:
11628         * docs/gst/tmpl/gstobject.sgml:
11629         * docs/gst/tmpl/gstpad.sgml:
11630         * docs/gst/tmpl/gstpadtemplate.sgml:
11631         * docs/gst/tmpl/gstreamer-unused.sgml:
11632         * docs/gst/tmpl/gstthread.sgml:
11633         * docs/gst/tmpl/gstxml.sgml:
11634           sync with code reorganization
11635
11636 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
11637
11638         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
11639         Make the 'Could not find compatible pad' message more informative.
11640
11641 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11642                                                                                 
11643         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
11644           Fix for if we pass NULL as property to location.
11645         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
11646         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
11647           Fix for instantiate-test (see below).
11648         * gst/gststructure.c: (_gst_structure_parse_value):
11649           Fix compile error on gcc-2.96.
11650         * configure.ac:
11651         * tests/Makefile.am:
11652         * tests/instantiate/Makefile.am:
11653         * tests/instantiate/create.c: (create_all_elements), (main):
11654           Add a test that instantiates all elements. This makes it easy to
11655           track dead code for old API/design (like setting event functions
11656           on sink pads and so on).
11657
11658 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
11659
11660         * gst/gstcaps.c: (gst_caps_append_structure):
11661           Move the poisoning to allow a NULL structure
11662         * gst/gstevent.c: (_gst_event_free):
11663           When freeing a navigation event, free the structure
11664           also
11665
11666 2004-01-04  David Schleef  <ds@schleef.org>
11667
11668         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11669         Remove usage of gst_pad_proxy_fixate.
11670         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
11671         (gst_caps_split_one), (gst_caps_replace):
11672         Add poisoning code.
11673         * gst/gstmarshal.list:
11674         Add pointer__pointer for fixate signal
11675         * gst/gstpad.c: (gst_real_pad_class_init),
11676         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11677         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
11678         (gst_pad_set_explicit_caps), (gst_pad_template_new):
11679         Add poisoning code. Add fixate signal on RealPad. Change
11680         set_explicit_caps() to take const GstCaps, like try_set_caps().
11681         * gst/gstpad.h:
11682         * testsuite/caps/Makefile.am:
11683         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
11684
11685 2004-01-03  David Schleef  <ds@schleef.org>
11686
11687         * gst/elements/gsttypefindelement.c:
11688         (gst_type_find_element_have_type), (gst_type_find_element_init):
11689         Use gst_pad_use_explicit_caps for src pad.
11690         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
11691         before using it.
11692
11693 2004-01-03  David Schleef  <ds@schleef.org>
11694
11695         * gst/gstelement.c: (gst_element_link_pads_filtered),
11696         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
11697         that linking was successful.
11698         * gst/gstpad.c: (gst_pad_link_free),
11699         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
11700         (gst_pad_link_try), (gst_pad_link_unnegotiate),
11701         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
11702         GstPadLinkReturn correctly between functions, and don't fail
11703         when DELAYED is used (DELAYED is very important).  Better
11704         cleanup on unlinking and unnegotiation.  Should fix some spider
11705         bugs.
11706
11707 2004-01-02  David Schleef  <ds@schleef.org>
11708
11709         * gst/gstelement.c: (gst_element_class_init),
11710         (gst_element_base_class_init): ->padtemplates should be cleared
11711         in base_init, since we need to have a fresh list for every
11712         class.  (Alternately, we chould copy the list and share the
11713         actual pad templates (not the list), but that would require
11714         changing every plugin to move pad template registration from
11715         base_init to class_init.)
11716
11717 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11718
11719         * gst/gstelement.c: (gst_element_class_add_pad_template):
11720           Refuse registering a pad template if another pad template
11721           with the same name already exists (#114715).
11722
11723 2004-01-02  David Schleef  <ds@schleef.org>
11724
11725         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
11726         (gst_caps_is_equal_fixed): Add new function.
11727         * gst/gstcaps.h: ditto.
11728         * gst/gstpad.c: (gst_real_pad_class_init),
11729         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
11730         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
11731         check new caps against existing caps -- if they're the same, return
11732         OK without renegotiating.  caps-nego-failed signal fixed so that
11733         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
11734         to save an extra caps copy.  Don't complete negotiation if a pad
11735         link function returns DELAYED.
11736
11737 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11738
11739         * gst/gstpad.c: (gst_pad_try_relink_filtered):
11740           Fix wrong g_return_if_fail
11741
11742 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
11743
11744         * gst/gstbin.c: (gst_bin_class_init):
11745         Change the marshalling of element_added/element_removed
11746         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
11747         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
11748
11749 2004-01-01  David Schleef  <ds@schleef.org>
11750
11751         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11752         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
11753         (gst_pad_use_explicit_caps):
11754         * gst/gstpad.h:
11755         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
11756         to use an internal getcaps and link fuction so that negotiation
11757         always results in the explicitly set caps.
11758         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
11759         are particularly useful for decoders.
11760
11761 2003-12-31  David Schleef  <ds@schleef.org>
11762
11763         * gst/elements/gstidentity.c: (gst_identity_class_init),
11764         (gst_identity_init), (gst_identity_chain),
11765         (gst_identity_set_property), (gst_identity_get_property):
11766         * gst/elements/gstidentity.h:
11767         * gst/gstqueue.c: (gst_queue_init):
11768           Negotiation fixes.
11769
11770 2003-12-31  David Schleef  <ds@schleef.org>
11771
11772         * gst/gstcaps.c: (gst_caps_intersect),
11773         (_gst_caps_normalize_foreach), (gst_caps_normalize):
11774           Implement gst_caps_normalize().
11775         * testsuite/caps/normalisation.c: (main):
11776           Add an additional test
11777
11778 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11779
11780         * gst/gstqueue.c: (gst_queue_init):
11781           use gst_pad_proxy_getcaps()
11782
11783 2003-12-31  David Schleef  <ds@schleef.org>
11784
11785         * gst/elements/gstshaper.c: (gst_shaper_link):
11786         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11787         * gst/gstqueue.c: (gst_queue_link):
11788           Negotiation fixes.
11789
11790 2003-12-31  David Schleef  <ds@schleef.org>
11791
11792         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
11793         * gst/gstpad.h: Add functions that are useful as default pad
11794         link and fixate functions for elements.
11795
11796 2003-12-30  David Schleef  <ds@schleef.org>
11797
11798         * gst/gstpad.c: (gst_pad_link_try):
11799           Fix segfault when attempting to return to old caps
11800
11801 2003-12-29  David Schleef  <ds@schleef.org>
11802
11803         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
11804         (gst_caps_structure_simplify), (gst_caps_simplify):
11805         * gst/gstcaps.h:
11806           Add simplify function
11807         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
11808         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
11809         * gst/gstpad.h:
11810           Copy over srcnotify, sinknotify when calling old pad_link
11811           functions.  Add new is_negotiated() function.
11812         * gst/gststructure.c: (gst_structure_copy):
11813           Fix an incredibly stupid bug that should have been noticed
11814           weeks ago.  _copy() returned the argument, not the new copy.
11815
11816 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11817
11818         * gst/gstcaps.c: (gst_caps_append):
11819           add sanity checks
11820         * gst/gstcaps.h: (gst_caps_debug):
11821           remove, it doesn't exist anymore.
11822         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
11823         (gst_element_threadsafe_properties_post_run):
11824           make debugging messages not clutter up THREAD debug category
11825         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
11826         (gst_element_change_state):
11827           update to new caps API
11828         * gst/gstinterface.c: (gst_implements_interface_cast):
11829           don't put vital code in g_return_if_fail
11830         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
11831         (gst_pad_link_filtered):
11832           add pst_pad_try_link and use it.
11833         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
11834           implement correctly, deprecate first one.
11835         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
11836           add and implement.
11837         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
11838           implement.
11839         (gst_pad_get_negotiated_caps):
11840           add and implement. Make GST_PAD_CAPS call this function.
11841         (gst_pad_get_caps):
11842           remove unneeded check..
11843         (gst_pad_recover_caps_error):
11844           disable, always return FALSE.
11845         (gst_real_pad_dispose):
11846           don't free caps and appfilter anymore, they're unused.
11847         * gst/gstpad.h:
11848           Reflect changes mentioned above.
11849         * gst/gstsystemclock.c: (gst_system_clock_wait):
11850           Make 'clock is way behind' a debugging message.
11851         * gst/gstthread.c: (gst_thread_change_state):
11852           Fix debugging message
11853
11854 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11855
11856         * gst/gstinfo.h:
11857           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
11858         * docs/gst/tmpl/gstreamer-unused.sgml:
11859           removed all traces of cvs conflicts
11860
11861 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11862
11863         * configure.ac:
11864         * gst/schedulers/cothreads_compat.h:
11865         * libs/Makefile.am:
11866           remove last instances of wingo cothread usage
11867
11868 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11869
11870         * gst/gstplugin.c:
11871         * gst/gstversion.h.in:
11872         * gst/parse/grammar.y:
11873           change comment block from /** to /* when not gtk-doc comments
11874
11875 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11876
11877         * gst/gst.c: whitespace and doc style fixes
11878
11879 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11880
11881         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
11882
11883 2003-12-24  Colin Walters  <walters@verbum.org>
11884
11885         * gst/elements/gsttypefindelement.c:
11886           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
11887           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
11888           Don't double-free caps.
11889
11890 2003-12-23  David Schleef  <ds@schleef.org>
11891
11892         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
11893           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
11894           Many little fixes and additions of debug statements to
11895           get rhythmbox working.
11896
11897 2003-12-23  Colin Walters  <walters@verbum.org>
11898
11899         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
11900         Use GST_PAD_LINK_SUCCESSFUL.
11901
11902 2003-12-23  David Schleef  <ds@schleef.org>
11903
11904         * gst/elements/gstaggregator.c:
11905         * gst/elements/gsttee.c:
11906           Use gst_pad_proxy_getcaps().
11907         * gst/gstpad.c:
11908         * gst/gstpad.h:
11909           Add gst_pad_proxy_getcaps(), which filter elements can use
11910           as a generic getcaps implementation.
11911           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
11912           was advertised.
11913
11914 2003-12-23  David Schleef  <ds@schleef.org>
11915
11916         * gst/gstpad.c:
11917           Rearrange/rewrite much of the pad negotiation code, since it
11918           resembled pasta.  This actually changes the way some
11919           negotiation works, since the previous code was inconsistent
11920           depending on how it was invoked.  Add (internal) structure
11921           GstPadLink, which is used to hold some information (more in
11922           the future) about the link between two pads.  Fixes a number
11923           of bugs, including random lossage of filter caps when the
11924           initial negotiation is delayed.  A few functions are still
11925           unimplemented.
11926         * gst/gstpad.h:
11927           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
11928           these when testing GstPadLinkReturn values instead of comparing
11929           directly.
11930
11931 2003-12-23  David Schleef  <ds@schleef.org>
11932
11933         * gst/gstvalue.c: 
11934         * gst/gstvalue.h:
11935           Rearrange lots of code.  Change registration of compare function
11936           into registration of compare/serialize/deserialize functions.
11937           Doesn't include implementation of gst_value_[de]serialize(),
11938           but that should be easy.
11939
11940 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11941
11942         * docs/gst/gstreamer-sections.txt:
11943         * docs/gst/tmpl/gstprops.sgml: removed
11944         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
11945           David removed props and caps code, so let's remove their docs as well.
11946           Removed all no longer existing symbols from gstreamer-sections.txt
11947           
11948 2003-12-22  Colin Walters  <walters@verbum.org>
11949
11950         * gst/gsttaginterface.c, gst/gsttaginterface.h,
11951           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
11952           of tags directly.
11953
11954 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11955
11956         * gst/elements/gstelements.c:
11957           Set ranks of elements to NONE, so the autoplugger doesn't use them.
11958         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
11959           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
11960           gst_caps (peer).
11961
11962 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11963
11964         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
11965         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
11966         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
11967         (gst_spider_identity_sink_loop_type_finding):
11968         * gst/autoplug/gstspideridentity.h:
11969           Fix autoplugging in spider element, so it works with new caps.
11970           This was mainly caused by identifying empty caps incorrectly.
11971
11972 2003-12-22  David Schleef  <ds@schleef.org>
11973
11974         * gststructure.c, gstvalue.c, gstvalue.h: Add
11975           gst_value_init_and_copy() and use it, to avoid silly mistakes in
11976           using g_value_copy()
11977
11978 2003-12-21  David Schleef  <ds@schleef.org>
11979
11980         * many, many files: Merge CAPS branch.  This includes:
11981           - implemention of GstValue and several GstValue types
11982           - implemention of GstStructure
11983           - entire rewrite of GstCaps
11984           - removal of GstProps
11985           - many changes to GstPad to compensate for new caps paradigm
11986           - removal of GstBufferpool
11987         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
11988         gstvalue.h, gst/gstcaps[2]*.[ch]:
11989           - rename gstcaps2.[ch] to gstcaps.[ch]
11990
11991 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11992
11993         * gst/gstqueue.c: (gst_queue_handle_pending_events),
11994         (gst_queue_chain), (gst_queue_handle_src_event):
11995           implement timeout for sending events. Workaround for if the
11996           pipeline on this queue is not passing any data.
11997
11998 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
11999                                                                                 
12000         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
12001         * moved CVS to freedesktop.org
12002