gst/base/gstbasesink.*: Some tweaks, only EOS and a buffer complete a preroll.
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-06-30  Wim Taymans  <wim@fluendo.com>
2
3         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
4         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
5         (gst_base_sink_change_state):
6         * gst/base/gstbasesink.h:
7         Some tweaks, only EOS and a buffer complete a preroll.
8
9 2005-06-30  Andy Wingo  <wingo@pobox.com>
10
11         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
12         activate_push down to the internal pad as well.
13
14 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
15
16         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
17
18         * gst/gsttaginterface.c:
19           Some documentation fixes (#307394 and #307397).
20
21 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
22
23         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
24
25         * gst/gstvalue.c: (gst_value_intersect_list):
26           Fix memleak (#309125).
27
28 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
29
30         * docs/manual/advanced-dataaccess.xml:
31           Fix fakesrc example to compile; doesn't work, bug somewhere...?
32         * docs/manual/basics-pads.xml:
33           Add reference for filtered caps to above chapter.
34
35 2005-06-30  Wim Taymans  <wim@fluendo.com>
36
37         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
38         (gst_bin_change_state):
39         Probes are gone.
40         Lame attempt at making the state change function a bit
41         more readable.
42
43 2005-06-30  Wim Taymans  <wim@fluendo.com>
44
45         * docs/design/part-clocks.txt:
46         * docs/design/part-element-sink.txt:
47         * docs/design/part-events.txt:
48         * docs/design/part-preroll.txt:
49         * docs/design/part-states.txt:
50         Some more tweeks and additions to the docs.
51
52 2005-06-30  Wim Taymans  <wim@fluendo.com>
53
54         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
55         (default_have_data), (gst_pad_class_init), (gst_pad_init),
56         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
57         (gst_pad_check_pull_range), (gst_pad_get_range),
58         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
59         * gst/gstpad.h:
60         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
61         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
62         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
63         (gst_pad_remove_buffer_probe):
64         Removed atomic operations, use existing LOCK.
65         Move exception handling out of main code path.
66
67 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
68
69         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
70         (silly_return_true_function), (gst_pad_class_init),
71         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
72         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
73         (gst_pad_send_event):
74           Fix accumulator, add default value by using _emitv() instead
75           of _emit() for signal emission.
76
77 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
78
79         * docs/manual/advanced-dataaccess.xml:
80         * examples/manual/Makefile.am:
81           Add probe example.
82         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
83           Make work (??).
84
85 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
86
87         * gst/elements/gstfilesink.c: (gst_filesink_render):
88           Simplify code so that we don't have to handle short
89           writes and return GST_FLOW_ERROR if an error occured.
90
91 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
92
93         * docs/gst/gstreamer-docs.sgml:
94           Remove probes more.
95
96 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
97
98         * docs/gst/gstreamer-sections.txt:
99         * docs/gst/tmpl/gstpad.sgml:
100         * docs/gst/tmpl/gstprobe.sgml:
101         * gst/Makefile.am:
102         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
103         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
104         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
105         (gst_pad_push_event), (gst_pad_send_event):
106         * gst/gstpad.h:
107         * gst/gstutils.c: (gst_pad_add_data_probe),
108         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
109         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
110         (gst_pad_remove_buffer_probe):
111         * gst/gstutils.h:
112           Remove old probes, add new g-signal-based probes and some utility
113           functions.
114
115 2005-06-29  Edward Hervey  <edward@fluendo.com>
116
117         * gst/gstelementfactory.c:
118         * gst/gstutils.h:
119         * gst/gstutils.c:
120         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
121         the definition to the header file.
122
123 2005-06-29  Andy Wingo  <wingo@pobox.com>
124
125         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
126         plugins from the source directory.
127
128 2005-06-29  Wim Taymans  <wim@fluendo.com>
129
130         * docs/gst/tmpl/gstbuffer.sgml:
131         * docs/gst/tmpl/gstclock.sgml:
132         Some fixings for blantently wrong text.
133
134 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
135
136         * check/Makefile.am:
137         * gst/gst.c: (add_path_func), (init_pre):
138         * gst/gstregistry.c: (gst_registry_add_path):
139           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
140           only scan the GST_PLUGIN_PATH locations, and not add
141           system locations
142
143 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
144
145         * docs/gst/gstreamer-sections.txt:
146         * docs/gst/tmpl/gstbasesrc.sgml:
147         * gst/gstelement.c:
148         * gst/gstelement.h:
149         * gst/gstevent.c:
150         * gst/gstutils.c:
151           doc fixes
152
153 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
154
155         * docs/manual/advanced-autoplugging.xml:
156           Fix autoplugging example.
157
158 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
159
160         * docs/manual/advanced-autoplugging.xml:
161         * docs/manual/mime-world.fig:
162           Try to get autoplugging working, fix type detection. Fix text
163           in hello-world image.
164
165 2005-06-29  Wim Taymans  <wim@fluendo.com>
166
167         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
168         (gst_base_sink_change_state):
169         Small debug line.
170
171         * gst/gstclock.h:
172         map SIGNAL and BROADCAST to the right function.
173
174         * gst/gstobject.h:
175         Remove redundant braces.
176
177         * gst/gstpad.c: (gst_pad_set_caps):
178         Don't call setcaps function when reseting caps to NULL.
179
180         * gst/gstsystemclock.c: (gst_system_clock_dispose),
181         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
182         (gst_system_clock_id_unschedule):
183         Use BROADCAST as this is what we do.
184
185 2005-06-29  Wim Taymans  <wim@fluendo.com>
186
187         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
188         We are actually prerolling before commiting the state
189         change. 
190
191 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
192
193         * docs/manual/advanced-clocks.xml:
194         * docs/manual/advanced-interfaces.xml:
195         * docs/manual/advanced-metadata.xml:
196         * docs/manual/advanced-position.xml:
197         * docs/manual/advanced-schedulers.xml:
198         * docs/manual/advanced-threads.xml:
199         * docs/manual/appendix-porting.xml:
200         * docs/manual/basics-bins.xml:
201         * docs/manual/basics-bus.xml:
202         * docs/manual/basics-elements.xml:
203         * docs/manual/basics-helloworld.xml:
204         * docs/manual/basics-pads.xml:
205         * docs/manual/highlevel-components.xml:
206         * docs/manual/manual.xml:
207         * docs/manual/thread.fig:
208           Update (until threads/scheduling) Application Development Manual;
209           remove GstThread, add GstBus, add simple porting checklist, add
210           documentation for tag writing, clocks, make all examples until this
211           part compile and run.
212         * examples/manual/Makefile.am:
213           Update from changes to Application Development Manual; add bus
214           example, remove thread example.
215
216 2005-06-28  Wim Taymans  <wim@fluendo.com>
217
218         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
219         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
220         (gst_bus_source_dispatch):
221         Add debugging messages.
222         Make internal methods static.
223         Handle the case where the bus is flushed in the handler.
224         
225         * gst/gstelement.c: (gst_element_get_bus):
226         Fix refcount in _get_bus();
227
228         * gst/gstpipeline.c: (gst_pipeline_change_state),
229         (gst_pipeline_get_clock_func):
230         Clock refcounting fixes.
231         Handle the case where preroll timed out more gracefully.
232         
233         * gst/gstsystemclock.c: (gst_system_clock_dispose):
234         Clean up the internal thread in dispose. This is needed
235         for subclasses that actually get disposed.
236         
237         * gst/schedulers/threadscheduler.c:
238         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
239         (gst_thread_scheduler_dispose):
240         Free thread pool in dispose.
241
242 2005-06-28  Andy Wingo  <wingo@pobox.com>
243
244         * tests/network-clock-utils.scm (debug, print-event): New utils.
245
246         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
247         (*packet-loss*): Unified loss probability.
248         (network-time): Report out-of-band events.
249
250         * tests/plot-data: Add support for out-of-band events. Hack it
251         into this script instead of passing it down the pipe; should fix
252         this later.
253
254 2005-06-28  Wim Taymans  <wim@fluendo.com>
255
256         * docs/gst/gstreamer.types:
257         * docs/gst/tmpl/gstbasesrc.sgml:
258         * docs/gst/tmpl/gstpad.sgml:
259         Docs fixes.
260
261 2005-06-28  Wim Taymans  <wim@fluendo.com>
262
263         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
264         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
265         (gst_proxy_pad_do_fixatecaps):
266         Correctly proxy the check_pull_range function.
267
268 2005-06-28  Andy Wingo  <wingo@pobox.com>
269
270         * tests/network-clock.scm: Removed need for slib.
271         
272 2005-06-28  Wim Taymans  <wim@fluendo.com>
273
274         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
275         (gst_basesink_preroll_queue_flush):
276         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
277         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
278         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
279         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
280         (gst_proxy_pad_set_property):
281         * gst/gstpad.c:
282         * gst/gstpad.h:
283         * gst/gstqueue.c: (gst_queue_init):
284         The deprecated pad loop function is removed now.
285
286 2005-06-28  Andy Wingo  <wingo@pobox.com>
287
288         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
289         New parameters, simulate network packet loss.
290
291         * tests/network-clock-utils.scm: Initialize the RNG.
292
293 2005-06-28  Wim Taymans  <wim@fluendo.com>
294
295         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
296         (gst_basesink_event), (gst_basesink_deactivate):
297         Flushing the preroll queue always needs to unlock the waiters.
298
299 2005-06-28  Edward Hervey  <edward@fluendo.com>
300
301         * gst/gstpipeline.c: (gst_pipeline_send_event): 
302         Wheen a seek was successful on a pipeline, set the stream_time to the
303         seek offset in order to have a synchronized stream_time.
304
305 2005-06-28  Wim Taymans  <wim@fluendo.com>
306
307         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
308         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
309         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
310         (gst_proxy_pad_do_fixatecaps):
311         Call wrapper function instead of just calling the function
312         pointers. This takes care of any locking and whatmore.
313
314 2005-06-28  Wim Taymans  <wim@fluendo.com>
315
316         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
317         (gst_pad_pull_range):
318         * gst/gstpad.h:
319         CONNECTED -> LINKED.
320
321 2005-06-28  Andy Wingo  <wingo@pobox.com>
322
323         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
324         source-munging commit!!!
325
326         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
327         (gst_object_sink): Take gpointer arguments, not GstObject --
328         avoids casts. Like GLib.
329
330         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
331         activate.
332
333 2005-06-27  Andy Wingo  <wingo@pobox.com>
334
335         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
336         remaining buffer.
337
338         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
339         returns a sorted copy of the trace list.
340         (gst_alloc_trace_print_live): New API, only prints traces with
341         live objects. Sort the list.
342         (gst_alloc_trace_print_all): Sort the list.
343         (gst_alloc_trace_print): Align columns.
344
345         * gst/elements/gstttypefindelement.c:
346         * gst/elements/gsttee.c:
347         * gst/base/gstbasesrc.c:
348         * gst/base/gstbasesink.c:
349         * gst/base/gstbasetransform.c:
350         * gst/gstqueue.c: Adapt for pad activation changes.
351
352         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
353         sched.
354         (gst_pipeline_dispose): Drop ref on sched.
355
356         * gst/gstpad.c (gst_pad_init): Set the default activate func.
357         (gst_pad_activate_default): Push mode by default.
358         (pre_activate_switch, post_activate_switch): New stubs, things to
359         do before and after switching activation modes on pads.
360         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
361         the pad's activate function to choose which mode to activate.
362         Shortcut on deactivation and call the right function directly.
363         (gst_pad_activate_pull): New API, (de)activates a pad in pull
364         mode.
365         (gst_pad_activate_push): New API, same for push mode.
366         (gst_pad_set_activate_function) 
367         (gst_pad_set_activatepull_function) 
368         (gst_pad_set_activatepush_function): Setters for new API.
369
370         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
371         Trace all miniobjects.
372         (gst_mini_object_make_writable): Unref the arg if we copy, like
373         gst_caps_make_writable.
374
375         * gst/gstmessage.c (_gst_message_initialize): No trace init.
376
377         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
378         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
379         Adapt for new pad API.
380
381         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
382
383         * gst/gstelement.h:
384         * gst/gstelement.c (gst_element_iterate_src_pads) 
385         (gst_element_iterate_sink_pads): New API functions.
386         
387         * gst/gstelement.c (iterator_fold_with_resync): New utility,
388         should fold into gstiterator.c in some form.
389         (gst_element_pads_activate): Simplified via use of fold and
390         delegation of decisions to gstpad->activate.
391
392         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
393         help in debugging.
394
395         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
396         class once in init, like gstmessage. Didn't run into this issue
397         but it seems correct. Don't initialize a trace, gstminiobject does
398         that.
399
400         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
401         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
402         to the bus.
403         (assert_live_count): New util function, uses alloc traces to check
404         cleanup.
405
406         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
407         To be modified when unlink drops the internal pad.
408
409 2005-06-27  Wim Taymans  <wim@fluendo.com>
410
411         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
412         (gst_bin_change_state):
413         Cleanup the get_state() function a little, make sure it
414         iterates the same set of elements.
415         Added stub iterate_state_order().
416
417 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
418
419         * docs/gst/gstreamer-docs.sgml:
420         * docs/gst/gstreamer-sections.txt:
421         * docs/gst/gstreamer.types:
422         * docs/gst/tmpl/gstbasesink.sgml:
423         * docs/gst/tmpl/gstbasesrc.sgml:
424         * docs/gst/tmpl/gstbasetransform.sgml:
425         * docs/gst/tmpl/gstelement.sgml:
426         * docs/gst/tmpl/gstiterator.sgml:
427         * gst/base/gstbasesrc.c:
428         * gst/base/gstbasesrc.h:
429         * gst/base/gstbasetransform.h:
430         * gst/gstelement.c:
431         * gst/gstiterator.h:
432           adding basetransform and iterator docs
433
434 2005-06-27  Andy Wingo  <wingo@pobox.com>
435
436         * docs/design/part-activation.txt: Notes on how activation should
437         work -- not quite implemented yet.
438
439 2005-06-25  Wim Taymans  <wim@fluendo.com>
440
441         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
442         At least get the chain function correct, needs more
443         fixing.
444
445 2005-06-25  Wim Taymans  <wim@fluendo.com>
446
447         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
448         (gst_basesink_handle_object), (gst_basesink_event),
449         (gst_basesink_do_sync), (gst_basesink_handle_event),
450         (gst_basesink_change_state):
451         * gst/gsttask.h:
452         Right, two problems here: ghostpads don't take locks and
453         glib _rec_mutex_lock_full() with depth==0 still locks.
454         Catch illegal locking and g_warn them.
455
456 2005-06-25  Wim Taymans  <wim@fluendo.com>
457
458         * check/states/sinks.c: (START_TEST), (gst_object_suite):
459         Have to check for completion now...
460
461 2005-06-25  Wim Taymans  <wim@fluendo.com>
462
463         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
464         (gst_basesink_handle_object), (gst_basesink_event),
465         (gst_basesink_do_sync), (gst_basesink_handle_event),
466         (gst_basesink_change_state):
467         * gst/gstpad.h:
468         Unlock STREAM_LOCK whatever the recursion was.
469
470 2005-06-25  Wim Taymans  <wim@fluendo.com>
471
472         * gst/base/gstbasesink.c: (gst_basesink_set_property),
473         (gst_basesink_preroll_queue_empty),
474         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
475         (gst_basesink_event), (gst_basesink_do_sync),
476         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
477         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
478         (gst_basesink_change_state):
479         Reworked the base sink, handle event and buffer serialisation
480         correctly and removed possible deadlock.
481         Handle EOS correctly.
482
483 2005-06-25  Wim Taymans  <wim@fluendo.com>
484
485         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
486         (gst_pipeline_change_state):
487         * tools/gst-launch.c: (check_intr), (event_loop), (main):
488         Allow elements to post EOS in the state change function.
489         Fix up -launch, make it exit the poll loop when the
490         pipeline actually changed state.
491         Fix up warning parsing in -launch.
492
493 2005-06-25  Wim Taymans  <wim@fluendo.com>
494
495         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
496         (gst_tee_sink_activate):
497         Core takes STREAM_LOCK for us now.
498
499 2005-06-25  Wim Taymans  <wim@fluendo.com>
500
501         * gst/gstelement.c: (gst_element_get_state_func),
502         (gst_element_set_state):
503         * gst/gstelement.h:
504         * gst/gstmessage.c: (gst_message_parse_error),
505         (gst_message_parse_warning):
506         Keep track of current target state while performing a state
507         change so that subclasses can do something interesting.
508         Fix parsing of warning/error messages when GError is NULL.
509
510 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
511
512         * docs/gst/Makefile.am:
513         * docs/gst/gstreamer-docs.sgml:
514         * docs/gst/gstreamer-sections.txt:
515         * docs/gst/gstreamer.types:
516         * docs/gst/tmpl/gstbasesink.sgml:
517         * docs/gst/tmpl/gstbasesrc.sgml:
518         * docs/gst/tmpl/gstbin.sgml:
519         * docs/gst/tmpl/gstcompat.sgml:
520         * docs/gst/tmpl/gstfakesink.sgml:
521         * docs/gst/tmpl/gstfakesrc.sgml:
522         * docs/gst/tmpl/gstfilesink.sgml:
523         * docs/gst/tmpl/gstfilesrc.sgml:
524         * docs/gst/tmpl/gstindex.sgml:
525         * docs/manual/appendix-quotes.xml:
526         * gst/base/gstbasesrc.h:
527         * gst/elements/gstfakesrc.h:
528         * gst/gstmessage.h:
529           start pulling in base classes and elements in our docs
530
531 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
532
533         * docs/gst/Makefile.am:
534         * docs/libs/Makefile.am:
535           fixed make distcheck with gtk-doc 1.3
536
537 2005-06-23  Wim Taymans  <wim@fluendo.com>
538
539         * gst/gstelement.c: (gst_element_get_state_func),
540         (gst_element_set_state), (gst_element_change_state):
541         When the state did not change, also report NO_PREROLL
542         when it matters.
543
544 2005-06-23  Wim Taymans  <wim@fluendo.com>
545
546         * gst/gstpad.c: (gst_pad_event_default):
547         * gst/gstqueue.c: (gst_queue_loop):
548         No unsafe task pausing please.
549
550 2005-06-23  Wim Taymans  <wim@fluendo.com>
551
552         * gst/schedulers/threadscheduler.c:
553         (gst_thread_scheduler_task_start),
554         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
555         Ref the task before pushing it on the threadpool. This
556         makes sure that we have a ref when the threadfunction is
557         actually called.
558
559 2005-06-23  Andy Wingo  <wingo@pobox.com>
560
561         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
562         offset is greater than the file's size.
563
564         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
565         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
566         * gst/gstobject.c (gst_object_class_init): Make the class lock
567         recursive. Wim won't let me drop deep_notify. Decodebin works
568         again, whoopdy doo.
569
570         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
571         internal pad, and hacks accordingly. Doesn't do it on the target
572         pad because we change its caps. Probably catches all cases of
573         interest tho.
574         (gst_ghost_pad_set_property): Connect to notify::caps as
575         appropritate.
576
577         * tests/network-clock.scm (plot-simulation): Pipe data to the
578         elite python skript.
579
580         * tests/network-clock-utils.scm (define-parameter): New macro,
581         defines a parameter that can be set via the command line.
582         (set-parameter!, parse-parameter-arguments): Command line args
583         parser.
584
585         * tests/plot-data: Simple matplotlib-based plotter, takes input on
586         stdin.
587
588 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
589
590         * gst/elements/gsttypefindelement.c:
591         (gst_type_find_element_handle_event):
592           Don't restart typefinding on a discont.
593         * gst/gstelement.c: (gst_element_set_state):
594           Debug spelling fix.
595         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
596           Allow changing mode of an active pad.
597           Debug output fixes.
598         * gst/registries/gstlibxmlregistry.c: (load_feature):
599           Don't cast a static pad template to a normal pad template.
600
601 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
602
603         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
604         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
605           remove gst_strtoll completely, since it didn't actually do
606           anything more than what g_ascii_strtoull already does.
607           check for range errors when deserializing
608           do a cast for the unsigned cases; but further fixing needs
609           a decision on what the interpretation of "(int)" and
610           deserialization should be for values that fall outside the
611           type's boundaries (ie, refuse, or interpret as casting)
612
613 2005-06-23  Wim Taymans  <wim@fluendo.com>
614
615         * check/Makefile.am:
616         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
617         * docs/design/part-live-source.txt:
618         * docs/design/part-states.txt:
619         * gst/base/gstbasesrc.c: (gst_basesrc_init),
620         (gst_basesrc_set_live), (gst_basesrc_is_live),
621         (gst_basesrc_get_range), (gst_basesrc_activate),
622         (gst_basesrc_change_state):
623         * gst/base/gstbasesrc.h:
624         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
625         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
626         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
627         * gst/gstelement.c: (gst_element_get_state_func),
628         (gst_element_set_state):
629         * gst/gstelement.h:
630         * gst/gsttypes.h:
631         * tools/gst-launch.c: (event_loop), (main):
632         Added support for live sources and other elements that
633         cannot do preroll.
634         Updated design docs, added live-source design doc.
635         Implemented live source functionality in basesrc
636         Fix error condition in _bin_get_state()
637         Implement live source handling in -launch.
638         Added check for live sources.
639         Fixed case in GstBin where elements were changed state
640         multiple times.
641
642
643 2005-06-23  Andy Wingo  <wingo@pobox.com>
644
645         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
646         borken refcounting.
647
648         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
649         gst_caps_replace takes care of this for us.
650
651         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
652         gst_pad_set_caps on the target, not just its setcaps() function.
653
654         * tests/network-clock.scm: 
655         * tests/network-clock-utils.scm: A network clock simulator.
656         Something of an algorithmic testbed before doing something in C.
657
658 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
659
660         * check/Makefile.am:
661         * check/gst/capslist.h:
662           copy over from 0.8, and add two with bitmasks specified with
663           (int) 0xFF...
664         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
665           add test to parse everything from capslist.h
666         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
667         (main):
668           add test for structure deserialization
669         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
670           add tests for deserialization of strings to int types
671         * gst/gststructure.c: (gst_structure_nth_field_name):
672         * gst/gststructure.h:
673           add a way to get the name of a field referenced by index
674         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
675           instead of checking if the resulting long long lies between
676           min and max, we check if the long long would fit into
677           a number of bytes for the final type.
678           This fixes cases where a string represents 2^32 - 1, which
679           when cast to int would be the (valid) -1, but is bigger than
680           G_MAXINT
681
682 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
683
684         * gst/parse/grammar.y:
685           add a log line for type deserialization
686
687 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
688
689         * check/gst/gstvalue.c: (START_TEST):
690         * gst/gstvalue.c: (gst_value_deserialize):
691           return long long, not int, so gint64 deserialization actually
692           works.  Is there any flag that makes the compiler check this ?
693           Fixes #308559
694
695 2005-06-22  Wim Taymans  <wim@fluendo.com>
696
697         * gst/gstbuffer.h:
698         Added convenience macros for setting buffers in GValue.
699
700 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
701
702         * check/gst/.cvsignore:
703         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
704           add a test deserializing int64, and comment part out because
705           it fails, yay !
706
707 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
708
709         * check/Makefile.am:
710         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
711         * testsuite/Makefile.am:
712         * testsuite/caps/Makefile.am:
713         * testsuite/caps/value_serialize.c:
714         * testsuite/test_gst_init.c:
715           move a value_serialize test over
716
717 2005-06-20  Wim Taymans  <wim@fluendo.com>
718
719         * gst/gstpad.c:
720         Small doc updates.
721         
722         * gst/gstvalue.c: (gst_value_compare_buffer),
723         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
724         (gst_value_compare_flags), (gst_value_serialize_flags),
725         (gst_value_deserialize_flags), (_gst_value_initialize):
726         Fix serialisation of buffers, they are not boxed types anymore
727
728 2005-06-20  Wim Taymans  <wim@fluendo.com>
729
730         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
731         Testcase to show error in buffer-on-caps serialisation.
732
733 2005-06-20  Andy Wingo  <wingo@pobox.com>
734
735         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
736         will be adding to later.
737
738         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
739         if its socks fill with rocks.
740         (gst_system_clock_obtain): Set the name on object construction.
741         Avoid double-checked locking.
742
743 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
744
745         * gst/gsturi.c: (gst_element_make_from_uri):
746           Fix potential endless loop.
747
748 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
749
750         * check/Makefile.am:
751           add gsttag
752         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
753         (main):
754           move over from testsuite dir and clean up
755         * configure.ac:
756         * gst/gsttag.c:
757         * testsuite/Makefile.am:
758         * testsuite/tags/.cvsignore:
759         * testsuite/tags/Makefile.am:
760         * testsuite/tags/merge.c:
761           remove testsuite/tags
762
763 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
764
765         * docs/gst/gstreamer-sections.txt:
766         * docs/gst/tmpl/gstenumtypes.sgml:
767         * win32/gstenumtypes.c:
768           clean up documentation build a little
769
770 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
771
772         * check/gstcheck.h:
773           add macros for checking refcounts on objects and caps
774         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
775           add some more unit tests
776         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
777         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
778           fix leaked refcounts (I hope :)) so unittest works
779         * gst/gstpad.h:
780           whitespace removal
781
782 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
783
784         * configure.ac: back to HEAD
785
786 === release 0.9.1 ===
787
788 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
789
790         * NEWS:
791         * RELEASE:
792           updated
793
794 2005-06-17  Andy Wingo  <wingo@pobox.com>
795
796         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
797         assert; it's always possible that the pad gets deactivated in
798         between the checks in gstpad.c and the implementation. Rely on
799         finish_preroll() to return a FLUSHING or similar instead of on the
800         assert.
801         
802         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
803         clock and post an EOS message if we come out of finish_preroll in
804         the playing state.
805
806 2005-06-16  David Schleef  <ds@schleef.org>
807
808         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
809         (gst_capsfilter_set_property): Allow NULL as possible value
810         for filter_caps property, indicating GST_CAPS_ANY.
811
812 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
813
814         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
815           fix debug output
816         * gst/schedulers/Makefile.am:
817           use libgst prefix
818         * gstreamer.spec.in:
819           fix spec for it
820
821 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
822
823         * gstreamer.spec.in:
824           clean up
825
826 2005-06-08  Andy Wingo  <wingo@pobox.com>
827
828         * gst/gstutils.c: RPAD fixes all around.
829         (gst_element_link_pads): Refcounting fixes.
830
831         * tools/gst-inspect.c:
832         * tools/gst-xmlinspect.c:
833         * parse/grammar.y:
834         * gst/base/gsttypefindhelper.c:
835         * gst/base/gstbasesink.c:
836         * gst/gstqueue.c: RPAD fixes.
837
838         * gst/gstghostpad.h:
839         * gst/gstghostpad.c: New ghost pad implementation as full proxy
840         pads. The tricky thing is they provide both source and sink
841         interfaces, since they proxy the internal pad for the external
842         pad, and vice versa. Implement with lower-level ProxyPad objects,
843         with the interior proxy pad as a child of the exterior ghost pad.
844         Should write a doc on this.
845         
846         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
847         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
848         gst_object API.
849         
850         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
851         pads are real pads. No ghost pads in this file. Not documenting
852         the myriad s/RPAD/PAD/ and REALIZE fixes.
853         (gst_pad_class_init): Add properties for "direction" and
854         "template". Both are construct-only, so they can't change during
855         the life of the pad. Fixes properly deriving from GstPad.
856         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
857         derived objects, just set properties when creating the objects via
858         g_object_new.
859         (gst_pad_get_parent): Implement as a function, return NULL if the
860         parent is not an element.
861         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
862         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
863         
864         * gst/gstobject.c (gst_object_class_init): Make name a construct
865         property. Don't set it in the object init.
866
867         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
868         with UNKNOWN direction.
869         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
870         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
871         (gst_element_remove_pad): Remove ghost-pad special cases.
872         (gst_element_pads_activate): Remove rpad cruft.
873
874         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
875         catch the pad's-parent-not-an-element case.
876
877         * gst/gst.h: Include gstghostpad.h.
878
879         * gst/gst.c (init_post): No more real, ghost pads.
880
881         * gst/Makefile.am: Add gstghostpad.[ch].
882
883         * check/Makefile.am:
884         * check/gst/gstbin.c:
885         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
886         into a bin creates ghost pads, and that the refcounts are right.
887         Partly moved from gstbin.c.
888
889 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
890
891         * check/gst-libs/.cvsignore:
892         * check/gst/.cvsignore:
893         * check/pipelines/.cvsignore:
894           ignore more
895         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
896         (START_TEST), (cleanup_suite), (main):
897           add some tests related to cleanup after running pipelines
898
899 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
900
901         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
902           add a testsuite for GstBuffer
903
904 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
905
906         * gst/gstminiobject.h:
907           add defines for accessing the refcount
908
909 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
910
911         * Makefile.am: added support for html unit test coverage reports
912
913 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
914
915         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
916           Free existing caps if the capsfilter changes. Add a FIXME about
917           setting those caps on the pads.
918
919         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
920           Before adding a ghost pad to a parent bin, check that there isn't
921           already one for the element on the bin. Prevents infinite recursion
922           when using decodebin in parse pipelines. Andy says he'll rewrite the
923           way this works anyway, so ignore the hack.
924
925 2005-06-02  Andy Wingo  <wingo@pobox.com>
926
927         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
928         file size, pass it on to the type find helper.
929
930         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
931         segment_start and segment_end properly according to the seek
932         method. Segment_end is still a bit flaky because offset can be
933         negative for CUR and END cases, but it takes -1 as an "unset"
934         value.
935
936 2005-06-02  Wim Taymans  <wim@fluendo.com>
937
938         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
939         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
940         (gst_basesink_activate):
941         * gst/base/gstbasesink.h:
942         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
943         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
944         (gst_pad_query), (gst_pad_start_task):
945         * gst/gstpad.h:
946         * gst/gstqueue.c: (gst_queue_bufferalloc),
947         (gst_queue_handle_sink_event), (gst_queue_chain):
948         Bufferalloc: return GstFlowReturn to more accuratly report
949         why allocation failed.
950
951 2005-06-02  Wim Taymans  <wim@fluendo.com>
952
953         * gst/gstpipeline.c: (gst_pipeline_send_event):
954         Take snapshot of state without blocking.
955
956 2005-06-02  Wim Taymans  <wim@fluendo.com>
957
958         * docs/design/part-TODO.txt:
959         * docs/design/part-caps.txt:
960         * docs/design/part-clocks.txt:
961         * docs/design/part-negotiation.txt:
962         * docs/design/part-preroll.txt:
963         Small doc updates 
964
965 2005-05-30  Wim Taymans  <wim@fluendo.com>
966
967         * gst/elements/gstidentity.c: (gst_identity_event),
968         (gst_identity_transform), (gst_identity_get_property):
969         Protect last_message property as it is accessed from
970         multiple threads.
971
972 2005-05-30  Wim Taymans  <wim@fluendo.com>
973
974         * gst/gstelement.c: (gst_element_init),
975         (gst_element_pads_activate), (gst_element_change_state):
976         Slicker pad activation code.
977
978 2005-05-30  Wim Taymans  <wim@fluendo.com>
979
980         * gst/Makefile.am:
981         * gst/gstelement.h:
982         * gst/gstelementfactory.h:
983         * gst/gsttypes.h:
984         Move elementfactory methods to separate .h file.
985
986 2005-05-30  Wim Taymans  <wim@fluendo.com>
987
988         * docs/design/part-overview.txt:
989         * gst/gstsystemclock.h:
990         Small typo fixes, doc updates.
991
992 2005-05-30  Wim Taymans  <wim@fluendo.com>
993
994         * gst/gst.c: (gst_init_get_popt_table), (init_post),
995         (init_popt_callback):
996         Remove cpu-opt flag.
997
998 2005-05-30  Wim Taymans  <wim@fluendo.com>
999
1000         * gst/gstbuffer.c: (gst_subbuffer_finalize),
1001         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
1002         * gst/gstbuffer.h:
1003         Avoid typechecking in places where not needed.
1004         Added accessor for malloc_data.
1005
1006 2005-05-30  Wim Taymans  <wim@fluendo.com>
1007
1008         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
1009         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
1010         (gst_pad_configure_sink), (gst_pad_configure_src),
1011         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
1012         (gst_pad_start_task):
1013         Propagate errors from _set_caps() in configure_src/sink
1014         functions instead of returning TRUE.
1015         FLUSH events can travel up and downstream
1016
1017
1018 2005-05-30  Wim Taymans  <wim@fluendo.com>
1019
1020         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
1021         (gst_basesink_activate):
1022         Handle EOS in preroll.
1023
1024 2005-05-30  Wim Taymans  <wim@fluendo.com>
1025
1026         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
1027         (gst_queue_loop), (gst_queue_handle_src_event):
1028         Remove old pieces of code
1029         Flushing the queue in an upstream event is a very bad idea.
1030
1031 2005-05-26  Andy Wingo  <wingo@pobox.com>
1032
1033         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
1034         gst_value_set_mini_object so as to add a ref on the object (which
1035         will be removed when the value is unset).
1036
1037         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
1038         arg type in ::handoff.
1039
1040         * gst/gstelement.c (gst_element_change_state): Also deactivate
1041         pads in READY->NULL, just in case the element didn't make it to
1042         PAUSED. Wingo tested, Wim approved.
1043
1044 2005-05-26  Wim Taymans  <wim@fluendo.com>
1045
1046         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1047         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
1048         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
1049         A flushing pad cannot be used to alloc_buffer from.
1050
1051 2005-05-26  Wim Taymans  <wim@fluendo.com>
1052
1053         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
1054         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
1055         (gst_bus_source_dispatch), (gst_bus_source_finalize),
1056         (gst_bus_create_watch), (gst_bus_add_watch_full):
1057         * gst/gstbus.h:
1058         Implement a real GSource and use g_main_context_wakeup() to
1059         signal new messages instead of the socketpair.
1060
1061 2005-05-25  Wim Taymans  <wim@fluendo.com>
1062
1063         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
1064         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
1065         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1066         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
1067         (gst_pad_send_event), (gst_pad_start_task):
1068         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
1069         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
1070         (gst_queue_sink_activate), (gst_queue_src_activate),
1071         (gst_queue_change_state):
1072         * gst/gstqueue.h:
1073         Fix state changes for non sinks. We now change sinks, then elements
1074         with unconnected srcpads, then the rest.
1075         More efficient queue unlocking in flush and state changes.
1076         Set the pad activate mode even if it does not have an activate
1077         function.
1078
1079 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1080
1081         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
1082           Don't go in pull mode for non-seekable sources.
1083         * gst/elements/gsttypefindelement.h:
1084         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
1085         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
1086         (free_entry), (stop_typefinding),
1087         (gst_type_find_element_handle_event), (find_peek),
1088         (gst_type_find_element_chain), (do_pull_typefind),
1089         (gst_type_find_element_change_state):
1090           Allow typefinding (w/o seeking) in push-mode, simplified version
1091           of what was in 0.8.
1092         * gst/gstutils.c: (gst_buffer_join):
1093         * gst/gstutils.h:
1094           gst_buffer_join() from 0.8.
1095
1096 2005-05-25  Wim Taymans  <wim@fluendo.com>
1097
1098         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1099         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
1100         (gst_pad_send_event), (gst_pad_start_task):
1101         Disable attempt at mode switching until it is figured out.
1102
1103 2005-05-25  Wim Taymans  <wim@fluendo.com>
1104
1105         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
1106         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
1107         (gst_basesink_finish_preroll), (gst_basesink_chain),
1108         (gst_basesink_loop), (gst_basesink_activate),
1109         (gst_basesink_change_state):
1110         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
1111         (gst_basesrc_get_range), (gst_basesrc_loop),
1112         (gst_basesrc_activate):
1113         * gst/elements/gsttee.c: (gst_tee_sink_activate):
1114         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
1115         (gst_real_pad_init), (gst_real_pad_set_property),
1116         (gst_real_pad_get_property), (gst_pad_set_active),
1117         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
1118         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
1119         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
1120         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
1121         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1122         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
1123         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
1124         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1125         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
1126         (gst_pad_stop_task):
1127         * gst/gstpad.h:
1128         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
1129         (gst_queue_loop), (gst_queue_src_activate):
1130         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
1131         (gst_task_get_state):
1132         * gst/gsttask.h:
1133         * gst/schedulers/threadscheduler.c:
1134         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
1135         Implement gst_pad_pause/start/stop_task(), take STREAM lock
1136         in task function.
1137         Remove ACTIVE pad flag, use FLUSHING everywhere
1138         Added _pad_chain(), _pad_get_range() to call chain/getrange 
1139         functions.
1140         Add locks around IS_FLUSHING when reading.
1141         Take STREAM lock in chain(), get_range() functions so plugins
1142         don't need to take it anymore.
1143         
1144
1145
1146 2005-05-25  Wim Taymans  <wim@fluendo.com>
1147
1148         * tools/gst-launch.c: (event_loop):
1149         Unref message after using its contents instead of
1150         before.
1151
1152 2005-05-24  Wim Taymans  <wim@fluendo.com>
1153
1154         * docs/design/draft-ghostpads.txt:
1155         * docs/design/draft-push-pull.txt:
1156         * docs/design/draft-query.txt:
1157         * docs/design/part-overview.txt:
1158         Docs updates, added general overview doc.
1159
1160 2005-05-21  David Schleef  <ds@schleef.org>
1161
1162         * docs/gst/tmpl/old/GstBin.sgml:
1163         * docs/gst/tmpl/old/GstBuffer.sgml:
1164         * docs/gst/tmpl/old/GstCaps.sgml:
1165         * docs/gst/tmpl/old/GstClock.sgml:
1166         * docs/gst/tmpl/old/GstCompat.sgml:
1167         * docs/gst/tmpl/old/GstData.sgml:
1168         * docs/gst/tmpl/old/GstElement.sgml:
1169         * docs/gst/tmpl/old/GstEvent.sgml:
1170         * docs/gst/tmpl/old/GstIndex.sgml:
1171         * docs/gst/tmpl/old/GstStructure.sgml:
1172         * docs/gst/tmpl/old/GstTag.sgml:
1173         * docs/gst/tmpl/old/cothreads.sgml:
1174         * docs/gst/tmpl/old/cothreads_compat.sgml:
1175         * docs/gst/tmpl/old/gettext.sgml:
1176         * docs/gst/tmpl/old/gobject2gtk.sgml:
1177         * docs/gst/tmpl/old/grammar.tab.sgml:
1178         * docs/gst/tmpl/old/gst-i18n-app.sgml:
1179         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
1180         * docs/gst/tmpl/old/gst_private.sgml:
1181         * docs/gst/tmpl/old/gstaggregator.sgml:
1182         * docs/gst/tmpl/old/gstarch.sgml:
1183         * docs/gst/tmpl/old/gstatomic_impl.sgml:
1184         * docs/gst/tmpl/old/gstbufferstore.sgml:
1185         * docs/gst/tmpl/old/gstdata_private.sgml:
1186         * docs/gst/tmpl/old/gstdisksink.sgml:
1187         * docs/gst/tmpl/old/gstdisksrc.sgml:
1188         * docs/gst/tmpl/old/gstelementfactory.sgml:
1189         * docs/gst/tmpl/old/gstextratypes.sgml:
1190         * docs/gst/tmpl/old/gstfakesink.sgml:
1191         * docs/gst/tmpl/old/gstfakesrc.sgml:
1192         * docs/gst/tmpl/old/gstfdsink.sgml:
1193         * docs/gst/tmpl/old/gstfdsrc.sgml:
1194         * docs/gst/tmpl/old/gstfilesink.sgml:
1195         * docs/gst/tmpl/old/gstfilesrc.sgml:
1196         * docs/gst/tmpl/old/gsthttpsrc.sgml:
1197         * docs/gst/tmpl/old/gstidentity.sgml:
1198         * docs/gst/tmpl/old/gstindexfactory.sgml:
1199         * docs/gst/tmpl/old/gstmarshal.sgml:
1200         * docs/gst/tmpl/old/gstmd5sink.sgml:
1201         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
1202         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
1203         * docs/gst/tmpl/old/gstpadtemplate.sgml:
1204         * docs/gst/tmpl/old/gstpipefilter.sgml:
1205         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
1206         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
1207         * docs/gst/tmpl/old/gstshaper.sgml:
1208         * docs/gst/tmpl/old/gstspider.sgml:
1209         * docs/gst/tmpl/old/gstspideridentity.sgml:
1210         * docs/gst/tmpl/old/gststatistics.sgml:
1211         * docs/gst/tmpl/old/gsttee.sgml:
1212         * docs/gst/tmpl/old/gsttimecache.sgml:
1213         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
1214         * docs/gst/tmpl/old/gstxmlregistry.sgml:
1215         * docs/gst/tmpl/old/gthread-cothreads.sgml:
1216         * docs/gst/tmpl/old/types.sgml:
1217           I didn't intend to add these or check them in.
1218
1219 2005-05-19  David Schleef  <ds@schleef.org>
1220
1221         * configure.ac: Use -no-common everywhere.  In a sane world, it
1222           would be the default in libtool, because without it, you can't
1223           build DLLs on Windows.
1224         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
1225         * docs/gst/gstreamer-sections.txt:
1226         * docs/gst/tmpl/gstcpu.sgml:
1227         * docs/gst/tmpl/gstdata.sgml:
1228         * docs/gst/tmpl/gstthread.sgml:
1229
1230 2005-05-19  David Schleef  <ds@schleef.org>
1231
1232         * gst/gstminiobject.c: (gst_value_set_mini_object),
1233         (gst_value_take_mini_object), (gst_value_get_mini_object):
1234         * gst/gstminiobject.h: Add GValue set/get functions.
1235
1236 2005-05-19  Wim Taymans  <wim@fluendo.com>
1237
1238         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
1239         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
1240         (gst_subbuffer_init), (gst_buffer_is_span_fast):
1241         * gst/gstbuffer.h:
1242         * gst/gstbus.c: (gst_bus_post):
1243         * gst/gstelement.c: (gst_element_get_random_pad):
1244         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
1245         Make subbufer unref the parent in finalize.
1246         some more debugging info.
1247
1248
1249 2005-05-19  Wim Taymans  <wim@fluendo.com>
1250
1251         * gst/base/gstbasesink.c: (gst_basesink_class_init),
1252         (gst_basesink_init), (gst_basesink_finalize),
1253         (gst_basesink_activate), (gst_basesink_change_state):
1254         Don't free preroll queue too early.
1255
1256 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1257
1258         * gst/Makefile.am:
1259         * gst/ROADMAP:
1260           Hi, I'm outdated. Please shoot me.
1261
1262 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1263
1264         * gst/gstpipeline.c: (gst_pipeline_send_event):
1265           Do not access variables after they have been deleted.
1266
1267 2005-05-19  Wim Taymans  <wim@fluendo.com>
1268
1269         * tools/gst-inspect.c: (print_plugin_features):
1270         A plugin feature does unfortunatly not use the
1271         object name yet...
1272
1273 2005-05-18  Wim Taymans  <wim@fluendo.com>
1274
1275         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
1276         Port _span() functions to new subbuffers.
1277
1278 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1279
1280         * gst/gstbin.c: (gst_bin_add_func):
1281           Fix clock settery in bins when adding kids after the clock has
1282           been selected.
1283
1284 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1285
1286         * gst/elements/gstidentity.c: (gst_identity_class_init):
1287           Workaround until signals support GstMiniObject.
1288
1289 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
1290
1291         * gst/gstbuffer.c:
1292         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
1293
1294 2005-05-18  Wim Taymans  <wim@fluendo.com>
1295
1296         * gst/base/Makefile.am:
1297         * gst/base/gstadapter.c: (gst_adapter_base_init),
1298         (gst_adapter_class_init), (gst_adapter_init),
1299         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
1300         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
1301         (gst_adapter_flush), (gst_adapter_available),
1302         (gst_adapter_available_fast):
1303         * gst/base/gstadapter.h:
1304         Ported and added adapter to the base classes.
1305
1306 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1307
1308         * gst/gst.c:
1309         * gst/gstmessage.c:
1310           Make sure the class is reffed/unreffed once before threads can be
1311           used.  Fixes #304551.
1312
1313 2005-05-17  Wim Taymans  <wim@fluendo.com>
1314
1315         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
1316         (gst_basesink_chain_unlocked), (gst_basesink_activate):
1317         * gst/gstminiobject.c: (gst_mini_object_get_type),
1318         (gst_mini_object_free):
1319         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
1320         (gst_pad_push), (gst_pad_push_event):
1321         * gst/gstqueue.c: (gst_queue_change_state):
1322         Don't queue buffers in basesink when we are flushing.
1323         Unref buffer when flushing in basesink.
1324         Flush queue when going to READY
1325         Unref buffer when _push() returns an error.
1326         Don't free MiniObject instance when refcount is incremented
1327         in _finalize() so that we can recover objects.
1328
1329 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1330
1331         * docs/manual/advanced-schedulers.xml:
1332         * docs/manual/appendix-checklist.xml:
1333         * docs/pwg/advanced-clock.xml:
1334         * docs/pwg/advanced-interfaces.xml:
1335         * docs/pwg/advanced-request.xml:
1336         * docs/pwg/advanced-types.xml:
1337         * docs/pwg/intro-preface.xml:
1338         * examples/plugins/example.c: (gst_example_get_type),
1339         (gst_example_class_init), (gst_example_chain),
1340         (gst_example_set_property), (gst_example_get_property),
1341         (gst_example_change_state), (plugin_init):
1342         * examples/plugins/example.h:
1343           small doc fixes
1344
1345 2005-05-17  Wim Taymans  <wim@fluendo.com>
1346
1347         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
1348         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
1349         * gst/gstqueue.c: (gst_queue_change_state):
1350         Clear queue when going to READY.
1351         Remove IN_SETCAPS flag too.
1352
1353 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
1354
1355         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
1356           Remove implicit cast from gboolean to GstElementStateReturn;
1357           make sure we still return failure in paused => ready case if
1358           the parent class fails to change state and our own stop 
1359           vfunc succeeds.
1360
1361 2005-05-17  Wim Taymans  <wim@fluendo.com>
1362
1363         * tools/gst-launch.c: (event_loop):
1364         Message was unreffed too soon.
1365
1366 2005-05-16  Andy Wingo  <wingo@pobox.com>
1367
1368         * gst/gstbin.c (sink_iterator_filter): Err... um...
1369
1370         * check/gst/gstbin.c (test_ghost_pads): New test for the
1371         ghosting-if-elements-not-in-same-bin behavior.
1372
1373 2005-05-16  David Schleef  <ds@schleef.org>
1374
1375         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
1376         accessing refcount directly.
1377
1378 2005-05-15  David Schleef  <ds@schleef.org>
1379
1380         * check/Makefile.am: remove GstData checks
1381         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
1382         * gst/Makefile.am: add miniobject, remove data
1383         * gst/gst.h: add miniobject, remove data
1384         * gst/gstdata.c: remove
1385         * gst/gstdata.h: remove
1386         * gst/gstdata_private.h: remove
1387         * gst/gsttypes.h: remove GstEvent and GstMessage
1388         * gst/gstelement.c: (gst_element_post_message): fix for API changes
1389         * gst/gstmarshal.list: change BOXED -> OBJECT
1390
1391         Implement GstMiniObject.
1392         * gst/gstminiobject.c:
1393         * gst/gstminiobject.h:
1394
1395         Modify to be subclasses of GstMiniObject.
1396         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
1397         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
1398         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
1399         (gst_subbuffer_get_type), (gst_subbuffer_init),
1400         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
1401         (gst_buffer_span):
1402         * gst/gstbuffer.h:
1403         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
1404         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
1405         (_gst_event_copy), (gst_event_new):
1406         * gst/gstevent.h:
1407         * gst/gstmessage.c: (_gst_message_initialize),
1408         (gst_message_get_type), (gst_message_class_init),
1409         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
1410         (gst_message_new), (gst_message_new_error),
1411         (gst_message_new_warning), (gst_message_new_tag),
1412         (gst_message_new_state_changed), (gst_message_new_application):
1413         * gst/gstmessage.h:
1414         * gst/gstprobe.c: (gst_probe_perform),
1415         (gst_probe_dispatcher_dispatch):
1416         * gst/gstprobe.h:
1417         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
1418         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
1419         (_gst_query_copy), (gst_query_new):
1420
1421         Update elements for GstData -> GstMiniObject changes
1422         * gst/gstquery.h:
1423         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
1424         (gst_queue_chain), (gst_queue_loop):
1425         * gst/elements/gstbufferstore.c:
1426         (gst_buffer_store_add_buffer_func),
1427         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
1428         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1429         (gst_fakesink_render):
1430         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
1431         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
1432         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
1433         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
1434         (gst_filesrc_create_read):
1435         * gst/elements/gstidentity.c: (gst_identity_class_init):
1436         * gst/elements/gsttypefindelement.c:
1437         (gst_type_find_element_src_event), (free_entry_buffers),
1438         (gst_type_find_element_handle_event):
1439         * libs/gst/dataprotocol/dataprotocol.c:
1440         (gst_dp_header_from_buffer):
1441         * libs/gst/dataprotocol/dataprotocol.h:
1442         * libs/gst/dataprotocol/dp-private.h:
1443
1444 2005-05-15  David Schleef  <ds@schleef.org>
1445
1446         * gst/elements/gstelements.c: Don't include headers that were
1447         just removed.
1448
1449 2005-05-15  David Schleef  <ds@schleef.org>
1450
1451         * gst/elements/Makefile.am: Remove some elements that don't
1452         need to be in the core (or even exist at all).
1453         * gst/elements/gstaggregator.c:
1454         * gst/elements/gstaggregator.h:
1455         * gst/elements/gstmd5sink.c:
1456         * gst/elements/gstmd5sink.h:
1457         * gst/elements/gstmultifilesrc.c:
1458         * gst/elements/gstmultifilesrc.h:
1459         * gst/elements/gstpipefilter.c:
1460         * gst/elements/gstpipefilter.h:
1461         * gst/elements/gstshaper.c:
1462         * gst/elements/gstshaper.h:
1463         * gst/elements/gststatistics.c:
1464         * gst/elements/gststatistics.h:
1465         * po/POTFILES.in: Remove above files.
1466
1467 2005-05-14  Andy Wingo  <wingo@pobox.com>
1468
1469         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
1470         so as to get the refs right.
1471         (sink_iterator_filter): New function, wraps bin_element_is_sink,
1472         unreffing objects that don't pass the filter.
1473
1474         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
1475         gst_element_set_bus.
1476         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
1477         normal cases, this will destroy the bus.
1478
1479         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
1480         object.
1481
1482         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
1483         has no sinks.
1484
1485 2005-05-13  Andy Wingo  <wingo@pobox.com>
1486
1487         * gst/gstutils.c (gst_element_link_pads): Instead of calling
1488         gst_pad_link, call pad_link_maybe_ghosting,
1489         (pad_link_maybe_ghosting): Links pads, making sure that the
1490         elements being linked are in the same bin.
1491         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
1492         Helpers for pad_link_maybe_ghosting.
1493
1494 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
1495
1496         * configure.ac:
1497           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
1498
1499 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
1500
1501         * docs/design/part-element-source.txt:
1502           Mention GstPushSrc
1503
1504 2005-05-12  Wim Taymans  <wim@fluendo.com>
1505
1506         * gst/base/gstbasesink.c: (gst_basesink_init),
1507         (gst_basesink_activate):
1508         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
1509         (gst_basesrc_is_seekable):
1510         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
1511         (bin_element_is_sink), (gst_bin_change_state):
1512         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
1513         * gst/gstelement.h:
1514         Identify sinks by their flag to avoid overly complicated
1515         checks (fow now).
1516         Do state changes even for elements not reachable from the
1517         sinks.
1518         BaseSink is a sink now :)
1519         Some more debugging info in the basesrc.
1520
1521
1522 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1523
1524         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
1525           Implement _query on a bin, similar to _send_event.
1526
1527 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
1528
1529         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
1530           Discont event offset format should be GST_FORMAT_BYTES,
1531           not GST_FORMAT_TIME.
1532
1533 2005-05-12  Wim Taymans  <wim@fluendo.com>
1534
1535         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
1536         Same fix as Ronald's but without the signal. 
1537
1538 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1539
1540         * gst/gstutils.c: (gst_element_query_position):
1541           No, an element is not a pad.
1542
1543 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1544
1545         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
1546         (gst_bin_get_state):
1547           If a child is removed from a bin while we remove the child from
1548           the bin and while we're retrieving its state, signal this to the
1549           get_state function so we abort the wait (instead of waiting for
1550           a timeout) and can immediately re-iterate over all other elements.
1551
1552 2005-05-12  Wim Taymans  <wim@fluendo.com>
1553
1554         * gst/base/Makefile.am:
1555         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
1556         (gst_basesrc_start):
1557         * gst/base/gstbasesrc.h:
1558         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
1559         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
1560         (gst_pushsrc_init), (gst_pushsrc_create):
1561         * gst/base/gstpushsrc.h:
1562         Added is_seekable to BaseSrc
1563         Added simple PushSrc.
1564
1565 2005-05-11  Wim Taymans  <wim@fluendo.com>
1566
1567         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
1568         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1569         (gst_element_link_pads), (gst_element_query_position),
1570         (gst_element_query_convert), (intersect_caps_func),
1571         (gst_pad_query_position), (gst_pad_query_convert):
1572         Fix refcounting in utils function.
1573         No point in trying to activate a pad when it's added, it could
1574         be added from the state change function and then we deadlock, the
1575         element has to decide what to do.
1576
1577 2005-05-10  Andy Wingo  <wingo@pobox.com>
1578
1579         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
1580         *all* the arguments.
1581
1582         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
1583         stream lock if it's a FLUSH_DONE; normal flushes don't get the
1584         lock (according to the docs -- if this is wrong change the docs).
1585
1586         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
1587         flush messages in the NULL state.
1588
1589         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
1590         message immediately and return.
1591         (gst_bus_set_flushing): New function. If a bus is flushing, it
1592         flushes out any queued messages and immediately unrefs new
1593         messages. This is so when an element goes to NULL, all of the
1594         unhandled messages coming from it can be freed, and their
1595         references to the element dropped. In other words: message source
1596         ref considered harmful :P
1597
1598         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
1599         we're finished with it.
1600
1601         * gst/gstmessage.c (gst_message_new_state_changed): 
1602
1603 2005-05-10  Wim Taymans  <wim@fluendo.com>
1604
1605         * gst/gstvalue.c: (gst_value_compare_flags),
1606         (gst_value_serialize_flags), (gst_value_deserialize_flags),
1607         (_gst_value_initialize):
1608         Added flags serialize/deserialize/compare code.
1609
1610 2005-05-09  Andy Wingo  <wingo@pobox.com>
1611
1612         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
1613         Intersect the peer's caps with our caps.
1614
1615 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1616
1617         * gst/base/gsttypefindhelper.c: (helper_find_peek):
1618         * gst/elements/gsttypefindelement.c: (find_peek):
1619           Handle negative offsets better. Fixes decodebin.
1620
1621 2005-05-09  Wim Taymans  <wim@fluendo.com>
1622
1623         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
1624         (gst_base_transform_event):
1625         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
1626         Implement accept_caps.
1627         Fix silly lock/unlock mismatch in base class.
1628
1629 2005-05-09  Wim Taymans  <wim@fluendo.com>
1630
1631         * docs/design/draft-push-pull.txt:
1632         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
1633         * gst/elements/gstfilesink.c: (gst_filesink_init),
1634         (gst_filesink_query):
1635         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
1636         (gst_type_find_handle_src_query), (find_element_get_length):
1637         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
1638         * gst/gstelement.h:
1639         * gst/gstmessage.c:
1640         * gst/gstmessage.h:
1641         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
1642         (gst_real_pad_get_caps_unlocked),
1643         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
1644         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1645         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
1646         (gst_real_pad_dispose), (gst_real_pad_finalize),
1647         (gst_pad_load_and_link), (gst_pad_save_thyself),
1648         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
1649         (gst_pad_check_pull_range), (gst_pad_pull_range),
1650         (gst_pad_template_get_type), (gst_pad_template_class_init),
1651         (gst_pad_template_init), (gst_pad_template_dispose),
1652         (name_is_valid), (gst_static_pad_template_get),
1653         (gst_pad_template_new), (gst_static_pad_template_get_caps),
1654         (gst_pad_template_get_caps), (gst_pad_set_element_private),
1655         (gst_pad_get_element_private), (gst_pad_start_task),
1656         (gst_pad_pause_task), (gst_pad_stop_task),
1657         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
1658         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
1659         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
1660         (gst_ghost_pad_new):
1661         * gst/gstpad.h:
1662         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
1663         (gst_query_new_position), (gst_query_set_position),
1664         (gst_query_parse_position), (gst_query_new_convert),
1665         (gst_query_set_convert), (gst_query_parse_convert):
1666         * gst/gstquery.h:
1667         * gst/gstqueryutils.c:
1668         * gst/gstqueryutils.h:
1669         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
1670         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
1671         (gst_queue_handle_src_query):
1672         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1673         (gst_element_query_position), (gst_element_query_convert),
1674         (intersect_caps_func), (gst_pad_query_position),
1675         (gst_pad_query_convert):
1676         * gst/gstutils.h:
1677         * tools/gst-inspect.c: (print_pad_info):
1678         * tools/gst-xmlinspect.c: (print_element_info):
1679         Remove old query functions. Ported old code.
1680         Added position/convert helper functions to gstutils.
1681         Reordered gstpad.c code, grouping relevant things.
1682         Remove gst_message_new(), always need to speficy a specific
1683         message.
1684
1685
1686 2005-05-09  Andy Wingo  <wingo@pobox.com>
1687
1688         * gst/gstiterator.h: Add some includes.
1689
1690         * gst/gstqueryutils.h: Include more headers.
1691
1692         * gst/gstpad.h:
1693         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
1694         some uses of gst_pad_query.
1695
1696         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
1697         NULL out parameters.
1698         (gst_query_new_position): New proc, allocates a new position
1699         query.
1700
1701         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
1702         gstqueryutils.c to the build.
1703
1704         * gst/gststructure.c (gst_structure_set_valist): Implement with
1705         the generic G_VALUE_COLLECT.
1706         
1707 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
1708
1709         * gst/Makefile.am: (gst_headers):
1710         Added gstqueryutils.h to the list of headers to install, that was
1711         a 'nachty' move wingo :)
1712
1713 2005-05-06  Andy Wingo  <wingo@pobox.com>
1714
1715         * gst/gstquery.h
1716         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
1717         GstData, init a memchunk.
1718         (standard_definitions): Add a few query types, deprecate a few.
1719         (gst_query_get_type): New proc.
1720         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
1721         implementation.
1722         (gst_query_new_application, gst_query_get_structure): New public
1723         procs.
1724
1725         * docs/design/draft-query.txt: Removed LINKS from the query types,
1726         because all the rest can be dispatched to other pads -- seemed
1727         ugly to have a query that couldn't be dispatched. internal_links
1728         is fine as a pad method.
1729
1730         * gst/gstpad.h: Add query2 as a pad method, add the new functions
1731         in gstpad.c, but maintain binary compatibility for the moment.
1732         Will fix before 0.9 is out.
1733
1734         * gst/gstqueryutils.c: 
1735         * gst/gstqueryutils.h: New files, implement 3 methods for each
1736         query type: parse_query, parse_response, and set. Probably need an
1737         allocator as well.
1738
1739         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
1740
1741         * gst/elements/gstfilesink.c (gst_filesink_query2):
1742         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
1743         query_types, and formats methods.
1744
1745         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
1746         (gst_pad_set_query2_function): New functions.
1747         (gst_real_pad_init): Set query2_default as the default query2
1748         function. Basically just dispatches to internally linked pads.
1749
1750         Needs review!
1751         
1752         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
1753         without using the atomic operations. Only one thread can possibly
1754         be accessing the data at this point. Changed so as to avoid
1755         gst_atomic operations.
1756
1757 2005-05-06  Wim Taymans  <wim@fluendo.com>
1758
1759         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
1760         Also set caps if we use the fallback buffer alloc.
1761
1762 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
1763
1764         * docs/gst/Makefile.am:
1765         * docs/gst/gstreamer-docs.sgml:
1766         * docs/gst/gstreamer-sections.txt:
1767         * docs/gst/tmpl/gstatomic.sgml:
1768         * docs/gst/tmpl/gstmemchunk.sgml:
1769         * testsuite/elements/struct_i386.h:
1770         * win32/GStreamer.vcproj:
1771         * win32/Makefile:
1772           Purge GstAtomic stuff from docs and win32 makefiles as well
1773
1774 2005-05-06  Wim Taymans  <wim@fluendo.com>
1775
1776         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
1777         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
1778         * gst/gstpad.c: (gst_pad_peer_get_caps):
1779         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
1780         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
1781         (gst_queue_src_activate), (gst_queue_change_state):
1782         * gst/gstqueue.h:
1783         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1784         (intersect_caps_func):
1785         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
1786         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
1787         Some fixes for the peer_get_caps() change.
1788
1789 2005-05-06  Wim Taymans  <wim@fluendo.com>
1790
1791         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1792         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
1793         (gst_basesink_activate):
1794         Actually do something with error codes returned from the push
1795         functions.
1796
1797 2005-05-06  Wim Taymans  <wim@fluendo.com>
1798
1799         * docs/design/part-element-sink.txt:
1800         * docs/design/part-element-source.txt:
1801         * gst/base/gstbasesink.c: (gst_basesink_class_init),
1802         (gst_basesink_event), (gst_basesink_activate):
1803         * gst/base/gstbasesink.h:
1804         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
1805         (gst_basesrc_activate):
1806         * gst/base/gstbasesrc.h:
1807         * gst/gstelement.c: (gst_element_pads_activate):
1808         Some more documentation.
1809         Fixed scheduling decision in _pads_activate().
1810
1811 2005-05-05  Andy Wingo  <wingo@pobox.com>
1812
1813         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
1814         the test suite.
1815
1816 2005-05-05  Wim Taymans  <wim@fluendo.com>
1817
1818         * gst/base/Makefile.am:
1819         * gst/base/gstbasesink.h:
1820         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1821         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
1822         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
1823         (gst_collectpads_class_init), (gst_collectpads_init),
1824         (gst_collectpads_finalize), (gst_collectpads_new),
1825         (gst_collectpads_set_function), (gst_collectpads_add_pad),
1826         (find_pad), (gst_collectpads_remove_pad),
1827         (gst_collectpads_is_active), (gst_collectpads_collect),
1828         (gst_collectpads_collect_range), (gst_collectpads_start),
1829         (gst_collectpads_stop), (gst_collectpads_peek),
1830         (gst_collectpads_pop), (gst_collectpads_available),
1831         (gst_collectpads_read), (gst_collectpads_flush),
1832         (gst_collectpads_chain):
1833         * gst/base/gstcollectpads.h:
1834         * gst/elements/Makefile.am:
1835         * gst/elements/gstelements.c:
1836         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1837         (gst_fakesink_get_times), (gst_fakesink_event),
1838         (gst_fakesink_preroll), (gst_fakesink_render):
1839         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1840         (gst_filesink_init), (gst_filesink_set_location),
1841         (gst_filesink_open_file), (gst_filesink_close_file),
1842         (gst_filesink_pad_query), (gst_filesink_event),
1843         (gst_filesink_render), (gst_filesink_change_state):
1844         * gst/elements/gstfilesink.h:
1845         Added object to help in making collect pad based elements.
1846         Ported filesink.
1847         Make event function in sink baseclass return gboolean.
1848
1849 2005-05-05  Wim Taymans  <wim@fluendo.com>
1850
1851         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
1852         (gst_bin_get_by_name):
1853         * gst/gstbuffer.h:
1854         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
1855         (gst_clock_finalize):
1856         * gst/gstdata.c: (gst_data_replace):
1857         * gst/gstdata.h:
1858         * gst/gstelement.c: (gst_element_request_pad),
1859         (gst_element_pads_activate):
1860         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
1861         (gst_object_unref):
1862         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1863         (gst_pad_set_checkgetrange_function),
1864         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
1865         (gst_pad_check_pull_range), (gst_pad_pull_range),
1866         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1867         (gst_pad_pause_task), (gst_pad_stop_task):
1868         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1869         (gst_element_request_pad), (gst_pad_proxy_getcaps):
1870         Fix name lookup in GstBin.
1871         Added _data_replace() function and _buffer_replace()
1872         Use finalize method to clean up clock.
1873         Fix refcounting on request pads.
1874         Fix pad schedule mode error.
1875         Some more object refcounting debug info,
1876
1877
1878 2005-05-04  Andy Wingo <wingo@pobox.com>
1879
1880         * check/Makefile.am:
1881         * docs/gst/tmpl/gstatomic.sgml:
1882         * docs/gst/tmpl/gstplugin.sgml:
1883         * gst/base/gstbasesink.c: (gst_basesink_activate):
1884         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
1885         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
1886         (gst_basesrc_query), (gst_basesrc_set_property),
1887         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
1888         (gst_basesrc_activate):
1889         * gst/base/gstbasesrc.h:
1890         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
1891         (gst_base_transform_src_activate):
1892         * gst/elements/gstelements.c:
1893         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1894         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1895         * gst/elements/gsttee.c: (gst_tee_sink_activate):
1896         * gst/elements/gsttypefindelement.c: (find_element_get_length),
1897         (gst_type_find_element_checkgetrange),
1898         (gst_type_find_element_activate):
1899         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
1900         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
1901         (gst_caps_load_thyself):
1902         * gst/gstelement.c: (gst_element_pads_activate),
1903         (gst_element_save_thyself), (gst_element_restore_thyself):
1904         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
1905         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
1906         * gst/gstpad.h:
1907         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
1908         (gst_xml_parse_file), (gst_xml_parse_memory),
1909         (gst_xml_get_element), (gst_xml_make_element):
1910         * gst/indexers/gstfileindex.c: (gst_file_index_load),
1911         (_file_index_id_save_xml), (gst_file_index_commit):
1912         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
1913         (read_enum), (load_pad_template), (load_feature), (load_plugin),
1914         (load_paths):
1915         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
1916         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
1917         * tools/gst-complete.c: (main):
1918         * tools/gst-compprep.c: (main):
1919         * tools/gst-inspect.c: (print_element_properties_info):
1920         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
1921         * tools/gst-xmlinspect.c: (print_element_properties):
1922         GCC 4 fixen.
1923         
1924 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
1925
1926         * gst/gstplugin.c: (gst_plugin_check_module),
1927         (gst_plugin_check_file), (gst_plugin_load_file):
1928             apply patch from #172526 to make register work on MacOSX
1929
1930 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1931
1932         * docs/gst/tmpl/gstconfig.sgml:
1933         * gst/gstconfig.h.in:
1934           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
1935         * testsuite/debug/printf_extension.c: (main):
1936           Do not use GST_PTR_FORMAT on pointers to types with
1937           sizeof < sizeof(gpointer).  Fixes test on 64-bit
1938         * testsuite/elements/property.h:
1939           use correct printf format
1940
1941 2005-05-02  Wim Taymans  <wim@fluendo.com>
1942
1943         * docs/design/draft-push-pull.txt:
1944         * docs/design/draft-query.txt:
1945         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
1946         (gst_basesrc_start):
1947         Added draft for new query API.
1948         Added draft for better selecting scheduling methods.
1949         Make basesrc ignore length if the subclass does not support
1950         it.
1951
1952 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1953
1954         * gst/Makefile.am:
1955           possible fixes for automake-1.5 - _LIBADD is reserved
1956
1957 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1958
1959         * docs/faq/Makefile.am:
1960         * docs/manual/Makefile.am:
1961         * docs/manuals.mak:
1962         * docs/pwg/Makefile.am:
1963         * gst/Makefile.am:
1964           possible fixes for automake-1.5
1965
1966 2005-04-28  Wim Taymans  <wim@fluendo.com>
1967
1968         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1969         (gst_basesink_pad_getcaps), (gst_basesink_init),
1970         (gst_basesink_do_sync):
1971         * gst/gstclock.c: (gst_clock_entry_new):
1972         * gst/gstevent.c: (gst_event_discont_get_value):
1973         * gst/gstpipeline.c: (pipeline_bus_handler),
1974         (gst_pipeline_change_state):
1975         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
1976         Better debugging of clocking info.
1977         Allow NULL values when getting discont values.
1978
1979 2005-04-27  Wim Taymans  <wim@fluendo.com>
1980
1981         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
1982         * check/gst/gstpad.c: (gst_pad_suite):
1983         Increase timeout for checks.
1984
1985 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1986
1987         * check/Makefile.am:
1988           fix the broken rule for cleanup.  Apparently this rule is
1989           only needed on FC2, so maybe this warrants further autotool
1990           inspection.
1991
1992 2005-04-26  Wim Taymans  <wim@fluendo.com>
1993
1994         * gst/gsttrashstack.h:
1995         Ooohh. a nasty one! After having a failed pop() from the stack,
1996         it's possible that the stack is empty. In that case, don't
1997         follow the NULL pointer.
1998
1999 2005-04-25  Wim Taymans  <wim@fluendo.com>
2000
2001         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2002         (gst_pad_set_checkgetrange_function),
2003         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
2004         (gst_pad_check_pull_range), (gst_pad_pull_range),
2005         (gst_static_pad_template_get_caps), (gst_pad_start_task),
2006         (gst_pad_pause_task), (gst_pad_stop_task):
2007         * gst/gstplugin.c: (gst_plugin_load):
2008         * gst/gstplugin.h:
2009         Remove gst_library_load as it does more harm than good with
2010         the new g_module flags.
2011         Revert bogus caps template check in pad linking, pad caps
2012         are important when linking not the template, which is more
2013         general than the current caps.
2014
2015 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2016
2017         * gst/autoplug/.cvsignore:
2018         * gst/autoplug/Makefile.am:
2019         * gst/autoplug/gstsearchfuncs.c:
2020         * gst/autoplug/gstsearchfuncs.h:
2021         * gst/autoplug/gstspider.c:
2022         * gst/autoplug/gstspider.h:
2023         * gst/autoplug/gstspideridentity.c:
2024         * gst/autoplug/gstspideridentity.h:
2025         * gst/autoplug/spidertest.c:
2026           Die, spider, die.
2027
2028 2005-04-25  Wim Taymans  <wim@fluendo.com>
2029
2030         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2031         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
2032         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
2033         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
2034         * gst/gstpad.h:
2035         Added stubs for unimplemented functions. 
2036
2037 2005-04-24  David Schleef  <ds@schleef.org>
2038
2039         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
2040         please fix.
2041
2042 2005-04-24  David Schleef  <ds@schleef.org>
2043
2044         Convert everything from GstAtomicInt to g_atomic_int_*, and
2045         remove gstatomic.
2046         * gst/Makefile.am:
2047         * gst/gstatomic.c:
2048         * gst/gstatomic.h:
2049         * gst/gstatomic_impl.h:
2050         * gst/gstbuffer.c:
2051         * gst/gstcaps.c:
2052         * gst/gstcaps.h:
2053         * gst/gstclock.c:
2054         * gst/gstclock.h:
2055         * gst/gstdata.c:
2056         * gst/gstdata.h:
2057         * gst/gstdata_private.h:
2058         * gst/gstevent.c:
2059         * gst/gstinfo.c:
2060         * gst/gstinfo.h:
2061         * gst/gstmessage.c:
2062         * gst/gstobject.c:
2063         * gst/gstobject.h:
2064         * gst/gststructure.c:
2065         * gst/gststructure.h:
2066         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
2067         * gst/gstutils.h:
2068
2069 2005-04-24  David Schleef  <ds@schleef.org>
2070
2071         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
2072         make the regressions tests work.  Remove some code that is no
2073         longer true.
2074         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
2075         Disable warning for pads without templates.
2076
2077 2005-04-24  David Schleef  <ds@schleef.org>
2078
2079         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
2080         functions that handle filtered links.
2081         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
2082         removed functions.
2083         * gst/gstutils.c: Fix/remove utility functions that handle
2084         filtered caps.
2085         * gst/gstutils.h:
2086         * gst/gstvalue.c: Add serialization/deserialization of caps
2087         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
2088         requires fixing so that the filter caps notation creates
2089         a capsfilter element and sets the filter_caps property.  I
2090         think everyone probably wants to keep the shorthand notation.
2091         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
2092         * docs/gst/tmpl/gstpad.sgml:
2093
2094         * gst/elements/gstelements.c: Register capsfilter element.
2095         * gst/Makefile.am: fix spacing
2096         * docs/random/ds/0.9-suggested-changes: random
2097
2098 2005-04-23  David Schleef  <ds@schleef.org>
2099
2100         * gst/elements/Makefile.am:
2101         * gst/elements/gstcapsfilter.c: New element that acts like an
2102         identity, but filters caps.  Will eventually replace filtered
2103         caps in pad linking.
2104         * gst/gstutils.c: (gst_element_create_all_pads): New function
2105         to create all the ALWAYS pads that are registered with an
2106         element class.  This functionality should eventually be
2107         merged in with GstElement initialization.
2108         * gst/gstutils.h:
2109         * testsuite/trigger/README: part of trigger test code that should
2110         have been checked in a long time ago.
2111
2112 2005-04-23  David Schleef  <ds@schleef.org>
2113
2114         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
2115         needed with new versions of libtool (nobody will confirm this),
2116         and hard to carry around.
2117         * gst/autoplug/Makefile.am:
2118         * gst/base/Makefile.am:
2119         * gst/elements/Makefile.am:
2120         * gst/indexers/Makefile.am:
2121         * gst/schedulers/Makefile.am:
2122         * libs/gst/bytestream/Makefile.am:
2123         * libs/gst/control/Makefile.am:
2124         * libs/gst/dataprotocol/Makefile.am:
2125         * libs/gst/getbits/Makefile.am:
2126
2127 2005-04-21  Wim Taymans  <wim@fluendo.com>
2128
2129         * docs/design/draft-push-pull.txt:
2130         * docs/design/part-MT-refcounting.txt:
2131         * docs/design/part-TODO.txt:
2132         * docs/design/part-caps.txt:
2133         * docs/design/part-events.txt:
2134         * docs/design/part-gstbus.txt:
2135         * docs/design/part-gstpipeline.txt:
2136         * docs/design/part-messages.txt:
2137         * docs/design/part-push-pull.txt:
2138         * docs/design/part-query.txt:
2139         Some more docs.
2140
2141 2005-04-21  Wim Taymans  <wim@fluendo.com>
2142
2143         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
2144         (gst_message_new), (gst_message_new_error),
2145         (gst_message_new_warning), (gst_message_new_tag),
2146         (gst_message_new_state_changed), (gst_message_new_application),
2147         (gst_message_get_structure):
2148         * gst/gstmessage.h:
2149         * gst/gststructure.c: (gst_structure_set_parent_refcount),
2150         (gst_structure_copy_conditional):
2151         Use parent refcount in GstMessage to ensure GstStructure
2152         consistency.
2153         Cleaned up headers a bit.
2154         
2155
2156 2005-04-20  Wim Taymans  <wim@fluendo.com>
2157
2158         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2159         (gst_basesink_pad_getcaps), (gst_basesink_init),
2160         (gst_basesink_chain_unlocked):
2161         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
2162         (gst_type_find_helper):
2163         * gst/elements/gsttypefindelement.c:
2164         (gst_type_find_element_have_type), (gst_type_find_element_init),
2165         (stop_typefinding), (gst_type_find_element_handle_event),
2166         (find_suggest), (gst_type_find_element_chain),
2167         (gst_type_find_element_checkgetrange),
2168         (gst_type_find_element_getrange), (do_typefind),
2169         (gst_type_find_element_activate):
2170         * gst/gstbuffer.c: (_gst_buffer_sub_free),
2171         (gst_buffer_default_free), (gst_buffer_default_copy),
2172         (gst_buffer_set_caps):
2173         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
2174         (gst_caps_replace):
2175         * gst/gstmessage.c: (gst_message_new),
2176         (gst_message_new_state_changed):
2177         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2178         (gst_pad_set_checkgetrange_function),
2179         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
2180         (gst_pad_set_caps), (gst_pad_check_pull_range),
2181         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
2182         * gst/gstpad.h:
2183         * gst/gsttypefind.c: (gst_type_find_register):
2184         Make gst_caps_replace() work like other _replace() functions.
2185         Use _caps_replace() where possible.
2186         Make sure _message_new() initialises its field.
2187         Add gst_static_pad_template_get_caps()
2188
2189
2190 2005-04-18  Andy Wingo  <wingo@pobox.com>
2191
2192         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
2193         on the peer, not the pad. I think that was a typo. Pass an extra
2194         arg to see if random access is possible. Activate the pads as
2195         PULL_RANGE if possible.
2196
2197         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
2198
2199         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
2200         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
2201         to PROP_....
2202
2203 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2204
2205         * docs/faq/using.xml:
2206           Add note on gstreamer-properties (#154996).
2207
2208 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2209
2210         * docs/random/bbb/optional-properties:
2211           Some analysis on optional properties.
2212
2213 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2214
2215         * docs/gst/tmpl/gstelementfactory.sgml:
2216         * gst/gstelement.h:
2217         * gst/gstelementfactory.c: (gst_element_factory_init),
2218         (gst_element_factory_cleanup), (gst_element_register),
2219         (__gst_element_factory_add_static_pad_template),
2220         (gst_element_factory_get_static_pad_templates),
2221         (gst_element_factory_can_src_caps),
2222         (gst_element_factory_can_sink_caps):
2223         * gst/registries/Makefile.am:
2224         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
2225         (gst_xml_registry_class_init), (gst_xml_registry_init),
2226         (gst_xml_registry_new), (gst_xml_registry_set_property),
2227         (gst_xml_registry_get_property), (get_time), (make_dir),
2228         (gst_xml_registry_get_perms_func),
2229         (plugin_times_older_than_recurse), (plugin_times_older_than),
2230         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
2231         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
2232         (add_to_char_array), (read_string), (read_uint), (read_enum),
2233         (load_pad_template), (load_feature), (load_plugin), (load_paths),
2234         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
2235         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
2236         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
2237         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
2238         (gst_xml_registry_rebuild):
2239         * gst/registries/gstlibxmlregistry.h:
2240         * tools/gst-compprep.c: (main):
2241         * tools/gst-inspect.c: (print_pad_templates_info):
2242         * tools/gst-xmlinspect.c: (print_element_info):
2243           Use libxml2 for registry parsing, use staticpadtemplates in
2244           elementfactories. Makes gst_init() +/- 10x faster.
2245
2246 2005-04-12  Wim Taymans  <wim@fluendo.com>
2247
2248         * gst/base/Makefile.am:
2249         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2250         (gst_basesink_pad_getcaps), (gst_basesink_init),
2251         (gst_basesink_event), (gst_basesink_change_state):
2252         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2253         (gst_basesrc_init), (gst_basesrc_query),
2254         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
2255         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
2256         (gst_basesrc_check_get_range), (gst_basesrc_loop),
2257         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
2258         (gst_basesrc_stop), (gst_basesrc_activate),
2259         (gst_basesrc_change_state):
2260         * gst/base/gsttypefindhelper.c: (helper_find_peek),
2261         (helper_find_suggest), (gst_type_find_helper):
2262         * gst/base/gsttypefindhelper.h:
2263         * gst/elements/Makefile.am:
2264         * gst/elements/gstelements.c:
2265         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2266         (gst_fakesink_get_times), (gst_fakesink_event),
2267         (gst_fakesink_preroll), (gst_fakesink_render):
2268         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2269         (gst_fakesrc_init), (gst_fakesrc_event_handler),
2270         (gst_fakesrc_get_property), (gst_fakesrc_create),
2271         (gst_fakesrc_start), (gst_fakesrc_stop):
2272         * gst/elements/gstfakesrc.h:
2273         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
2274         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
2275         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
2276         (gst_filesrc_create_read), (gst_filesrc_create),
2277         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
2278         (gst_filesrc_start):
2279         * gst/elements/gsttypefindelement.c:
2280         (gst_type_find_element_have_type), (gst_type_find_element_init),
2281         (start_typefinding), (stop_typefinding), (push_buffer_store),
2282         (gst_type_find_element_handle_event),
2283         (gst_type_find_element_chain),
2284         (gst_type_find_element_checkgetrange),
2285         (gst_type_find_element_getrange), (do_typefind),
2286         (gst_type_find_element_activate),
2287         (gst_type_find_element_change_state):
2288         * gst/elements/gsttypefindelement.h:
2289         * gst/gstpipeline.c: (pipeline_bus_handler):
2290         Added typefind helper.
2291         Small preroll fix in the base sink.
2292         Disable typefind code in basesrc.
2293         Crude port of typefindelement.
2294         Fakesrc cleanups.
2295
2296
2297 2005-04-11  Wim Taymans  <wim@fluendo.com>
2298
2299         * check/gst/gstbus.c: (gstbus_suite):
2300         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
2301         * check/gstcheck.h:
2302           Fix up the timeout so that the test does not fail.
2303
2304 2005-04-06  Wim Taymans  <wim@fluendo.com>
2305
2306         * gst/base/README:
2307         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2308         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
2309         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
2310         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
2311         (gst_basesrc_check_get_range), (gst_basesrc_loop),
2312         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
2313         (gst_basesrc_stop), (gst_basesrc_activate),
2314         (gst_basesrc_change_state), (basesrc_find_peek),
2315         (basesrc_find_suggest), (gst_basesrc_type_find):
2316         * gst/base/gstbasesrc.h:
2317         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
2318         (gst_filesrc_class_init), (gst_filesrc_init),
2319         (gst_filesrc_finalize), (gst_filesrc_set_location),
2320         (gst_filesrc_set_property), (gst_filesrc_get_property),
2321         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
2322         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
2323         (gst_filesrc_create_read), (gst_filesrc_create),
2324         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
2325         * gst/elements/gstfilesrc.h:
2326         * gst/gstelement.c: (gst_element_get_state_func),
2327         (gst_element_lost_state), (gst_element_pads_activate):
2328         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2329         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
2330         (gst_pad_pull_range):
2331         * gst/gstpad.h:
2332         More work on the generic source base class, implement seeking,
2333         query.
2334         Make filesrc extend the base source class.
2335         Added gst_pad_set_checkgetrange_function to GstPad.
2336
2337 2005-04-06  Andy Wingo  <wingo@pobox.com>
2338
2339         * pkgconfig/gstreamer-base.pc.in:
2340         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
2341
2342         * pkgconfig/Makefile.am:
2343         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
2344
2345 2005-04-04  Wim Taymans  <wim@fluendo.com>
2346
2347         * gst/base/Makefile.am:
2348         * gst/base/README:
2349         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2350         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
2351         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
2352         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
2353         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2354         (gst_basesrc_base_init), (gst_basesrc_class_init),
2355         (gst_basesrc_init), (gst_basesrc_get_formats),
2356         (gst_basesrc_get_query_types), (gst_basesrc_query),
2357         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
2358         (gst_basesrc_set_property), (gst_basesrc_get_property),
2359         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
2360         (gst_basesrc_loop), (gst_basesrc_activate),
2361         (gst_basesrc_change_state):
2362         * gst/base/gstbasesrc.h:
2363         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
2364         (gst_fakesrc_class_init), (gst_fakesrc_init),
2365         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
2366         (gst_fakesrc_get_property), (gst_fakesrc_create):
2367         * gst/elements/gstfakesrc.h:
2368         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
2369         (gst_filesrc_open_file), (gst_filesrc_loop),
2370         (gst_filesrc_activate), (filesrc_find_peek),
2371         (gst_filesrc_type_find):
2372         Made base source class, make fakesrc extend it.
2373         Add comments to basesink class.
2374         Some filesrc cleanup.
2375
2376 2005-03-31  David Schleef  <ds@schleef.org>
2377
2378         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
2379         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
2380         expected to link against libgstreamer.
2381         * gst/base/Makefile.am: link against libgstreamer
2382         * gst/elements/Makefile.am: same
2383
2384 2005-03-31  Andy Wingo  <wingo@pobox.com>
2385
2386         * tests/instantiate/Makefile.am:
2387         * tests/instantiate/caps.c: Add test to test speed of caps copy
2388         and free.
2389
2390         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
2391         GMemChunk to be fair.
2392
2393         * gst/gsttrashstack.h: Remove warning about using the fallback
2394         trash stack implementation, it's still faster than malloc.
2395
2396 2005-03-30  Andy Wingo  <wingo@pobox.com>
2397
2398         * tests/complexity.c: Add a copyright.
2399
2400 2005-03-31  Wim Taymans  <wim@fluendo.com>
2401
2402         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
2403         (gst_base_transform_class_init), (gst_base_transform_init),
2404         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
2405         (gst_base_transform_get_property),
2406         (gst_base_transform_sink_activate),
2407         (gst_base_transform_src_activate),
2408         (gst_base_transform_change_state):
2409         * gst/base/gstbasetransform.h:
2410         * gst/elements/gstidentity.c: (gst_identity_class_init),
2411         (gst_identity_event), (gst_identity_check_perfect),
2412         (gst_identity_transform), (gst_identity_start),
2413         (gst_identity_stop):
2414         Added start/stop methods to transform base class so subclasses 
2415         don't need to deal with state changes even.
2416
2417 2005-03-31  Wim Taymans  <wim@fluendo.com>
2418
2419         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
2420         (gst_event_new_discontinuous), (gst_event_discont_get_value):
2421         * gst/gstevent.h:
2422         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2423         (gst_pad_pull_range):
2424         Added rate to the discont event to prepare for variable speed
2425         and reverse playback.
2426
2427 2005-03-29  David Schleef  <ds@schleef.org>
2428
2429         * configure.ac:
2430         * testsuite/trigger/Makefile.am:
2431         * testsuite/trigger/trigger.c: A little example program to show
2432         how trigger-based elements can work.
2433
2434 2005-03-29  Wim Taymans  <wim@fluendo.com>
2435
2436         * gst/base/Makefile.am:
2437         * gst/base/README:
2438         * gst/base/gstbasesink.c: (gst_basesink_get_type),
2439         (gst_basesink_base_init), (gst_basesink_class_init),
2440         (gst_basesink_pad_getcaps), (gst_basesink_init),
2441         (gst_basesink_activate), (gst_basesink_change_state):
2442         * gst/base/gstbasesink.h:
2443         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
2444         (gst_base_transform_base_init), (gst_base_transform_finalize),
2445         (gst_base_transform_class_init), (gst_base_transform_init),
2446         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
2447         (gst_base_transform_event), (gst_base_transform_getrange),
2448         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
2449         (gst_base_transform_set_property),
2450         (gst_base_transform_get_property),
2451         (gst_base_transform_sink_activate),
2452         (gst_base_transform_src_activate),
2453         (gst_base_transform_change_state):
2454         * gst/base/gstbasetransform.h:
2455         * gst/elements/gstidentity.c: (gst_identity_finalize),
2456         (gst_identity_class_init), (gst_identity_init),
2457         (gst_identity_event), (gst_identity_check_perfect),
2458         (gst_identity_transform), (gst_identity_set_property),
2459         (gst_identity_get_property), (gst_identity_change_state):
2460         * gst/elements/gstidentity.h:
2461         * gst/gstelement.c: (gst_element_get_state_func),
2462         (gst_element_lost_state), (gst_element_pads_activate):
2463         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2464         (gst_pad_check_pull_range), (gst_pad_pull_range):
2465         * gst/gstpad.h:
2466         Simplify pad activation.
2467         Added function to check if pull_range can be performed.
2468         Error out when pulling inactive or flushing pads.
2469         Removed const from refcounted types as it does not make sense.
2470         Simplify pad templates in basesink
2471         Added base class for simple 1-to-1 transforms.
2472         Make identity subclass the base transform.
2473
2474 2005-03-29  Andy Wingo  <wingo@pobox.com>
2475
2476         * docs/libs/gstreamer-libs-overrides.txt: 
2477         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
2478         really don't understand what's going on, but like whatever. I want
2479         green buildbot!
2480
2481         * docs/gst/Makefile.am:
2482         * docs/libs/Makefile.am: Dist the overrides files.
2483
2484         * check/Makefile.am (clean-local): Remove .libs directories.
2485
2486         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
2487         elements to EXTRA_DIST, so po/ files are happy.
2488
2489         * po/POTFILES.in: Er, remove it here.
2490
2491         * po/POTFILES: Remove gstspider.c.
2492
2493         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
2494
2495         * docs/libs/gstreamer-libs-docs.sgml: 
2496         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
2497         bytestream.
2498
2499         * tests/complexity.c (main): Set the length of the preroll queue
2500         on the sinks to prevent a lockup.
2501
2502         * libs/gst/dataprotocol/Makefile.am: 
2503         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
2504         the same as the one in check/gst-libs/gdp.c.
2505
2506         * po/, docs/gst/: Commit automatic changes to docs and po files.
2507
2508         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
2509         the versioned libgstbase.
2510
2511         * check/Makefile.am: Depend on an unversioned gst-register, seems
2512         to make autoconf happier.
2513
2514         * gst/base/Makefile.am: Make libgstbase a versioned lib.
2515
2516 2005-03-28  Wim Taymans  <wim@fluendo.com>
2517
2518         * configure.ac:
2519         * docs/design/part-gstelement.txt:
2520         * docs/design/part-negotiation.txt:
2521         * docs/design/part-preroll.txt:
2522         * docs/design/part-scheduling.txt:
2523         * docs/design/part-states.txt:
2524         * gst/Makefile.am:
2525         * gst/base/Makefile.am:
2526         * gst/base/README:
2527         * gst/base/gstbasesink.c: (gst_basesink_get_template),
2528         (gst_basesink_base_init), (gst_basesink_class_init),
2529         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
2530         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
2531         (gst_basesink_set_pad_functions),
2532         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
2533         (gst_basesink_set_property), (gst_basesink_get_property),
2534         (gst_base_sink_get_template), (gst_base_sink_get_caps),
2535         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
2536         (gst_basesink_preroll_queue_push),
2537         (gst_basesink_preroll_queue_empty),
2538         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
2539         (gst_basesink_event), (gst_basesink_get_times),
2540         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
2541         (gst_basesink_chain_unlocked), (gst_basesink_chain),
2542         (gst_basesink_loop), (gst_basesink_activate),
2543         (gst_basesink_change_state):
2544         * gst/base/gstbasesink.h:
2545         * gst/elements/Makefile.am:
2546         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
2547         (gst_fakesink_class_init), (gst_fakesink_init),
2548         (gst_fakesink_set_property), (gst_fakesink_get_property),
2549         (gst_fakesink_get_times), (gst_fakesink_event),
2550         (gst_fakesink_preroll), (gst_fakesink_render),
2551         (gst_fakesink_change_state):
2552         * gst/elements/gstfakesink.h:
2553         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
2554         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
2555         * gst/gstelement.c: (gst_element_add_pad),
2556         (gst_element_get_state_func), (gst_element_abort_state),
2557         (gst_element_commit_state), (gst_element_lost_state),
2558         (gst_element_set_state), (gst_element_pads_activate):
2559         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
2560         * gst/gstpipeline.c: (gst_pipeline_send_event),
2561         (gst_pipeline_change_state):
2562         Added state change code.
2563         Added/updated docs.
2564         Added sink base class, make fakesink extend the base class.
2565         Small cleanups in GstPipeline.
2566
2567 2005-03-26  David Schleef  <ds@schleef.org>
2568
2569         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
2570         is broken and should be implemented in a different library.
2571         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
2572         * gst/gst.h: remove gstcpu.h
2573         * gst/gstcpu.c: remove
2574         * gst/gstcpu.h: remove
2575         * gst/Makefile.am.future: Remove this file.  It's ancient.
2576
2577 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2578
2579         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
2580         (gst_bin_send_event):
2581           Add default event/set_manager handlers. The set_manager handler
2582           takes care that the manager is distributed over kids that were
2583           already in the bin before the manager was set. The event handler
2584           is a utility virtual function that sends the event over all sinks,
2585           so that gst_element_send_event (bin, event); has the expected
2586           behaviour.
2587         * gst/gstpad.c: (gst_pad_event_default):
2588           Re-install default event handling for discontinuities, so that
2589           seeking works without requiring hacks in applications or extra
2590           code in sinks.
2591         * gst/gstpipeline.c: (gst_pipeline_class_init),
2592         (gst_pipeline_send_event):
2593           Half hack, half utility: set a pipeline to PAUSED for seek events,
2594           since that is the only way we can guarantee a/v sync. Means that
2595           you can do gst_element_seek (pipeline, method, pos); on a pipeline
2596           and it "just works".
2597
2598 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2599
2600         * gst/gstpipeline.c: (gst_pipeline_use_clock):
2601           Lock/unlock mismatch.
2602
2603 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
2604
2605         * docs/faq/gst-uninstalled:
2606           add gst-plugins-base
2607         * docs/gst/Makefile.am:
2608           don't error out until docs are fixed
2609         * docs/gst/gstreamer.types:
2610           remove thread
2611
2612 2005-03-22  Wim Taymans  <wim@fluendo.com>
2613
2614         * check/Makefile.am:
2615         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
2616         * gst/gststructure.c: (gst_structure_set_valist),
2617         (gst_structure_copy_conditional):
2618         Activated more tests.
2619         Added message test.
2620         Added G_TYPE_POINTER to GstStructure.
2621         
2622
2623 2005-03-22  Wim Taymans  <wim@fluendo.com>
2624
2625         * docs/design/part-TODO.txt:
2626         * docs/design/part-events.txt:
2627         * docs/design/part-gstbin.txt:
2628         * docs/design/part-gstbus.txt:
2629         * docs/design/part-gstpipeline.txt:
2630         * docs/design/part-messages.txt:
2631         * gst/gstbus.c:
2632         * gst/gstmessage.c:
2633         Docs updates
2634
2635 2005-03-21  Wim Taymans  <wim@fluendo.com>
2636
2637         * gst/gstbus.c: (gst_bus_post):
2638         Fix copy-and-paste error.
2639
2640 2005-03-21  Wim Taymans  <wim@fluendo.com>
2641
2642         * check/Makefile.am:
2643         * gst/Makefile.am:
2644         * gst/elements/Makefile.am:
2645         * gst/elements/gstelements.c:
2646         * gst/elements/gstfakesink.c: (gst_fakesink_init),
2647         (gst_fakesink_event), (gst_fakesink_chain):
2648         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2649         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
2650         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
2651         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
2652         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
2653         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
2654         (gst_fakesrc_loop), (gst_fakesrc_activate),
2655         (gst_fakesrc_change_state):
2656         * gst/elements/gstfakesrc.h:
2657         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
2658         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
2659         (gst_filesrc_open_file), (gst_filesrc_loop),
2660         (gst_filesrc_activate), (gst_filesrc_change_state),
2661         (filesrc_find_peek), (filesrc_find_suggest),
2662         (gst_filesrc_type_find):
2663         * gst/elements/gstidentity.c: (gst_identity_finalize),
2664         (gst_identity_class_init), (gst_identity_init),
2665         (gst_identity_proxy_getcaps), (identity_queue_push),
2666         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
2667         (gst_identity_getrange), (gst_identity_chain),
2668         (gst_identity_sink_loop), (gst_identity_src_loop),
2669         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
2670         (gst_identity_set_property), (gst_identity_get_property),
2671         (gst_identity_change_state):
2672         * gst/elements/gstidentity.h:
2673         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
2674         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
2675         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
2676         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
2677         (gst_tee_sink_activate):
2678         * gst/elements/gsttee.h:
2679         * gst/gst.c: (gst_register_core_elements), (init_post):
2680         * gst/gst.h:
2681         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
2682         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
2683         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
2684         (gst_bin_change_state):
2685         * gst/gstbin.h:
2686         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
2687         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
2688         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
2689         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
2690         (gst_bus_set_sync_handler), (gst_bus_create_watch),
2691         (bus_watch_callback), (bus_watch_destroy),
2692         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
2693         (poll_timeout), (gst_bus_poll):
2694         * gst/gstbus.h:
2695         * gst/gstcaps.h:
2696         * gst/gstdata.h:
2697         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
2698         (gst_element_post_message), (gst_element_message_full),
2699         (gst_element_get_state_func), (gst_element_get_state),
2700         (gst_element_abort_state), (gst_element_commit_state),
2701         (gst_element_lost_state), (gst_element_set_state),
2702         (gst_element_pads_activate), (gst_element_change_state),
2703         (gst_element_dispose), (gst_element_set_manager_func),
2704         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
2705         (gst_element_set_manager), (gst_element_get_manager),
2706         (gst_element_set_bus), (gst_element_get_bus),
2707         (gst_element_set_scheduler), (gst_element_get_scheduler):
2708         * gst/gstelement.h:
2709         * gst/gstevent.c: (gst_event_new_segment_seek),
2710         (gst_event_new_flush):
2711         * gst/gstevent.h:
2712         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
2713         (_gst_message_free), (gst_message_get_type), (gst_message_new),
2714         (gst_message_new_eos), (gst_message_new_error),
2715         (gst_message_new_warning), (gst_message_new_tag),
2716         (gst_message_new_state_changed), (gst_message_new_application),
2717         (gst_message_get_structure), (gst_message_parse_tag),
2718         (gst_message_parse_state_changed), (gst_message_parse_error),
2719         (gst_message_parse_warning):
2720         * gst/gstmessage.h:
2721         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
2722         (gst_real_pad_set_property), (gst_pad_set_active),
2723         (gst_pad_is_active), (gst_pad_set_blocked_async),
2724         (gst_pad_set_blocked), (gst_pad_is_blocked),
2725         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
2726         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
2727         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
2728         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
2729         (gst_pad_link_filtered), (gst_pad_relink_filtered),
2730         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
2731         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
2732         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
2733         (gst_pad_set_caps), (gst_pad_configure_sink),
2734         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
2735         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
2736         (gst_real_pad_dispose), (gst_real_pad_finalize),
2737         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
2738         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2739         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
2740         * gst/gstpad.h:
2741         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
2742         (pipeline_bus_handler), (gst_pipeline_change_state),
2743         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
2744         * gst/gstpipeline.h:
2745         * gst/gstprobe.h:
2746         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
2747         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
2748         (gst_queue_link_src), (gst_queue_bufferalloc),
2749         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
2750         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
2751         (gst_queue_loop), (gst_queue_handle_src_event),
2752         (gst_queue_handle_src_query), (gst_queue_src_activate),
2753         (gst_queue_change_state):
2754         * gst/gstqueue.h:
2755         * gst/gstscheduler.c: (gst_scheduler_init),
2756         (gst_scheduler_dispose), (gst_scheduler_create_task),
2757         (gst_scheduler_factory_create):
2758         * gst/gstscheduler.h:
2759         * gst/gststructure.c: (gst_structure_get_type),
2760         (gst_structure_copy_conditional):
2761         * gst/gststructure.h:
2762         * gst/gsttaginterface.h:
2763         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
2764         (gst_task_init), (gst_task_dispose), (gst_task_create),
2765         (gst_task_get_state), (gst_task_start), (gst_task_stop),
2766         (gst_task_pause):
2767         * gst/gsttask.h:
2768         * gst/gstthread.c:
2769         * gst/gstthread.h:
2770         * gst/gsttypes.h:
2771         * gst/schedulers/Makefile.am:
2772         * gst/schedulers/cothreads_compat.h:
2773         * gst/schedulers/entryscheduler.c:
2774         * gst/schedulers/faircothreads.c:
2775         * gst/schedulers/faircothreads.h:
2776         * gst/schedulers/fairscheduler.c:
2777         * gst/schedulers/gstbasicscheduler.c:
2778         * gst/schedulers/gstoptimalscheduler.c:
2779         * gst/schedulers/gthread-cothreads.h:
2780         * gst/schedulers/threadscheduler.c:
2781         (gst_thread_scheduler_task_get_type),
2782         (gst_thread_scheduler_task_class_init),
2783         (gst_thread_scheduler_task_init),
2784         (gst_thread_scheduler_task_start),
2785         (gst_thread_scheduler_task_stop),
2786         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
2787         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2788         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
2789         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
2790         (plugin_init):
2791         * libs/gst/Makefile.am:
2792         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
2793         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
2794         (gst_file_pad_parent_set):
2795         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
2796         (gst_dp_event_from_packet):
2797         * tests/complexity.c: (main):
2798         * tests/mass_elements.c: (main):
2799         * testsuite/states/locked.c: (message_received), (main):
2800         * testsuite/states/parent.c: (main):
2801         * tools/gst-inspect.c: (print_element_flag_info),
2802         (print_implementation_info), (print_pad_info):
2803         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
2804         (main):
2805         * tools/gst-md5sum.c: (event_loop), (main):
2806         * tools/gst-typefind.c: (main):
2807         * tools/gst-xmlinspect.c: (print_element_info):
2808         Next big merge.
2809         Added GstBus for mainloop integration.
2810         Added GstMessage for sending notifications on the bus.
2811         Added GstTask as an abstraction for pipeline entry points.
2812         Removed GstThread.
2813         Removed Schedulers.
2814         Simplified GstQueue for multithreaded core.
2815         Made _link threadsafe, removed old capsnego.
2816         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
2817         Added pad blocking functions.
2818         Reworked scheduling functions in GstPad to prepare for
2819         scheduling updates soon.
2820         Moved events out of data stream.
2821         Simplified GstEvent types.
2822         Added return values to push/pull.
2823         Removed clocking from GstElement.
2824         Added prototypes for state change function for next merge.
2825         Removed iterate from bins and state change management.
2826         Fixed some elements, disabled others for now.
2827         Fixed -inspect and -launch.
2828         Added check for GstBus.
2829
2830 2005-03-10  Wim Taymans  <wim@fluendo.com>
2831
2832         * docs/design/part-MT-refcounting.txt:
2833         * docs/design/part-clocks.txt:
2834         * docs/design/part-gstelement.txt:
2835         * docs/design/part-gstobject.txt:
2836         * docs/design/part-standards.txt:
2837         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2838         (gst_bin_remove_func), (gst_bin_remove):
2839         * gst/gstbin.h:
2840         * gst/gstbuffer.c:
2841         * gst/gstcaps.h:
2842         * testsuite/clock/clock1.c: (main):
2843         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
2844         (main):
2845         * testsuite/dlopen/loadgst.c: (do_test):
2846         * testsuite/refcounting/bin.c: (add_remove_test1),
2847         (add_remove_test2), (main):
2848         * testsuite/refcounting/element.c: (main):
2849         * testsuite/refcounting/element_pad.c: (main):
2850         * testsuite/refcounting/pad.c: (main):
2851         * tools/gst-launch.c: (sigint_handler_sighandler):
2852         * tools/gst-typefind.c: (main):
2853         Doc updates.
2854         Added doc about clock.
2855         removed gst_bin_iterate_recurse_up(), marked methods
2856         for removal.
2857         Fix more testsuites.
2858
2859 2005-03-09  Wim Taymans  <wim@fluendo.com>
2860
2861         * gst/gstpad.c: (gst_pad_get_direction),
2862         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
2863         (gst_pad_collect_valist):
2864         * testsuite/bins/interface.c: (main):
2865         * testsuite/caps/audioscale.c: (test_caps):
2866         * testsuite/caps/caps.c: (test1), (test2), (test3):
2867         * testsuite/caps/deserialize.c: (main):
2868         * testsuite/caps/enumcaps.c: (main):
2869         * testsuite/caps/filtercaps.c: (main):
2870         * testsuite/caps/intersect2.c: (main):
2871         * testsuite/caps/random.c: (main):
2872         * testsuite/caps/renegotiate.c: (my_fixate), (main):
2873         * testsuite/caps/sets.c: (check_caps):
2874         * testsuite/caps/simplify.c: (check_caps), (main):
2875         * testsuite/caps/subtract.c: (check_caps):
2876         Fix _pad_get_direction wrt ghostpads.
2877         Fix caps testsuite.
2878
2879 2005-03-09  Wim Taymans  <wim@fluendo.com>
2880
2881         * check/Makefile.am:
2882         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
2883         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
2884         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
2885         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
2886         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
2887         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
2888         (gst_bin_remove), (gst_bin_iterate_recurse_up),
2889         (bin_element_is_sink), (gst_bin_iterate_sinks),
2890         (gst_bin_iterate_all_by_interface):
2891         * gst/gstbin.h:
2892         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
2893         (gst_element_change_state), (gst_element_dispose),
2894         (gst_element_finalize), (gst_element_set_loop_function):
2895         * gst/gstelement.h:
2896         * gst/gstiterator.c: (find_custom_fold_func):
2897         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2898         (gst_pad_collectv), (gst_pad_collect_valist),
2899         (gst_pad_template_new):
2900         * gst/gstpipeline.c: (gst_pipeline_class_init),
2901         (gst_pipeline_dispose), (gst_pipeline_set_property),
2902         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
2903         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
2904         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
2905         * gst/gstutils.h:
2906         * gst/schedulers/entryscheduler.c:
2907         * gst/schedulers/gstbasicscheduler.c:
2908         (gst_basic_scheduler_cothreaded_chain),
2909         (gst_basic_scheduler_chain_add_element):
2910         * testsuite/bins/interface.c: (main):
2911         Added GstBin test.
2912         Added GstSystemClock test.
2913         Implemented clock distribution code in GstBin.
2914         Implemented iterate sinks method for future use.
2915         Rearranged gstelement.h
2916         Fix GstIterator comparison bug.
2917         Moved some code to GstPipeline, mostly clocking related.
2918
2919 2005-03-09  Wim Taymans  <wim@fluendo.com>
2920
2921         * configure.ac:
2922         * gst/gst_private.h:
2923         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2924         (gst_bin_remove_func), (gst_bin_remove),
2925         (gst_bin_get_by_name_recurse_up):
2926         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
2927         (gst_clock_id_compare_func), (gst_clock_id_wait),
2928         (gst_clock_id_wait_async), (gst_clock_init),
2929         (gst_clock_adjust_unlocked), (gst_clock_get_time):
2930         * gst/gstelement.h:
2931         * gst/gstinfo.c: (_gst_debug_init):
2932         * gst/gstobject.h:
2933         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2934         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
2935         * gst/gstpad.h:
2936         Bump version number, we're now 0.9.0
2937         Add future debugging category.
2938         Fix NULL _unref() in _get_by_name_recurse_up
2939         Rearrange gstpad.h.
2940         Update some docs.
2941
2942 2005-03-08  Wim Taymans  <wim@fluendo.com>
2943
2944         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
2945         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
2946         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2947         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
2948         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
2949         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
2950         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
2951         * gst/elements/gstidentity.c: (gst_identity_class_init):
2952         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
2953         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
2954         * gst/elements/gstshaper.c: (gst_shaper_class_init):
2955         * gst/elements/gststatistics.c: (gst_statistics_class_init):
2956         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
2957         (gst_tee_link):
2958         * gst/gstelement.c: (gst_element_class_init),
2959         (gst_element_base_class_init), (gst_element_init),
2960         (gst_element_get_random_pad), (gst_element_wait_state_change),
2961         (gst_element_change_state), (gst_element_dispose),
2962         (gst_element_finalize), (gst_element_set_loop_function):
2963         * gst/gstelement.h:
2964         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
2965         * gst/gstthread.c: (gst_thread_class_init),
2966         (gst_thread_release_children_locks), (gst_thread_change_state):
2967         * gst/schedulers/gstbasicscheduler.c:
2968         (gst_basic_scheduler_loopfunc_wrapper),
2969         (gst_basic_scheduler_chain_wrapper),
2970         (gst_basic_scheduler_src_wrapper),
2971         (gst_basic_scheduler_remove_element):
2972         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
2973         Remove threadsafe properties. Fix elements because GObject
2974         complains when installing a property before declaring a
2975         set/get_property handler.
2976         Rearrange gstelement.h file, use STATE macros for state locks.
2977         Free mutexes in the finalize method instead of dispose.
2978
2979 2005-03-08  Wim Taymans  <wim@fluendo.com>
2980
2981         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
2982         * gst/gstthread.c: (gst_thread_release_children_locks):
2983         Added parentage check.
2984         Fix build og GstThread again.
2985
2986 2005-03-08  Wim Taymans  <wim@fluendo.com>
2987
2988         * docs/design/part-MT-refcounting.txt:
2989         * docs/design/part-conventions.txt:
2990         * docs/design/part-gstobject.txt:
2991         * docs/design/part-relations.txt:
2992         * docs/design/part-standards.txt:
2993         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2994         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
2995         (gst_bin_get_by_name), (gst_bin_get_by_interface),
2996         (gst_bin_iterate_all_by_interface):
2997         * gst/gstbuffer.h:
2998         * gst/gstclock.h:
2999         * gst/gstelement.c: (gst_element_class_init),
3000         (gst_element_change_state), (gst_element_set_loop_function):
3001         * gst/gstelement.h:
3002         * gst/gstiterator.c:
3003         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
3004         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
3005         (gst_object_dispatch_properties_changed), (gst_object_set_name),
3006         (gst_object_set_parent), (gst_object_unparent),
3007         (gst_object_check_uniqueness):
3008         * gst/gstobject.h:
3009         Docs updates, clean up some headers.
3010
3011 2005-03-07  Wim Taymans  <wim@fluendo.com>
3012
3013         * check/.cvsignore:
3014         * check/Makefile.am:
3015         * check/gst-libs/.cvsignore:
3016         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
3017         * check/gst/.cvsignore:
3018         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
3019         (START_TEST), (gstbus_suite), (main):
3020         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
3021         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
3022         (gst_data_suite), (main):
3023         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
3024         (add_fold_func), (gstiterator_suite), (main):
3025         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
3026         (thread_name_object), (thread_name_object_default),
3027         (gst_object_name_compare), (gst_object_suite), (main):
3028         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
3029         (gst_pad_suite), (main):
3030         * check/gstcheck.c: (gst_check_log_message_func),
3031         (gst_check_log_critical_func), (gst_check_init):
3032         * check/gstcheck.h:
3033         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
3034         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
3035         Added checks.
3036
3037 2005-03-07  Wim Taymans  <wim@fluendo.com>
3038
3039         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
3040         (gst_list_iterator_next), (gst_list_iterator_resync),
3041         (gst_list_iterator_free), (gst_iterator_new_list),
3042         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
3043         (gst_iterator_free), (gst_iterator_push), (filter_next),
3044         (filter_resync), (filter_uninit), (filter_free),
3045         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
3046         (gst_iterator_foreach), (find_custom_fold_func),
3047         (gst_iterator_find_custom):
3048         * gst/gstiterator.h:
3049         Added missing files.
3050
3051 2005-03-07  Wim Taymans  <wim@fluendo.com>
3052
3053         * Makefile.am:
3054         * configure.ac:
3055         * docs/design/part-MT-refcounting.txt:
3056         * docs/design/part-conventions.txt:
3057         * docs/design/part-gstobject.txt:
3058         * docs/design/part-relations.txt:
3059         * examples/mixer/mixer.c: (main):
3060         * examples/thread/thread.c: (eos), (main):
3061         * gst/Makefile.am:
3062         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
3063         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
3064         (gst_spider_plug_from_srcpad):
3065         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
3066         (gst_spider_identity_change_state),
3067         (gst_spider_identity_sink_loop_type_finding):
3068         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
3069         * gst/elements/gstidentity.c: (gst_identity_init):
3070         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
3071         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
3072         * gst/elements/gsttypefindelement.c: (free_entry):
3073         * gst/gst.c:
3074         * gst/gst.h:
3075         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
3076         (gst_bin_set_clock_func), (gst_bin_auto_clock),
3077         (gst_bin_set_index), (gst_bin_set_element_sched),
3078         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
3079         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
3080         (gst_bin_iterate_elements), (iterate_child_recurse),
3081         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
3082         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
3083         (compare_interface), (gst_bin_get_by_interface),
3084         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
3085         * gst/gstbin.h:
3086         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
3087         (gst_buffer_default_free), (gst_buffer_default_copy),
3088         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
3089         (gst_buffer_create_sub):
3090         * gst/gstbuffer.h:
3091         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
3092         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
3093         (gst_caps_unref), (gst_static_caps_get),
3094         (gst_caps_remove_and_get_structure), (gst_caps_append),
3095         (gst_caps_append_structure), (gst_caps_remove_structure),
3096         (gst_caps_copy_nth), (gst_caps_set_simple),
3097         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
3098         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
3099         (gst_caps_structure_intersect_field), (gst_caps_intersect),
3100         (gst_caps_structure_subtract_field), (gst_caps_subtract),
3101         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
3102         (gst_caps_structure_figure_out_union),
3103         (gst_caps_switch_structures), (gst_caps_do_simplify),
3104         (gst_caps_replace), (gst_caps_from_string),
3105         (gst_caps_copy_conditional):
3106         * gst/gstcaps.h:
3107         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
3108         (_gst_clock_id_free), (gst_clock_id_unref),
3109         (gst_clock_id_compare_func), (gst_clock_id_wait),
3110         (gst_clock_id_wait_async), (gst_clock_class_init),
3111         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
3112         (gst_clock_get_time), (gst_clock_set_time_adjust),
3113         (gst_clock_set_property), (gst_clock_get_property):
3114         * gst/gstclock.h:
3115         * gst/gstcompat.h:
3116         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
3117         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
3118         * gst/gstdata.h:
3119         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
3120         (gst_element_requires_clock), (gst_element_provides_clock),
3121         (gst_element_set_clock), (gst_element_clock_wait),
3122         (gst_element_wait), (gst_element_set_time_delay),
3123         (gst_element_is_indexable), (gst_element_add_pad),
3124         (gst_element_add_ghost_pad), (gst_element_remove_pad),
3125         (pad_compare_name), (gst_element_get_static_pad),
3126         (gst_element_request_pad), (gst_element_get_request_pad),
3127         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
3128         (gst_element_class_get_pad_template_list),
3129         (gst_element_class_get_pad_template), (gst_element_error_func),
3130         (gst_element_get_random_pad), (gst_element_get_event_masks),
3131         (gst_element_send_event), (gst_element_seek),
3132         (gst_element_get_query_types), (gst_element_query),
3133         (gst_element_get_formats), (gst_element_convert),
3134         (gst_element_is_locked_state), (gst_element_set_locked_state),
3135         (gst_element_sync_state_with_parent), (gst_element_change_state),
3136         (gst_element_finalize), (gst_element_yield),
3137         (gst_element_interrupt), (gst_element_set_scheduler),
3138         (gst_element_get_scheduler), (gst_element_set_loop_function):
3139         * gst/gstelement.h:
3140         * gst/gstevent.h:
3141         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
3142         (gst_format_get_by_nick), (gst_format_get_details),
3143         (gst_format_iterate_definitions):
3144         * gst/gstformat.h:
3145         * gst/gstindex.c: (gst_index_gtype_resolver):
3146         * gst/gstinfo.c:
3147         * gst/gstinfo.h:
3148         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
3149         (gst_mem_chunk_free):
3150         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
3151         (gst_object_ref), (gst_object_unref), (gst_object_sink),
3152         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
3153         (gst_object_dispatch_properties_changed),
3154         (gst_object_set_name_default), (gst_object_set_name),
3155         (gst_object_get_name), (gst_object_set_name_prefix),
3156         (gst_object_get_name_prefix), (gst_object_set_parent),
3157         (gst_object_get_parent), (gst_object_unparent),
3158         (gst_object_check_uniqueness), (gst_object_save_thyself),
3159         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
3160         (gst_object_set_property), (gst_object_get_property),
3161         (gst_object_get_path_string):
3162         * gst/gstobject.h:
3163         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
3164         (gst_real_pad_init), (gst_real_pad_get_property),
3165         (gst_pad_custom_new), (gst_pad_get_direction),
3166         (gst_pad_set_active), (gst_pad_is_active),
3167         (gst_pad_set_event_function), (gst_pad_is_linked),
3168         (gst_pad_link_free), (gst_pad_link_intersect),
3169         (gst_pad_link_fixate), (gst_pad_set_caps),
3170         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
3171         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
3172         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
3173         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
3174         (gst_pad_get_caps), (gst_pad_peer_get_caps),
3175         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
3176         (gst_pad_realize), (gst_pad_get_allowed_caps),
3177         (gst_real_pad_dispose), (gst_real_pad_finalize),
3178         (gst_pad_collectv), (gst_pad_collect_valist),
3179         (gst_pad_template_dispose), (gst_pad_template_new),
3180         (gst_pad_get_internal_links):
3181         * gst/gstpad.h:
3182         * gst/gstpipeline.c: (gst_pipeline_dispose),
3183         (gst_pipeline_change_state):
3184         * gst/gstpipeline.h:
3185         * gst/gstplugin.c:
3186         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
3187         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
3188         * gst/gstpluginfeature.h:
3189         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3190         * gst/gstquery.c: (_gst_query_type_initialize),
3191         (gst_query_type_register), (gst_query_type_get_by_nick),
3192         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
3193         * gst/gstquery.h:
3194         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
3195         * gst/gstscheduler.c: (gst_scheduler_add_element),
3196         (gst_scheduler_factory_create):
3197         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3198         (gst_structure_free), (gst_structure_set_name),
3199         (gst_structure_id_set_value), (gst_structure_set_value),
3200         (gst_structure_set_valist), (gst_structure_remove_field),
3201         (gst_structure_remove_fields),
3202         (gst_structure_remove_fields_valist),
3203         (gst_structure_remove_all_fields), (gst_structure_foreach),
3204         (gst_structure_map_in_place),
3205         (gst_caps_structure_fixate_field_nearest_int),
3206         (gst_caps_structure_fixate_field_nearest_double):
3207         * gst/gststructure.h:
3208         * gst/gstsystemclock.c: (gst_system_clock_class_init),
3209         (gst_system_clock_init), (gst_system_clock_dispose),
3210         (gst_system_clock_async_thread),
3211         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
3212         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
3213         * gst/gstsystemclock.h:
3214         * gst/gsttag.c: (gst_tag_list_add_value_internal),
3215         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
3216         * gst/gsttaginterface.c:
3217         * gst/gstthread.c: (gst_thread_dispose),
3218         (gst_thread_release_children_locks), (gst_thread_change_state),
3219         (gst_thread_main_loop):
3220         * gst/gsttrashstack.h:
3221         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
3222         * gst/gsttypes.h:
3223         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3224         (gst_element_request_pad), (gst_element_get_pad_from_template),
3225         (gst_element_request_compatible_pad),
3226         (gst_element_get_compatible_pad_filtered),
3227         (gst_element_get_compatible_pad), (gst_element_state_get_name),
3228         (gst_element_link_pads_filtered), (gst_element_link_filtered),
3229         (gst_element_link_many), (gst_element_link),
3230         (gst_element_link_pads), (gst_element_unlink_pads),
3231         (gst_element_unlink_many), (gst_element_unlink),
3232         (gst_pad_can_link_filtered), (gst_pad_can_link),
3233         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
3234         (gst_object_default_error), (gst_bin_add_many),
3235         (gst_bin_remove_many), (gst_element_populate_std_props),
3236         (gst_element_class_install_std_props), (gst_buffer_merge),
3237         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
3238         (link_fold_func), (gst_pad_proxy_setcaps):
3239         * gst/gstutils.h:
3240         * gst/gstvalue.c: (gst_value_deserialize_string):
3241         * gst/parse/grammar.y:
3242         * gst/schedulers/gstbasicscheduler.c:
3243         (gst_basic_scheduler_cothreaded_chain),
3244         (gst_basic_scheduler_chain_recursive_add),
3245         (gst_basic_scheduler_pad_link):
3246         * gst/schedulers/gstoptimalscheduler.c:
3247         (get_group_schedule_function),
3248         (gst_opt_scheduler_state_transition),
3249         (gst_opt_scheduler_add_element), (element_get_reachables_func):
3250         * libs/gst/bytestream/bytestream.c:
3251         * libs/gst/dataprotocol/dataprotocol.c:
3252         (gst_dp_header_from_buffer):
3253         * po/nb.po:
3254         * po/ru.po:
3255         * tests/threadstate/threadstate2.c: (eos):
3256         * tools/gst-compprep.c: (main):
3257         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
3258         (print_pad_info), (print_children_info):
3259         * tools/gst-launch.c: (idle_func), (main):
3260         * tools/gst-md5sum.c: (idle_func), (main):
3261         * tools/gst-xmlinspect.c: (print_element_info):
3262         First THREADED backport attempt, focusing on adding locks and
3263         making sure the API is threadsafe. Needs more work. More docs
3264         follow this week.
3265
3266 2005-02-24  Andy Wingo  <wingo@pobox.com>
3267
3268         * tests/bench-complexity.scm:
3269         * tests/complexity.gnuplot: New files, good for running complexity
3270         benchmarks.
3271
3272         * tests/Makefile.am:
3273         * tests/complexity.c: New test, sets up N elements, at each level
3274         teeing into M streams per element. Eeeenteresting.
3275
3276         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
3277         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
3278         running bench-mass_elements.scm.
3279
3280         * tests/bench-mass_elements.scm: New script, runs mass_elements
3281         for various numbers of identities, outputting the results to a
3282         file. Requires guile 1.6. Just for testing.
3283
3284 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3285
3286         * gst/schedulers/fairscheduler.c:
3287           compile with debug disabled
3288
3289 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
3290
3291         * configure.ac:
3292           hunting season on 0.9 is now OPEN
3293
3294 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
3295
3296         * docs/libs/tmpl/gstcontrol.sgml:
3297         * docs/libs/tmpl/gstdparam.sgml:
3298         * docs/libs/tmpl/gstdplinint.sgml:
3299         * docs/libs/tmpl/gstdpman.sgml:
3300         * docs/libs/tmpl/gstdpsmooth.sgml:
3301         * docs/libs/tmpl/gstunitconvert.sgml:
3302           more docs for the state of dparams
3303
3304 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3305
3306         * gst/gstelementfactory.c: (gst_element_factory_create):
3307         * gst/gstobject.c: (gst_object_init),
3308         (gst_object_set_name_default), (gst_object_set_name):
3309           name objects by default, not in gst_element_factory_create. Allows
3310           using elements created with g_object_new. (fixes #167283)
3311
3312 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3313
3314         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
3315           make the time that debugging functions print relative to when
3316           gst_init was called
3317
3318 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
3319
3320         * gst/gsttaginterface.c:
3321           Fix inline docs: tag setter vararg functions are NULL-terminated,
3322           GST_TAG_INVALID doesn't exist any more.
3323
3324 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
3325
3326         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
3327         Allocate the 1 byte more memory that was forgotten!!!!!
3328         fixes memory corruption on 64bit platforms
3329
3330 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
3331
3332         * docs/pwg/building-pads.xml:
3333         * docs/pwg/intro-basics.xml:
3334           fixed a few typos, relabeled introductionary list of types
3335         * docs/random/ensonic/dparams.txt:
3336           more notes abut dparam changes
3337         * libs/gst/control/dparam.c: (gst_dparam_attach):
3338         * libs/gst/control/dparammanager.c:
3339         * libs/gst/control/dparammanager.h:
3340           - many comments and notes on dparam implementation
3341           - new dparams are were not initialized to the default value
3342             from param spec
3343
3344 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
3345
3346         submitted by: Peter Astakhov
3347
3348         * po/LINGUAS:
3349         * po/ru.po:
3350           adding Russian translation
3351
3352 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
3353
3354         * configure.ac:
3355         * docs/gst/Makefile.am:
3356         * docs/libs/Makefile.am:
3357           make sure popt is added to gtk-doc flags.  Fixes #147782.
3358
3359 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
3360
3361         * docs/faq/using.xml:
3362           Fix typo in FAQ (artssink => artsdsink)
3363
3364 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3365
3366         * tools/gst-launch.1.in:
3367           Fix typo (#166699).
3368
3369 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
3370
3371         * docs/faq/using.xml:
3372           Add -v argument to fakesrc/fakesink gst-launch line,
3373           so that the promised output will actually show up.
3374
3375 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3376
3377         * gst/gstthread.c: (gst_thread_change_state):
3378           Implement state-change error handling (#166073).
3379
3380 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3381
3382         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
3383           Release interrupt after handling (#166250).
3384
3385 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3386
3387         * configure.ac:
3388           back to HEAD
3389
3390 === release 0.8.9 ===
3391
3392 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3393
3394         * NEWS:
3395         * RELEASE:
3396         * configure.ac:
3397           releasing 0.8.9, "Like Eating Glass"
3398
3399 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3400
3401         submitted by: Clytie Siddall
3402
3403         * po/vi.po: Added Vietnamese translation
3404
3405 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
3406
3407         patch by: Tim Philipp-Müller
3408
3409         * configure.ac:
3410         * gst/gstpad.c:
3411           unref data when probe function returns FALSE.  Fixes #166362
3412
3413 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3414
3415         * gst/gst.c: (gst_init_get_popt_table):
3416           Fix typo (#166269).
3417
3418 2005-02-04  Andy Wingo  <wingo@pobox.com>
3419
3420         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
3421         the debugging on whether the caps are compatible.
3422
3423 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3424
3425         * docs/manual/basics-elements.xml:
3426           Fix two typos.
3427
3428 2005-02-02  Wim Taymans  <wim@fluendo.com>
3429
3430         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
3431         (schedule_chain), (get_invalid_call), (chain_invalid_call),
3432         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
3433         Remove some FIXMEs after analysing and commenting why they
3434         are not issues.
3435
3436 2005-02-02  Wim Taymans  <wim@fluendo.com>
3437
3438         * gst/schedulers/gstoptimalscheduler.c:
3439         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
3440         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
3441         (get_invalid_call), (chain_invalid_call),
3442         (get_group_schedule_function), (loop_group_schedule_function),
3443         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
3444         (gst_opt_scheduler_state_transition),
3445         (gst_opt_scheduler_add_element),
3446         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
3447         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
3448         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
3449         (gst_opt_scheduler_show):
3450         Added lock to protect scheduler data structures.
3451
3452 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3453
3454         * testsuite/threads/threadi.c: (cb_data):
3455           Fix buglet in test.
3456
3457 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3458
3459         * testsuite/threads/Makefile.am:
3460         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
3461           On Wim's request, split the test in three separately-compiled
3462           tests that each test a very specific bug. Two of them still fail,
3463           will create bugs for those. threadi.c indicates why they fail.
3464
3465 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3466
3467         * gst/schedulers/gstoptimalscheduler.c:
3468         (get_group_schedule_function):
3469           Try to work with the threading mess that queue_link is.
3470
3471 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3472
3473         * gst/gstbin.c: (gst_bin_remove_func):
3474           Explicitely make an element release locks in a group when being
3475           remove from a bin.
3476         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
3477           If there's no scheduler, always return immediately (similar to
3478           gst_element_interrupt).
3479
3480 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3481
3482         * gst/gstbin.c: (gst_bin_child_state_change_func):
3483           Remove a piece of code that could never be reached.
3484         * docs/gst/gstreamer-sections.txt:
3485         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
3486         (gst_pad_call_get_function):
3487         * gst/gstpad.h:
3488         * testsuite/pad/Makefile.am:
3489           Fix #150546, enable tests.
3490
3491 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3492
3493         * docs/pwg/advanced-types.xml:
3494           Fix description for buffer-frames=0.
3495         * docs/gst/tmpl/gstbin.sgml:
3496         * gst/gstbin.c: (gst_bin_child_state_change_func),
3497         (gst_bin_change_state), (gst_bin_change_state_norecurse):
3498         * gst/gstbin.h:
3499         * testsuite/threads/Makefile.am:
3500         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
3501         (cb_state), (cb_play), (main):
3502           Fix non-recursive state changes to *really* change the state
3503           of the object, and not just call parent_class->state_change.
3504           Fix a lot of lockups caused by this. Fixes #132775. Add test
3505           for the problem. Also enable test to show #142588 (fixed).
3506         * gst/gstthread.c: (gst_thread_change_state),
3507         (gst_thread_child_state_change):
3508           Don't exit the thread if we go to NULL and are inside thread
3509           context. Instead, return control to the main thread context
3510           and exit from there.
3511         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
3512           Don't unset virtual functions, since those may still be used.
3513           That's not necessarily correct, but suffices for now.
3514         * configure.ac:
3515         * testsuite/Makefile.am:
3516         * testsuite/pad/Makefile.am:
3517         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
3518         (gst_test_sink_base_init), (gst_test_sink_chain),
3519         (gst_test_sink_init), (main):
3520         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
3521         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
3522         (main):
3523         * testsuite/pad/link.c: (gst_test_element_class_init),
3524         (gst_test_element_base_init), (gst_test_src_get),
3525         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
3526         (gst_test_filter_loop), (gst_test_filter_init),
3527         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
3528         (cb_error), (main):
3529           Add tests to show #150546. Pass, but should fail (currently
3530           disabled from the testsuite).
3531         * gst/gstscheduler.c: (gst_scheduler_dispose):
3532           Dereference child schedulers on dispose (#94464).
3533         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
3534           Fix typo.
3535         * testsuite/threads/thread.c: (main):
3536           Add more debug.
3537
3538 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3539
3540         * gst/gstpad.c: (gst_pad_push):
3541           Oops, revert previous commit, broke testsuite...
3542
3543 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3544
3545         * gst/gstpad.c: (gst_pad_push):
3546           Add check that the pad on which the push is performed is not a
3547           get-based pad (#150546).
3548
3549 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3550
3551         * gst/elements/gsttypefindelement.c:
3552         (gst_type_find_element_handle_event):
3553           Fix buffer pushing if stream EOSes during typefinding.
3554
3555 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
3556
3557         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3558
3559         * gst/gstvalue.c: (gst_string_wrap):
3560           Allow NULL-strings as argument (#165365).
3561
3562 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
3563
3564         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3565
3566         * gst/schedulers/faircothreads.c:
3567         (gst_fair_scheduler_cothread_queue_show):
3568           Fix build without debug enabled.
3569
3570 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
3571
3572         * docs/gst/gstreamer-sections.txt:
3573         * docs/libs/gstreamer-libs-docs.sgml:
3574         * docs/libs/gstreamer-libs-sections.txt:
3575         * docs/libs/tmpl/gstcontrol.sgml:
3576         * docs/libs/tmpl/gstdparam.sgml:
3577         * docs/libs/tmpl/gstdplinint.sgml:
3578         * docs/libs/tmpl/gstdpman.sgml:
3579         * docs/libs/tmpl/gstdpsmooth.sgml:
3580         * docs/libs/tmpl/gstputbits.sgml:
3581         * docs/libs/tmpl/gstunitconvert.sgml:
3582         * libs/gst/control/dparam.c:
3583         * libs/gst/control/dparam.h:
3584         * libs/gst/control/dparammanager.c:
3585         (gst_dpman_add_required_dparam_callback),
3586         (gst_dpman_add_required_dparam_direct),
3587         (gst_dpman_add_required_dparam_array),
3588         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
3589         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
3590         (gst_dpman_get_manager)
3591           restructured DParam docs
3592
3593 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
3594
3595         * gst-element-check.m4:
3596           Only check for gst-inspect if we haven't already
3597           found it in previous element check runs
3598
3599 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
3600
3601         * docs/gst/Makefile.am:
3602         * docs/libs/Makefile.am:
3603           fixed install rules to treat style.css as optional
3604
3605 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
3606
3607         * docs/gst/Makefile.am:
3608         * docs/libs/Makefile.am:
3609           install style.css along with docs
3610         * docs/gst/tmpl/gstbin.sgml:
3611         * docs/gst/tmpl/gstclock.sgml:
3612         * docs/gst/tmpl/gstdata.sgml:
3613         * docs/gst/tmpl/gstelement.sgml:
3614         * gst/gstbin.h:
3615         * gst/gstelement.c: (gst_element_class_init):
3616         * gst/gstelement.h:
3617           fixing incomplete docs
3618
3619 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
3620
3621         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
3622           Don't unref seek event twice when fflush() fails
3623           
3624 2005-01-22  David Schleef  <ds@schleef.org>
3625
3626         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
3627
3628 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
3629
3630         * docs/gst/Makefile.am:
3631         * docs/libs/Makefile.am:
3632           added params for deprecation guards
3633         * gst/gst.c:
3634         * gst/gst.h:
3635         * gst/gsterror.c: (_gst_resource_errors_init),
3636         (_gst_stream_errors_init):
3637         * gst/gsterror.h:
3638           documented some more enums
3639
3640 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
3641         * gst/autoplug/gstspideridentity.c:
3642         Cosmetic fix - spider_find_peek should be static
3643         * gst/parse/parse.l:
3644         Applying fix for #164261
3645
3646 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
3647
3648         * docs/gst/gstreamer-sections.txt:
3649         * docs/gst/tmpl/gstplugin.sgml:
3650         * docs/libs/gstreamer-libs-sections.txt:
3651         * docs/libs/tmpl/gstcontrol.sgml:
3652         * gst/gstbuffer.h:
3653         * gst/gsttag.h:
3654         * gst/gstvalue.c:
3655           added docs for the TAG defines
3656
3657 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3658
3659         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
3660           Only unref entry if there is an entry.
3661
3662 2005-01-17  Wim Taymans  <wim@fluendo.com>
3663
3664         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3665         (remove_from_group), (schedule_group), (normalize_group),
3666         (gst_opt_scheduler_iterate):
3667         Also ref/unref decoupled elements before iterating the
3668         group since they are not added to the list of elements.
3669
3670 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3671
3672         * docs/manual/highlevel-components.xml:
3673           Add subtitle/streamselection as new features to playbin.
3674
3675 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3676
3677         * docs/manual/manual.xml:
3678           Re-enable dataaccess docs (oops).
3679
3680 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3681
3682         * docs/pwg/advanced-types.xml:
3683         * docs/random/mimetypes:
3684           Add documentation on libsndfile types (#163309), by Steve Baker
3685           <steve@stevebaker.org>.
3686         * gst/gstelement.c: (gst_element_release_request_pad):
3687           If an element has no explicit function, just remove the pad.
3688
3689 2005-01-17  Luca Ognibene  <luogni@tin.it>
3690
3691         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3692
3693         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
3694           Fix memleak (#163801).
3695
3696 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3697
3698         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
3699           I think this is actually more correct...
3700
3701 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3702
3703         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3704           Another workaround for memory access while destroyed in callback.
3705           Please, someone with refcount knowledge, have a look at this.
3706
3707 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3708
3709         * docs/faq/faq.xml:
3710         * docs/faq/legal.xml:
3711           move the legal Q&A here
3712
3713 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3714
3715         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
3716         (gst_tee_request_new_pad):
3717           Fix negotiation.
3718
3719 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3720
3721         * docs/random/omega/caps2:
3722         * testsuite/caps/caps_strings:
3723           replace framerate aproximations by their real value
3724           (24000/1001, 30000/1001, 60000/1001)
3725           Partially fixes bug #164049
3726
3727 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3728
3729         * docs/gst/Makefile.am:
3730           don't fail on the stupid GstPoptOption
3731
3732 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3733
3734         * gst/gstpad.h:
3735         * gst/gstprobe.c:
3736           allow probes to work on ghost pads by realizing the pad
3737           probe debugging
3738
3739 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3740
3741         * docs/gst/gstreamer-sections.txt:
3742         * docs/gst/tmpl/gstpad.sgml:
3743         * gst/gstpad.c: (gst_pad_set_active_recursive):
3744         * gst/gstpad.h:
3745           Add gst_pad_set_active_recursive().
3746
3747 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
3748
3749         * docs/random/release:
3750           updates
3751         * gst/gst_private.h:
3752         * gst/gstinfo.c:
3753         * gst/gstobject.c:
3754           move deep_notify logging to a new category
3755         * gst/gstprobe.c:
3756         * gst/gstprobe.h:
3757           add stuff so bindings can wrap probes
3758
3759 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3760
3761         * gst/gstplugin.c: (gst_plugin_load):
3762           Fix plugin loading if plugin/lib was already loaded. Fixes
3763           #163383
3764
3765 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
3766
3767         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3768
3769         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
3770           Protect plugin loading by a mutex so it's threadsafe. Fixes
3771           #163234.
3772
3773 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3774
3775         * gst/gstevent.c: (_gst_event_copy):
3776           Reference source object when copying events, since it'll be
3777           dereferenced on event dereferencing as well.
3778
3779 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3780
3781         * docs/gst/gstreamer-sections.txt:
3782         * docs/gst/tmpl/gstevent.sgml:
3783         * gst/gstevent.c: (gst_event_new_filler_stamped),
3784         (gst_event_filler_get_duration):
3785         * gst/gstevent.h:
3786           Add two new functions for filler events (which are used to
3787           synchronize streams if one of them is not having any data
3788           for a while) without interrupting the actual data-stream.
3789           Basically a no-op.
3790         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3791         (gst_queue_link_sink), (gst_queue_link_src),
3792         (gst_queue_change_state):
3793           Allow for renegotiation while filled. Required for stream
3794           switching while playing.
3795
3796 2005-01-08  Benjamin Otte  <otte@gnome.org>
3797
3798         * gst/gstelement.c: (gst_element_link_many):
3799           fix up g_return_if_fail's
3800         * po/LINGUAS:
3801         * po/de.po:
3802           add German translation, that was somehow not included
3803
3804 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3805
3806         * docs/random/mimetypes:
3807           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
3808           do not add them to riff-lib as they are not common
3809
3810 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3811
3812         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3813           Check for existence of probe after performing the probe before
3814           re-accessing it to prevent segfaults caused by removal of the
3815           probe in the callback.
3816
3817 2005-01-05  David Schleef  <ds@schleef.org>
3818
3819         * testsuite/registry/Makefile.am:
3820         * testsuite/registry/gst-print-formats.c:
3821         (print_pad_templates_info), (print_element_list),
3822         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
3823         (g_list_uniqify), (get_pad_templates_info),
3824         (get_element_mime_list), (print_mime_list), (main): A little
3825         program that looks through the registry to find elements of
3826         a given type.  Not particularly interesting as a test, except
3827         that there's no other test covering the same area.
3828
3829 2005-01-05  David Schleef  <ds@schleef.org>
3830
3831         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
3832         (fault_handler_sigaction), (fault_spin),
3833         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
3834         in signal.h-type signal handlers by not calling forbidden functions,
3835         including gst_element_set_state().
3836
3837 2005-01-05  David Schleef  <ds@schleef.org>
3838
3839         * gst/gstvalue.h: Mark _gst_reserved[] as private
3840
3841 2005-01-05  David Schleef  <ds@schleef.org>
3842
3843         * gst/gstvalue.c: Fix doc build problem.
3844
3845 2005-01-05  David Schleef  <ds@schleef.org>
3846
3847         * gst/gstvalue.c: Add some documentation
3848
3849 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
3850
3851         * docs/README:
3852           another shell oneliner for empty return value docs
3853         * gst/gstcaps.c:
3854         * gst/gstvalue.c:
3855         * libs/gst/control/dparam.c:
3856           more doc fixes (parameters and return values)
3857
3858 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
3859
3860         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3861
3862         * gst/gstregistry.h:
3863         * gst/registries/gstxmlregistry.c:
3864           Fix macro's for Mingw (fixes #162276).
3865
3866 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
3867
3868         * docs/README:
3869           quick shell oneliner to find undocumented members
3870         * docs/gst/tmpl/gstplugin.sgml:
3871         * docs/gst/tmpl/gstscheduler.sgml:
3872         * docs/gst/tmpl/gstthread.sgml:
3873           more enumtypes cleanup
3874         * gst/gsterror.h:
3875           activated documentation comments, now someone needs to document
3876           the enums :(
3877
3878 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3879
3880         * docs/manual/manual.xml:
3881           Add dataaccess part (doh!).
3882
3883 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3884
3885         * docs/manual/advanced-autoplugging.xml:
3886           Fix typo (intiate -> initiate).
3887
3888 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3889
3890         * docs/random/bbb/streamselection:
3891           Add some notes on how to handle multi-subtitle/-audio streams.
3892
3893 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
3894
3895         * docs/gst/gstreamer-docs.sgml:
3896         * docs/gst/gstreamer-sections.txt:
3897         * docs/gst/tmpl/gstenumtypes.sgml:
3898         * docs/gst/tmpl/gsterror.sgml:
3899         * docs/gst/tmpl/gstevent.sgml:
3900         * docs/gst/tmpl/gstpad.sgml:
3901         * docs/gst/tmpl/gstpadtemplate.sgml:
3902         * docs/gst/tmpl/gstthread.sgml:
3903           removed gstenumtypes section from docs and put all the enums into
3904           their sections
3905
3906 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3907
3908         * gst/gstplugin.c:
3909           document gst_library_load a bit more (riff special case + return
3910           value if already loaded)
3911         * testsuite/bytestream/filepadsink.c:
3912           plugin name is 'gstbytestream', not 'bytestream'
3913
3914 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3915
3916         * docs/random/bbb/subtitles:
3917           Add some first mind rumblings on proper subtitle support.
3918
3919 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3920
3921         * po/ca.po:
3922         * po/sv.po:
3923           updated translations
3924
3925 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3926
3927         * docs/manual/advanced-dataaccess.xml:
3928           Add section on how to use fakesrc/fakesink/identity in your
3929           application, plus section on how to embed plugins. Also mention
3930           probes.
3931         * docs/manual/appendix-checklist.xml:
3932         * docs/manual/appendix-debugging.xml:
3933         * docs/manual/appendix-gnome.xml:
3934         * docs/manual/appendix-integration.xml:
3935           Debug -> checklist, GNOME -> integration, add sections on Linux,
3936           KDE integration and add other things useful for application
3937           development.
3938         * docs/manual/manual.xml:
3939           Remove some fixmes, update some file pointers.
3940         * docs/pwg/appendix-checklist.xml:
3941           Fix typo.
3942         * docs/pwg/building-boiler.xml:
3943           Remove ugly header and add commented fixme.
3944         * docs/pwg/pwg.xml:
3945           Add fixme.
3946         * examples/manual/Makefile.am:
3947           Add example for added docs.
3948
3949 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3950
3951         * configure.ac:
3952           back to HEAD
3953
3954 === release 0.8.8 ===
3955
3956 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3957
3958         * NEWS:
3959         * RELEASE:
3960         * configure.ac:
3961           Releasing 0.8.8, "I'll Take Care Of You"
3962
3963 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3964
3965         * configure.ac:
3966           second prerelease
3967
3968 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3969
3970         patch by: Wim Taymans
3971
3972         * gst/gstbin.c:
3973           Fix for #159852 - make iterate emission threadsafe
3974
3975 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3976
3977         * docs/faq/cvs.xml:
3978           notes about new fdo account request
3979
3980 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
3981
3982         * docs/gst/gstreamer-docs.sgml:
3983         * docs/gst/tmpl/gstenumtypes.sgml:
3984         * docs/gst/tmpl/gstplugin.sgml:
3985         * docs/libs/gstreamer-libs-docs.sgml:
3986           Added missing short docs. Added ids for navigation.
3987
3988 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3989
3990         * docs/manual/advanced-autoplugging.xml:
3991         * docs/manual/advanced-schedulers.xml:
3992         * docs/manual/advanced-threads.xml:
3993           Rewrites. Remove cothreads, go a bit into opt specifically,
3994           document threads and their gotchas, and do some technical stuff
3995           on autoplugging plus add some working examples. Fixes #157395.
3996         * examples/manual/Makefile.am:
3997           Add typefind/autoplugger example (one that actually works).
3998           Remove queue example since it's a duplicate of the thread one.
3999
4000 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4001
4002         * gst/gstvalue.c: (gst_value_deserialize_string):
4003           use deprecated g_value_set_string_take_ownership to keep compatible
4004           with glib 2.2
4005
4006 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4007
4008         * gst/gstvalue.c: (gst_value_deserialize_string):
4009           revert last patch, only dom a g_utf8_validate now before accepting
4010           the string - caps parsing strips " from strings so we can't rely on
4011           them
4012         * testsuite/caps/value_serialize.c: (test_string_deserialization):
4013           disable a test that tested the above and comment it
4014
4015 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
4016
4017         Patch reviewed by David Schleef  <ds@schleef.org>
4018
4019         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
4020         bug #153882)
4021         * win32/gstenumtypes.h: same
4022
4023 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4024
4025         * gst/gstpad.c: (gst_pad_query):
4026           Do query on realized pad, similar to how convert/send_event handle
4027           this. Also makes sense, since this pad belongs to the function to
4028           which this query will be sent. Fixes #158163.
4029
4030 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
4031
4032         * docs/manual/appendix-programs.xml: fix pipeline to actually work
4033
4034 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
4035
4036         * docs/faq/general.xml: fix pipeline to actually work
4037
4038 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4039
4040         * gst/gstvalue.c: (gst_value_deserialize_string):
4041           check that a simple string that gets deserialized does not contain
4042           invalid characters
4043         * testsuite/caps/value_serialize.c: (test_string_deserialization):
4044           remove a test that tested a wring behaviour
4045
4046 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
4047
4048         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4049
4050         * docs/manual/intro-motivation.xml:
4051           Fix typos.
4052
4053 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
4054
4055         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4056
4057         * docs/gst/tmpl/gstprobe.sgml:
4058           Fix documentation of probe callback - it is supposed to return
4059           FALSE, not TRUE, to remove data from the stream (#159087).
4060
4061 2004-12-16  Daniel Gazard  <dany42@free.fr>
4062
4063         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4064
4065         * gst/gstelementfactory.c: (gst_element_factory_create):
4066           Fix compile failure if compiling without libxml2 support (#149936).
4067
4068 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4069
4070         * docs/manual/advanced-autoplugging.xml:
4071         * docs/manual/highlevel-components.xml:
4072           Move spider from autoplugging to components. Autoplugging is for
4073           internals, not for solutions. ;-).
4074
4075 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4076
4077         * docs/random/ds/0.9-suggested-changes:
4078           Make note on device/location/uri property names.
4079
4080 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4081
4082         * docs/manual/advanced-autoplugging.xml:
4083         * docs/manual/advanced-clocks.xml:
4084         * docs/manual/advanced-interfaces.xml:
4085         * docs/manual/advanced-metadata.xml:
4086         * docs/manual/advanced-position.xml:
4087         * docs/manual/advanced-schedulers.xml:
4088         * docs/manual/advanced-threads.xml:
4089         * docs/manual/appendix-gnome.xml:
4090         * docs/manual/appendix-programs.xml:
4091         * docs/manual/appendix-quotes.xml:
4092         * docs/manual/autoplugging.xml:
4093         * docs/manual/basics-bins.xml:
4094         * docs/manual/basics-data.xml:
4095         * docs/manual/basics-elements.xml:
4096         * docs/manual/basics-helloworld.xml:
4097         * docs/manual/basics-init.xml:
4098         * docs/manual/basics-pads.xml:
4099         * docs/manual/basics-plugins.xml:
4100         * docs/manual/bins-api.xml:
4101         * docs/manual/bins.xml:
4102         * docs/manual/buffers-api.xml:
4103         * docs/manual/buffers.xml:
4104         * docs/manual/clocks.xml:
4105         * docs/manual/components.xml:
4106         * docs/manual/cothreads.xml:
4107         * docs/manual/debugging.xml:
4108         * docs/manual/dparams-app.xml:
4109         * docs/manual/dynamic.xml:
4110         * docs/manual/elements-api.xml:
4111         * docs/manual/elements.xml:
4112         * docs/manual/factories.xml:
4113         * docs/manual/gnome.xml:
4114         * docs/manual/goals.xml:
4115         * docs/manual/helloworld.xml:
4116         * docs/manual/helloworld2.xml:
4117         * docs/manual/highlevel-components.xml:
4118         * docs/manual/highlevel-xml.xml:
4119         * docs/manual/init-api.xml:
4120         * docs/manual/intro-basics.xml:
4121         * docs/manual/intro-motivation.xml:
4122         * docs/manual/intro-preface.xml:
4123         * docs/manual/intro.xml:
4124         * docs/manual/links-api.xml:
4125         * docs/manual/links.xml:
4126         * docs/manual/manual.xml:
4127         * docs/manual/motivation.xml:
4128         * docs/manual/pads-api.xml:
4129         * docs/manual/pads.xml:
4130         * docs/manual/plugins-api.xml:
4131         * docs/manual/plugins.xml:
4132         * docs/manual/programs.xml:
4133         * docs/manual/queues.xml:
4134         * docs/manual/quotes.xml:
4135         * docs/manual/schedulers.xml:
4136         * docs/manual/states-api.xml:
4137         * docs/manual/states.xml:
4138         * docs/manual/threads.xml:
4139         * docs/manual/typedetection.xml:
4140         * docs/manual/win32.xml:
4141         * docs/manual/xml.xml:
4142           Try 2. This time, include a short preface as a "general
4143           introduction", also add code blocks around all code samples
4144           so they get compiled. We still need a way to tell readers
4145           the filename of the code sample. In some cases, don't show
4146           all code in the documentation, but do include it in the generated
4147           code. This allows for focussing on specific bits in the docs,
4148           while still having a full test application available.
4149         * examples/manual/Makefile.am:
4150           Fix up examples for new ADM. Add several of the new examples that
4151           were either added or were missing from the build system.
4152         * examples/manual/extract.pl:
4153           Allow nameless blocks.
4154
4155 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4156
4157         * docs/manual/elements-api.xml:
4158         * docs/manual/helloworld.xml:
4159         * examples/manual/extract.pl:
4160           fix last example.  Add example of adding code blocks that are not
4161           shown in docbook output.
4162
4163 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4164
4165         * docs/manual/dynamic.xml:
4166         * docs/manual/elements-api.xml:
4167         * docs/manual/gnome.xml:
4168         * docs/manual/helloworld2.xml:
4169         * docs/manual/init-api.xml:
4170         * docs/manual/queues.xml:
4171         * docs/manual/threads.xml:
4172         * docs/manual/xml.xml:
4173         * examples/manual/extract.pl:
4174           Make it possible to extract example code from separate blocks.
4175           Should make Ronald happy.
4176
4177 2004-12-15  Wim Taymans  <wim@fluendo.com>
4178
4179         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4180         (remove_from_group), (group_elements_set_visited),
4181         (normalize_group), (gst_opt_scheduler_iterate):
4182         Fix bug where a flag was not updated on a decoupled entry point 
4183         because we were just checking the group element list and decoupled
4184         elements are not in that list..
4185
4186 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4187
4188         * docs/manual/advanced-autoplugging.xml:
4189         * docs/manual/advanced-clocks.xml:
4190         * docs/manual/advanced-dparams.xml:
4191         * docs/manual/advanced-interfaces.xml:
4192         * docs/manual/advanced-metadata.xml:
4193         * docs/manual/advanced-position.xml:
4194         * docs/manual/advanced-schedulers.xml:
4195         * docs/manual/advanced-threads.xml:
4196         * docs/manual/appendix-debugging.xml:
4197         * docs/manual/appendix-gnome.xml:
4198         * docs/manual/appendix-programs.xml:
4199         * docs/manual/appendix-quotes.xml:
4200         * docs/manual/appendix-win32.xml:
4201         * docs/manual/autoplugging.xml:
4202         * docs/manual/basics-bins.xml:
4203         * docs/manual/basics-data.xml:
4204         * docs/manual/basics-elements.xml:
4205         * docs/manual/basics-helloworld.xml:
4206         * docs/manual/basics-init.xml:
4207         * docs/manual/basics-pads.xml:
4208         * docs/manual/basics-plugins.xml:
4209         * docs/manual/bins-api.xml:
4210         * docs/manual/bins.xml:
4211         * docs/manual/buffers-api.xml:
4212         * docs/manual/buffers.xml:
4213         * docs/manual/clocks.xml:
4214         * docs/manual/components.xml:
4215         * docs/manual/cothreads.xml:
4216         * docs/manual/debugging.xml:
4217         * docs/manual/dparams-app.xml:
4218         * docs/manual/dynamic.xml:
4219         * docs/manual/elements-api.xml:
4220         * docs/manual/elements.xml:
4221         * docs/manual/factories.xml:
4222         * docs/manual/gnome.xml:
4223         * docs/manual/goals.xml:
4224         * docs/manual/helloworld.xml:
4225         * docs/manual/helloworld2.xml:
4226         * docs/manual/highlevel-components.xml:
4227         * docs/manual/highlevel-xml.xml:
4228         * docs/manual/init-api.xml:
4229         * docs/manual/intro-motivation.xml:
4230         * docs/manual/intro-preface.xml:
4231         * docs/manual/intro.xml:
4232         * docs/manual/links-api.xml:
4233         * docs/manual/links.xml:
4234         * docs/manual/manual.xml:
4235         * docs/manual/motivation.xml:
4236         * docs/manual/pads-api.xml:
4237         * docs/manual/pads.xml:
4238         * docs/manual/plugins-api.xml:
4239         * docs/manual/plugins.xml:
4240         * docs/manual/programs.xml:
4241         * docs/manual/queues.xml:
4242         * docs/manual/quotes.xml:
4243         * docs/manual/schedulers.xml:
4244         * docs/manual/states-api.xml:
4245         * docs/manual/states.xml:
4246         * docs/manual/threads.xml:
4247         * docs/manual/typedetection.xml:
4248         * docs/manual/win32.xml:
4249         * docs/manual/xml.xml:
4250           First try at rewriting the ADM. Needs lotsamore work, but some
4251           parts might already be somewhat useful.
4252         * docs/pwg/advanced-interfaces.xml:
4253           Remove properties interface, it never actually existed (except for
4254           on my HD...).
4255
4256 2004-12-13  David Schleef  <ds@schleef.org>
4257
4258         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
4259         be NULL (bug #160220).
4260
4261 2004-12-13  David Schleef  <ds@schleef.org>
4262
4263         * configure.ac: remove all mmx stuff, because it's not used.
4264         * docs/random/ds/0.9-suggested-changes: additional notes
4265         * include/Makefile.am: we don't use these anymore
4266         * include/mmx.h: remove
4267         * include/sse.h: remove
4268
4269 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4270
4271         * docs/random/mimetypes:
4272           Add FOURCC code for h264 codec (VSSH)
4273           Add alternate FOURCC codes for h263 related codecs
4274
4275 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
4276
4277         * docs/manual/programs.xml:
4278           Added more gst-launch examples.
4279
4280 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4281
4282         * gst/gstqueue.c: (gst_queue_handle_src_query):
4283           Check for availability again.
4284
4285 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4286
4287         * gst/gstcaps.c: (gst_caps_compare_structures):
4288           Simple caps go first. This has the nice side-effect of fixing an
4289           obscure warning.
4290
4291 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4292
4293         * gst/gstversion.h.in:
4294           Protect header.
4295
4296 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4297
4298         * gst/schedulers/gstoptimalscheduler.c:
4299         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
4300         (gst_opt_scheduler_get_wrapper):
4301           When we're recursing into a chain run, only run the directly
4302           related group, not all queued ones. This will fix a possible
4303           deadlock in chains with more than two groups.
4304
4305 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4306
4307         * autogen.sh:
4308           remove patch if autopoint fails
4309
4310 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4311
4312         * docs/gst/gstreamer-sections.txt:
4313           Document Thomas' addition, fix build, make Luis the sheriff happy.
4314
4315 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4316
4317         * gst/gstplugin.c:
4318         * gst/gstplugin.h:
4319           add accessor for version field
4320
4321 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4322
4323         submitted by: Luca Ferretti <elle.uca@infinito.it>
4324
4325         * po/LINGUAS:
4326         * po/it.po:
4327           New tranlation added: Italian
4328
4329 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4330
4331         * gst/gstpad.c: (gst_pad_is_negotiated),
4332         (gst_pad_get_negotiated_caps):
4333           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
4334           it doesn't actually check the contents), so be sure to hand it
4335           a RealPad else we'll crash.
4336
4337 2004-12-03  Wim Taymans  <wim@fluendo.com>
4338
4339         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4340         (gst_queue_link), (gst_queue_handle_src_query):
4341         Reverted to 1.110 until this makes the testsuite and various
4342         apps work.
4343
4344 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
4345
4346         * docs/upload.mak: fix included CVS conflict strings
4347
4348 2004-12-01  William Jon McCann  <mccann@jhu.edu>
4349
4350         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4351
4352         * gst/gstelement.c: (gst_element_error_full):
4353           Use g_error_new_literal because error text may have
4354           percentage signs in it. Fixes #160019.
4355
4356 2004-12-01  Benjamin Otte  <otte@gnome.org>
4357
4358         * gst/elements/gstbufferstore.c:
4359         (gst_buffer_store_add_buffer_func):
4360           don't try to make subbuffers bigger than they can be. (fixes
4361           #159970)
4362
4363 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4364
4365         * docs/gst/gstreamer-sections.txt:
4366         * docs/gst/tmpl/gstvalue.sgml:
4367           Add new function to docs to fix build.
4368
4369 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4370
4371         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
4372         * gst/gstpad.c: (_gst_pad_default_fixate_value),
4373         (_gst_pad_default_fixate_foreach):
4374         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
4375         * gst/gstvalue.h:
4376           Deprecate _type_is_fixed, use _value_is_fixed instead, since
4377           in some cases (arrays), the fixedness depends on the content.
4378         * gst/gstqueue.c: (gst_queue_handle_src_query):
4379           Check for availability before doing something.
4380
4381 2004-11-29  Wim Taymans  <wim@fluendo.com>
4382
4383         * testsuite/threads/Makefile.am:
4384         * testsuite/threads/signals.c: (gst_test_get_type),
4385         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
4386         (gst_test_set_property), (gst_test_get_property),
4387         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
4388         (gst_test_do_prop), (run_thread), (main):
4389         Added a bunch of testcases that show threadsafety bugs in glib.
4390
4391 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
4392
4393         * docs/manual/programs.xml:
4394           Added a first batch of gst-launch examples, as provided by Ronald
4395           and others from the devel-mlist
4396
4397 2004-11-28  Benjamin Otte  <otte@gnome.org>
4398
4399         * gst/gstelement.c: (gst_element_negotiate_pads):
4400           simplify
4401         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
4402         (gst_value_serialize_string), (gst_value_deserialize_string):
4403           add unwrapping of previously wrapped strings. Fix bug in wrapping
4404           while at it.
4405         * testsuite/caps/value_serialize.c: (test1),
4406         (test_string_serialization), (test_string_deserialization), (main):
4407           add tests for string (de)serialization
4408
4409 2004-11-26  Wim Taymans  <wim@fluendo.com>
4410
4411         * testsuite/threads/159566.c: (object_deep_notify), (main):
4412         * testsuite/threads/Makefile.am:
4413         Added testsuite to show bug #159566
4414
4415 2004-11-25  Wim Taymans  <wim@fluendo.com>
4416
4417         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
4418         (gst_thread_child_state_change), (gst_thread_main_loop):
4419         Ref the thread object in the GThread mainloop. Break out of the
4420         thread mainloop if it holds the last ref. This properly exits
4421         the threads when disposing the thread from its own context. It
4422         also avoids possible deadlocks in the dispose function.
4423
4424 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
4425
4426         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
4427         it is necessary to wait.
4428
4429 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4430
4431         * docs/pwg/building-boiler.xml:
4432           Make description somewhat clearer.
4433
4434 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4435
4436         * docs/upload.mak:
4437           Apparently docs changed location on FDO's server.
4438
4439 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4440
4441         * docs/pwg/appendix-checklist.xml:
4442           Add some random notes on things to check when writing an element.
4443           This list can be extended as people see fit.
4444
4445 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
4446
4447         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
4448         (gst_queue_link_src): Allow for renegotiating the caps of the sink
4449         pad. The queue will now wait until it is empty and forward the new
4450         caps to the source.
4451         * gst/gstbin.c (gst_bin_set_element_sched)
4452         (gst_bin_unset_element_sched): Make sure that all elements and
4453         links are registered and unregistered with the scheduler exactly
4454         once. This elaborates on a fix by Benjamin Otte, but
4455         guarantees that decoupled elements are also registered.
4456
4457 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4458
4459         * docs/manual/quotes.xml:
4460           add a quote
4461         * configure.ac:
4462         * gst/gst.c:
4463         * gst/gstinfo.c:
4464           add LIBDIR and move init message higher up so it's at the start
4465
4466 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
4467
4468         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
4469         * gstreamer.spec.in: add fair
4470
4471 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4472
4473         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4474         * gst/elements/gstidentity.c: (gst_identity_class_init):
4475           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
4476           <teuf@gnome.org> (#157263).
4477         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
4478         (gst_type_find_handle_src_query):
4479           Subtract size of internally stored data from position queries.
4480
4481 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
4482
4483         * gst/schedulers/fairscheduler.c:
4484         * gst/schedulers/faircothreads.c:
4485         * gst/schedulers/faircothreads.h:
4486         New cothread based scheduler: Fair scheduler.
4487         * gst/schedulers/gthread-cothreads.h: 
4488         Add the standard #if around the whole file.
4489         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
4490         compilation of the functions defined in this file. This is
4491         necessary to be able to use this file as a normal header.
4492         * gst/schedulers/Makefile.am: Add compiling support for fair
4493         scheduler.
4494         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
4495         scheduler cothreads layer from documentation generation.
4496
4497 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4498
4499         * gst/autoplug/gstspideridentity.c:
4500         (gst_spider_identity_sink_loop_type_finding):
4501           Don't crash if that function is not implemented.
4502
4503 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4504
4505         * docs/pwg/advanced-types.xml:
4506           Another typo.
4507
4508 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4509
4510         * docs/pwg/intro-preface.xml:
4511           Hm, ok, so the brackets weren't really useful...
4512         * docs/pwg/other-ntoone.xml:
4513           Fix embarassing typo.
4514
4515 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4516
4517         * docs/pwg/intro-preface.xml:
4518           Rewrite preface.
4519
4520 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4521
4522         * docs/pwg/advanced-scheduling.xml:
4523         * docs/pwg/advanced-tagging.xml:
4524         * docs/pwg/advanced-types.xml:
4525         * docs/pwg/building-boiler.xml:
4526         * docs/pwg/building-chainfn.xml:
4527         * docs/pwg/building-signals.xml:
4528         * docs/pwg/building-state.xml:
4529         * docs/pwg/building-testapp.xml:
4530         * docs/pwg/intro-basics.xml:
4531         * docs/pwg/other-manager.xml:
4532         * docs/pwg/other-source.xml:
4533           Typo fixes.
4534         * docs/pwg/other-manager.xml:
4535           Add some first content. No example code yet.
4536         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4537           Remove double newlines.
4538
4539 2004-11-04  Wim Taymans  <wim@fluendo.com>
4540
4541         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4542         (remove_from_group), (normalize_group), (group_migrate_connected),
4543         (gst_opt_scheduler_iterate):
4544         * testsuite/schedulers/.cvsignore:
4545         * testsuite/schedulers/Makefile.am:
4546         * testsuite/schedulers/queue_link.c: (main):
4547         Added testcase for scheduler segfault.
4548         Fix scheduler segfault when removing a decoupled
4549         entry point as the last element from a group.
4550
4551 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4552
4553         * gst/gstmarshal.list: add missing marshaller, fixes build
4554
4555 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4556
4557         * docs/random/signal: added notes about using BOXED for GstBuffer
4558         signal marshallers, not POINTER
4559
4560 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4561
4562         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4563         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
4564         POINTER=>BOXED changes to marshal GstBuffers
4565
4566 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4567
4568         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
4569         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
4570
4571 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
4572
4573         * docs/gst/gstreamer-sections.txt:
4574         * docs/gst/tmpl/gstcaps.sgml:
4575         * docs/gst/tmpl/gsterror.sgml:
4576         * docs/gst/tmpl/gstinfo.sgml:
4577         * docs/gst/tmpl/gstmacros.sgml:
4578         * docs/gst/tmpl/gstutils.sgml:
4579         * docs/random/ensonic/interfaces.txt:
4580         * gst/gstinfo.h:
4581           added some more docs, removed two obsolete defines
4582
4583 2004-11-02  Kjartan Maraas <as at gnome.org>
4584
4585         reviewed by: Wim Taymans, Ronald Bultje.
4586
4587         * gst/cothreads.c: (cothread_create):
4588         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
4589         (gst_bin_child_state_change_func):
4590         * gst/gstbuffer.c: (gst_buffer_span):
4591         * gst/gstelement.c: (gst_element_get_index),
4592         (gst_element_get_event_masks), (gst_element_get_query_types),
4593         (gst_element_get_formats):
4594         * gst/gsterror.c: (_gst_core_errors_init),
4595         (_gst_library_errors_init), (_gst_resource_errors_init),
4596         (_gst_stream_errors_init):
4597         * gst/gstobject.c: (gst_object_default_deep_notify):
4598         * gst/gstpad.c: (gst_pad_get_event_masks),
4599         (gst_pad_get_internal_links_default):
4600         * gst/gstplugin.c: (gst_plugin_register_func),
4601         (gst_plugin_get_module):
4602         * gst/gststructure.c: (gst_structure_get_string),
4603         (gst_structure_get_abbrs), (gst_structure_from_abbr),
4604         (gst_structure_to_abbr):
4605         * gst/gstutils.c: (gst_print_element_args):
4606         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4607         (setup_group_scheduler), (gst_opt_scheduler_iterate):
4608         Aplied part of patch #157127: Cleanup of issues reported by 
4609         sparse.
4610         Also do not try to use cothreads when there is no cothread
4611         context yet.
4612
4613 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
4614
4615         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4616         (gst_opt_scheduler_iterate):
4617         Applied patch #154061. Running a pipeline in which an element 
4618         calls GST_ELEMENT_ERROR in the chain function, the opt 
4619         scheduler doesn't unref the chain so it never gets freed.
4620
4621 2004-11-02  Wim Taymans  <wim@fluendo.com>
4622
4623         * gst/gststructure.c: (gst_structure_get_abbrs),
4624         (gst_structure_from_abbr), (gst_structure_to_abbr):
4625         Remove that ugly if-then thing in the code that converts
4626         between strings and types.
4627
4628 2004-11-02  Wim Taymans  <wim@fluendo.com>
4629
4630         * gst/gstscheduler.c: (gst_scheduler_add_element),
4631         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
4632         Aplied clock distribution patch, this should fix bug
4633         #148787.
4634
4635 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
4636
4637         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
4638
4639         * po/LINGUAS:
4640         * po/nb.po:
4641           Added Norwegian Bokmaal translation
4642
4643 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4644
4645         * tools/gst-inspect.c: (print_signal_info):
4646           print signal arguments as pointers if they are
4647
4648 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
4649
4650         * docs/pwg/building-boiler.xml:
4651           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
4652
4653 2004-10-19  Wim Taymans  <wim at fluendo dot com>
4654
4655         * gst/parse/parse.l:
4656         * testsuite/parse/parse1.c: (main):
4657         Since parse can do 'element name=a:b' make 'a:b.' work as
4658         well. 
4659         Added testcase to verify fix.
4660
4661 2004-10-19  Wim Taymans  <wim at fluendo dot com>
4662
4663         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
4664         Use the realpad when printing the direction.
4665         Add extra \n when printing extensions of typefind factories.
4666
4667 2004-10-13  David Schleef  <ds@schleef.org>
4668
4669         * examples/manual/Makefile.am: $< isn't portable in Makefile
4670         rules.
4671
4672 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
4673
4674         * docs/gst/tmpl/gstobject.sgml:
4675         * docs/gst/tmpl/gstplugin.sgml:
4676         * docs/gst/tmpl/gstpluginfeature.sgml:
4677         * docs/gst/tmpl/gstregistry.sgml:
4678         * docs/gst/tmpl/gstversion.sgml:
4679         * gst/gstbin.c:
4680           more api documentation
4681         * gst/gstplugin.c: (gst_plugin_register_func),
4682         (gst_plugin_check_file), (gst_plugin_load_file):
4683           better error signaling and logging
4684
4685 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4686
4687         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
4688           Subtract current queue contents from position queries.
4689
4690 2004-10-11  Johan Dahlin  <johan@gnome.org>
4691
4692         * gst/gsturi.c (gst_uri_get_location): unescape string
4693         (gst_uri_construct): escape string.
4694
4695 2004-10-11  Benjamin Otte  <otte@gnome.org>
4696
4697         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
4698         (gst_pad_try_set_caps_nonfixed):
4699           allow renegotiation of unconnected pads (as inside spider). Simply
4700           return OK if unconnected - mimic try_set_caps there.
4701
4702 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4703
4704         * gst/gstbin.c: (gst_bin_sync_children_state):
4705           Add missing break.
4706
4707 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4708
4709         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
4710         Set element to EOS before sending EOS event
4711
4712 2004-10-08  Wim Taymans  <wim at fluendo dot com>
4713
4714         * gst/elements/gsttypefindelement.c:
4715         (gst_type_find_element_handle_event):
4716         Handle EOS events when doing the transition from
4717         typefind to data passing. This should fix the
4718         infinite loops in short files.
4719
4720 2004-10-07  Wim Taymans  <wim at fluendo dot com>
4721
4722         * gst/gstthread.c: (gst_thread_change_state),
4723         (gst_thread_child_state_change):
4724         Make sure no iteration happens while performing
4725         the state change as it could mess up the internal
4726         consistency of the thread state.
4727
4728 2004-10-07  Wim Taymans  <wim at fluendo dot com>
4729
4730         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
4731         (gst_thread_change_state), (gst_thread_child_state_change):
4732         Do not try to grab the iterate lock in the state change method
4733         when we are in the same thread as the iterate or else we
4734         could deadlock. Some other cleanups.
4735
4736 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4737
4738         * configure.ac:
4739           bump nano to cvs
4740
4741 === release 0.8.7 ===
4742
4743 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4744
4745         * configure.ac:
4746         * NEWS:
4747         * RELEASE:
4748         * configure.ac:
4749           releasing 0.8.7, "A Cruise"
4750
4751 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4752
4753         * docs/random/mimetypes:
4754         Add an entry for Sony ATRAC3 audio format with mime-type
4755         used by rmdemux et riff-read
4756
4757 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4758
4759         * gst/elements/gsttypefindelement.c: (stop_typefinding):
4760         Push the buffer store instead of clearing it in case that
4761         the stream is not seekable.
4762
4763 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4764
4765         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
4766         (gst_thread_main_loop):
4767         Lock the iteration and the state change so that automatic
4768         negotiation and fixation does not happen at the same time
4769         as the in stream negotiation.
4770
4771 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4772
4773         * configure.ac:
4774           bump nano to cvs
4775
4776 === release 0.8.6 ===
4777
4778 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4779
4780         * configure.ac:
4781         * NEWS:
4782         * RELEASE:
4783         * configure.ac:
4784           releasing 0.8.6, "Narc"
4785
4786 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4787
4788         * configure.ac:
4789           prerel bump
4790
4791 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4792
4793         patch by: Steve Lhomme
4794
4795         * gst/elements/gstfakesrc.c:
4796         * gst/elements/gstidentity.c:
4797         * gst/gstthread.c:
4798           Fix for #153881
4799
4800 2004-10-01  Wim Taymans  <wim at fluendo dot com>
4801
4802         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
4803         Fix threadsafety of the crc checking function.
4804
4805 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4806
4807         patch by: Ronald Bultje
4808
4809         * gst/elements/gsttypefindelement.c: (stop_typefinding),
4810         (gst_type_find_element_handle_event),
4811         (gst_type_find_element_chain):
4812         * gst/elements/gsttypefindelement.h:
4813          #153657.
4814          Filter out discont event from seekable sources when typefind
4815          asks them to seek.  Fixes typefind with demuxers for
4816          avi, asf and matroska.
4817
4818 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4819
4820         * docs/gst/gstreamer-sections.txt:
4821         * gst/gstcaps.c:
4822         * gst/gstcaps.h:
4823         * gst/gstpad.c:
4824           Revert preferred caps: (#147789)
4825
4826 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
4827
4828         * win32/dirent.c:
4829           fix a memory leak
4830
4831 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4832
4833         * configure.ac:
4834           bump for prerelease
4835
4836 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4837
4838         * docs/Makefile.am:
4839         * docs/manual/elements-api.xml:
4840           restructure so that common stuff is shown first
4841         * docs/manual/init-api.xml:
4842           convert to examples
4843         * docs/manual/manual.xml:
4844         * docs/manuals.mak:
4845         * docs/url.entities:
4846           link to API on the website, possibly override later in build
4847         * examples/manual/.cvsignore:
4848           ignore more
4849         * examples/manual/Makefile.am:
4850           add more examples
4851         * examples/manual/extract.pl:
4852           error out on failure
4853
4854 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4855
4856         * docs/gst/tmpl/gstthread.sgml:
4857         * docs/manual/init-api.xml:
4858         * examples/manual/Makefile.am:
4859           convert two code bits to examples
4860
4861 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4862
4863         * gst/gstelement.c: (gst_element_change_state):
4864           Well, actually, I was about to remove this insane assert when
4865           I noticed Wim already did that. A warning is nice so we can
4866           fix actual ugs (using --g-fatal-warnings and backtraces), so
4867           I added that instead.
4868
4869 2004-09-06  Wim Taymans  <wim@fluendo.com>
4870
4871         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
4872         (gst_element_threadsafe_properties_post_run),
4873         (gst_element_set_state), (gst_element_change_state):
4874         Added extra refcounting around various places. 
4875
4876 2004-09-06  Wim Taymans  <wim@fluendo.com>
4877
4878         * gst/gstpad.c: (gst_pad_link_call_link_functions):
4879         Fix debug info.
4880
4881 2004-09-06  Wim Taymans  <wim@fluendo.com>
4882
4883         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4884         (remove_from_group):
4885         Some more debug info.
4886
4887 2004-09-03  Wim Taymans  <wim@fluendo.com>
4888
4889         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4890         (gst_fakesrc_init), (gst_fakesrc_set_clock),
4891         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4892         (gst_fakesrc_get), (gst_fakesrc_change_state):
4893         * gst/elements/gstfakesrc.h:
4894         * gst/elements/gstidentity.c: (gst_identity_class_init),
4895         (gst_identity_init), (gst_identity_chain),
4896         (gst_identity_set_property), (gst_identity_get_property),
4897         (gst_identity_change_state):
4898         * gst/elements/gstidentity.h:
4899         Added datarate properties to limit the datarate.
4900
4901 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4902
4903         * gst/autoplug/gstspider.c: (plugin_init):
4904           don't set a rank. We don't want to autoplug by inserting spiders.
4905
4906 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4907
4908         * gst/autoplug/gstspider.c: (gst_spider_class_init),
4909         (gst_spider_identity_plug):
4910           add a template for spider's sink
4911         * gst/gst.c: (gst_register_core_elements):
4912           queue's rank should be NULL, we don't want spider to add it.
4913
4914 2004-08-18  David Schleef  <ds@schleef.org>
4915
4916         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
4917         * docs/libs/Makefile.am: same
4918         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
4919         * docs/random/ds/0.9-planning: random additions
4920         * docs/random/ds/0.9-suggested-changes: same
4921         * gst/gstxml.h: remove vestigal GstXMLNs definition
4922
4923         Preferred caps: (#147789)
4924         * docs/gst/gstreamer-sections.txt: Add symbols
4925         * docs/gst/tmpl/gstcaps.sgml: Add symbols
4926         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
4927         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
4928         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
4929         (gst_caps_get_preferred), (gst_caps_set_preferred),
4930         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
4931         (gst_caps_use_preferred): Handle caps preferences
4932         * gst/gstcaps.h: Add caps preferences
4933         * gst/gstpad.c: (gst_pad_link_get_preferred),
4934         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
4935         (gst_pad_renegotiate), (gst_pad_guess_preferred),
4936         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
4937         negotiation.
4938
4939 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4940
4941         * gst/autoplug/gstspideridentity.c:
4942         (gst_spider_identity_request_new_pad):
4943         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
4944         (gst_aggregator_init):
4945         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4946         (gst_fakesink_init):
4947         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4948         (gst_fakesrc_init):
4949         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
4950         (gst_fdsink_init):
4951         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
4952         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
4953         (gst_filesink_init):
4954         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4955         (gst_filesrc_init):
4956         * gst/elements/gstidentity.c: (gst_identity_base_init),
4957         (gst_identity_init):
4958         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
4959         (gst_multifilesrc_init):
4960         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
4961         (gst_pipefilter_init):
4962         * gst/elements/gststatistics.c: (gst_statistics_base_init),
4963         (gst_statistics_init):
4964         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
4965         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
4966           s/gst_pad_new/&_from_template/
4967           register pad templates in the base_init function
4968           add static pad template definitions
4969
4970 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4971
4972         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
4973         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
4974         * testsuite/refcounting/pad.c: (main):
4975         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
4976           s/gst_pad_new/&_from_template/
4977           prepare deprecation of gst_pad_new
4978
4979 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
4980
4981         patch by: Luca Ognibene <skaboy81@virgilio.it>
4982
4983         * gst/gstcaps.c:
4984         * gst/gstelement.c:
4985         * gst/gstpad.c:
4986         * gst/gstxml.c:
4987           fix memleaks.  Fixes #150001
4988
4989 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4990
4991         * docs/random/ds/0.9-suggested-changes:
4992           add notes - mostly about pad templates
4993
4994 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
4995
4996         * win32/GStreamer.vcproj:
4997           temporary locale files are .gmo not .mo
4998
4999 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5000
5001         * configure.ac: bump nano to cvs
5002
5003 === release 0.8.5 ===
5004
5005 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5006
5007         * configure.ac:
5008           releasing 0.8.5, "Stuttgart"
5009         * NEWS:
5010         * RELEASE:
5011         * configure.ac:
5012         * docs/random/release:
5013           updates for release
5014
5015 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5016
5017         patch by: Wim Taymans (wim@fluendo.com)
5018
5019         * gst/gstbuffer.c:
5020         * gst/gstindex.h:
5021         * libs/gst/dataprotocol/dataprotocol.c:
5022           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
5023
5024 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5025
5026         * Makefile.am:
5027         * win32/MANIFEST:
5028           add win32 dir to the build.  Fixes #149981.
5029
5030 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5031
5032         * configure.ac:
5033           bump libtool versioning
5034         * gst/gststructure.c:
5035           mark function as static
5036         * po/af.po:
5037         * po/az.po:
5038         * po/ca.po:
5039         * po/cs.po:
5040         * po/en_GB.po:
5041         * po/fr.po:
5042         * po/nl.po:
5043         * po/sq.po:
5044         * po/sr.po:
5045         * po/sv.po:
5046         * po/tr.po:
5047         * po/uk.po:
5048           translations update
5049         * win32/README.txt:
5050           trademark protection
5051
5052 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5053
5054         * configure.ac:
5055           fix GST_ORIGIN
5056           set GST_PACKAGE to source, and distinguish between release and other
5057         * tools/gst-inspect.c:
5058           print out plugin an element factory is part of so we see this info
5059
5060 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5061
5062         * docs/gst/gstreamer-sections.txt:
5063         * docs/gst/tmpl/gstbuffer.sgml:
5064         * docs/gst/tmpl/gstschedulerfactory.sgml:
5065           reorder docs a little, make GstBuffer's more sensible.
5066         * gst/gstbuffer.h:
5067           API: added GST_BUFFER_FLAG_DELTA_UNIT
5068         * gst/gstscheduler.c:
5069           comment API addition
5070
5071 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5072
5073         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
5074           work with non-regular files that can be mmapped (like /dev/zero)
5075         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
5076           get rid of typefinds that require a seek when we can't seek instead
5077           of trying them over and over again
5078         * tools/gst-launch.c: (idle_func), (error_cb), (main):
5079           return non-zero failure value when the pipeline was interrupted or
5080           an error occurred
5081
5082 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5083
5084         * win32/config.h:
5085         * win32/GStreamer.vcproj:
5086           compile and install the locales
5087
5088 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5089
5090         * gst/gstvalue.c:
5091           fix a possible memory leak under Windows
5092
5093 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5094
5095         * win32/GStreamer.vcproj:
5096           fix a memory leak that occured under Windows
5097         * win32/gstreamer.def:
5098           add gst_scheduler_register
5099
5100 2004-08-11  Benjamin Otte  <otte@gnome.org>
5101
5102         * docs/gst/gstreamer-sections.txt:
5103         * gst/gstscheduler.c: (gst_scheduler_register):
5104         * gst/gstscheduler.h:
5105           API:
5106           add gst_scheduler_register shortcut similar to gst_element_register
5107         * gst/schedulers/entryscheduler.c: (plugin_init):
5108         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
5109         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
5110           use it
5111
5112 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
5113
5114         * gst/gstvalue.h:
5115           fix a memory leak that occured under Windows
5116
5117 2004-08-10  Colin Walters  <walters@redhat.com>
5118
5119         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
5120         Don't use O_EXCL to open temporary registry.  It will prevent
5121         registry creation if a temporary one already exists, which
5122         is unnecessary.
5123
5124 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5125
5126         * docs/gst/gstreamer-sections.txt:
5127         * docs/gst/tmpl/gstvalue.sgml:
5128           remove some valuable stuff from the documentation due to the use of GST_EXPORT
5129
5130 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5131
5132         * win32/gstbytestream.vcproj:
5133         * win32/gstelements.vcproj:
5134         * win32/gstgetbits.vcproj:
5135         * win32/gst-inspect.vcproj:
5136         * win32/gst-launch.vcproj:
5137         * win32/gstoptimalscheduler.vcproj:
5138         * win32/GStreamer.vcproj:
5139         * win32/gst-register.vcproj:
5140         * win32/gstspider.vcproj:
5141           update the include and lib dirs to fit standard libraries as
5142           described in the Win32 manual
5143
5144 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5145
5146         * win32/config.h:
5147         * win32/gstversion.h:
5148           enable NLS again, push the version number for the coming 0.8.5 release
5149
5150 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5151
5152         * gst/gstvalue.h:
5153           export gst_type_XXX for windows DLLs
5154
5155 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5156
5157         * docs/faq/gst-uninstalled:
5158           fix PKG_CONFIG_PATH and PYTHONPATH
5159         * gst/schedulers/Makefile.am:
5160           cleanup
5161         * libs/gst/bytestream/bytestream.c:
5162           remove newline
5163         * po/LINGUAS:
5164         * po/sq.po:
5165           adding Albanian translation (Laurent Dhima)
5166         * po/cs.po:
5167           updated
5168
5169 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5170
5171         * po/ca.po:
5172         * po/sv.po:
5173           updated translations
5174
5175 2004-08-04  Benjamin Otte  <otte@gnome.org>
5176
5177         * tests/mass_elements.c: (main):
5178           allow specifying src and sink element explicitly, so I can test
5179           videotestsrc instead of fakesrc
5180
5181 2004-08-04  Benjamin Otte  <otte@gnome.org>
5182
5183         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
5184         (gst_structure_id_empty_new), (gst_structure_empty_new),
5185         (gst_structure_copy):
5186           add gst_structure_id_empty_new_with_size to allow preallocating
5187           value array sizes. Use this in gst_structure_copy to get rid of
5188           reallocs.
5189           don't do quark=>string=>quark when copying structures
5190
5191 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
5192
5193         * docs/manual/win32.xml:
5194         * win32/README.txt:
5195           update documentation with the clean version of dependencies
5196
5197 2004-08-03  Benjamin Otte  <otte@gnome.org>
5198
5199         * gst/schedulers/entryscheduler.c:
5200         (gst_entry_scheduler_remove_element):
5201           fix for GST_DISABLE_DEBUG
5202         * tools/gst-launch.c: (print_tag):
5203           fixes for G_DISABLE_ASSERT
5204
5205 2004-08-03  Benjamin Otte  <otte@gnome.org>
5206
5207         * gst/gst.c: (gst_register_core_elements):
5208           fix for G_DISABLE_ASSERT
5209         * gst/gstinfo.c: (__gst_in_valgrind):
5210           add for GST_DISABLE_DEBUG
5211
5212 2004-08-03  Benjamin Otte  <otte@gnome.org>
5213
5214         * gst/parse/parse.l:
5215           fix for G_DISABLE_ASSERT
5216
5217 2004-08-03  Wim Taymans  <wim@fluendo.com>
5218
5219         * gst/gstbin.c: (gst_bin_get_type),
5220         (gst_bin_child_state_change_func):
5221         * gst/gstthread.c: (gst_thread_change_state):
5222         Backported some debug logging from a reverted patch
5223         Don't try to destroy the thread twice. Added some more
5224         debugging in GstThread. Unlock and signal even if we
5225         are in the thread context.
5226
5227 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5228
5229         * po/uk.po:
5230           updated translation
5231
5232 2004-07-30  David Schleef  <ds@schleef.org>
5233
5234         * gst/gstatomic_impl.h: Enable atomic code for x86_64
5235
5236 2004-07-29  David Schleef  <ds@schleef.org>
5237
5238         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
5239         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
5240
5241 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
5242
5243         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
5244         (gst_bin_add_func), (gst_bin_remove_func),
5245         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
5246         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
5247         (gst_bin_change_state_norecurse), (gst_bin_dispose),
5248         (gst_bin_sync_children_state):
5249         * gst/gstbin.h:
5250         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
5251         (gst_thread_change_state):
5252         * testsuite/states/Makefile.am:
5253           revert state change patches as agreed so we can rework them
5254           gradually
5255
5256 2004-07-29  Benjamin Otte  <otte@gnome.org>
5257
5258         * libs/gst/control/Makefile.am:
5259           link to libgstreamer (fixes Debian bug 262019, see
5260           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
5261
5262 2004-07-29  Wim Taymans  <wim@fluendo.com>
5263
5264         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
5265         (check_from_fraction_convert), (transform_test), (main):
5266         Make the test less pedantic about float roundoff errors.
5267
5268 2004-07-29  Benjamin Otte  <otte@gnome.org>
5269
5270         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
5271         (gst_filesrc_srcpad_event):
5272           make seek events to before start/after end of file not fail, but
5273           seek to start/end instead
5274         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
5275           add more output
5276
5277 2004-07-29  Benjamin Otte  <otte@gnome.org>
5278
5279         * gst/gstpad.c: (gst_pad_set_explicit_caps):
5280           check that caps are fixed
5281         * gst/gstpad.c: (gst_pad_template_new):
5282           don't try to simplify caps, costs too much time on gst_init
5283         * gst/gstplugin.c: (gst_plugin_add_feature):
5284           G_ERROR if features are added twice
5285         * gst/gsttypefind.c: (gst_type_find_register):
5286         * gst/gstelementfactory.c: (gst_element_register):
5287           don't add features twice
5288         * docs/random/ds/0.9-suggested-changes:
5289           add note about possible gst_init optimization
5290
5291 2004-07-28  David Schleef  <ds@schleef.org>
5292
5293         * testsuite/elements/Makefile.am:
5294         * testsuite/elements/struct_i386.h:
5295         * testsuite/elements/struct_size.c: (main):  A little test
5296         to keep distcheck from working if someone changes a structure
5297         size accidentally.
5298
5299 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5300
5301         * docs/libs/Makefile.am:
5302         * docs/libs/gstreamer-libs-docs.sgml:
5303         * docs/libs/gstreamer-libs-sections.txt:
5304         * docs/libs/tmpl/gstbytestream.sgml:
5305         * docs/libs/tmpl/gstcontrol.sgml:
5306         * docs/libs/tmpl/gstdataprotocol.sgml:
5307         * docs/libs/tmpl/gstgetbits.sgml:
5308         * libs/gst/bytestream/Makefile.am:
5309         * libs/gst/bytestream/bytestream.c:
5310         * libs/gst/bytestream/bytestream.h:
5311         * libs/gst/control/Makefile.am:
5312         * libs/gst/dataprotocol/Makefile.am:
5313         * libs/gst/getbits/Makefile.am:
5314         * libs/gst/getbits/getbits.h:
5315           various doc and style fixes, adding bytestream to libs docs.
5316
5317 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5318
5319         * docs/gst/gstreamer-docs.sgml:
5320         * docs/libs/Makefile.am:
5321         * docs/libs/gstreamer-libs-docs.sgml:
5322         * docs/libs/gstreamer-libs-sections.txt:
5323         * libs/gst/control/dparam.c:
5324           more doc fixes.  gst-libs docs now build the same way as gst.
5325
5326 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5327
5328         * configure.ac:
5329         * testsuite/Makefile.am:
5330         * testsuite/bins/Makefile.am:
5331         * testsuite/caps/Makefile.am:
5332         * testsuite/cleanup/Makefile.am:
5333         * testsuite/clock/Makefile.am:
5334         * testsuite/debug/Makefile.am:
5335         * testsuite/dlopen/Makefile.am:
5336         * testsuite/dynparams/Makefile.am:
5337         * testsuite/elements/.cvsignore:
5338         * testsuite/elements/Makefile.am:
5339         * testsuite/enumcaps/Makefile.am:
5340         * testsuite/enumcaps/enumcaps.c:
5341         * testsuite/ghostpads/Makefile.am:
5342         * testsuite/indexers/Makefile.am:
5343         * testsuite/negotiation/Makefile.am:
5344         * testsuite/parse/Makefile.am:
5345         * testsuite/plugin/Makefile.am:
5346         * testsuite/refcounting/Makefile.am:
5347         * testsuite/schedulers/.cvsignore:
5348         * testsuite/states/Makefile.am:
5349         * testsuite/tags/Makefile.am:
5350         * testsuite/threads/Makefile.am:
5351           fold enumcaps into caps dir
5352           clean up Makefile.am's for testsuite
5353
5354 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5355
5356         * docs/gst/Makefile.am:
5357         * docs/libs/Makefile.am:
5358           clean up docs build.  Fixes needless rebuilding of template files.
5359
5360 2004-07-28  Wim Taymans  <wim@fluendo.com>
5361
5362         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
5363         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
5364         Make sure that a bin state change tries to keep the children
5365         in sync. 
5366         Added debug logging to the thread.
5367
5368 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
5369
5370         * win32/GStreamer.vcproj:
5371         * win32/gstreamer.def:
5372           more exports for the plugins
5373
5374 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
5375
5376         * win32/gstgetbits.vcproj:
5377         * win32/gstgetbits.def:
5378         * win32/msvc71.sln:
5379           add support for the getbits plugin
5380
5381 2004-07-27  Wim Taymans  <wim@fluendo.com>
5382
5383         * gst/gstvalue.c: (gst_value_transform_double_fraction),
5384         (gst_value_transform_fraction_double), (_gst_value_initialize):
5385         * testsuite/caps/Makefile.am:
5386         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
5387         (check_from_fraction_convert), (transform_test), (main):
5388         Added transform functions between double and fraction.
5389         Added testcase to verify transforms
5390
5391 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5392
5393         * win32/GStreamer.vcproj:
5394           rename GStreamer-0.8.lib to libgstreamer.lib
5395
5396 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5397
5398         * win32/gstelements.vcproj:
5399         * win32/gstoptimalscheduler.vcproj:
5400           fixes for the Release build
5401
5402 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5403
5404         * win32/config.h:
5405           update the version number
5406
5407 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5408
5409         * win32/GStreamer.vcproj:
5410           add gstinterface to the build
5411
5412 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5413
5414         * win32/gstreamer.def:
5415           add many definitions needed by plugins,
5416           GST_CAT_DEFAULT only available in the Debug build ?
5417
5418 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5419
5420         * gst/gstelement.c: (gst_element_set_eos_recursive):
5421           various whitespace fixes.
5422           doc fix, fixes #148497
5423
5424 2004-07-25  Benjamin Otte  <otte@gnome.org>
5425
5426         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
5427           don't delay links on the sink elements, it causes unnegotiated
5428           links.
5429         * gst/elements/gsttypefindelement.c:
5430         (gst_type_find_element_base_init):
5431           add our padtemplates, we indeed do have some.
5432         * gst/elements/gsttypefindelement.c:
5433         (gst_type_find_element_handle_event),
5434         (gst_type_find_element_chain):
5435           don't push data when typefinding failed.
5436         * gst/gstpad.c: (gst_pad_link_fixate):
5437           check that no fixate function returns empty caps.
5438         * gst/gstpad.c: (gst_pad_push):
5439           check that the link is negotiated before data gets pushed.
5440         * tools/gst-register.c: (main):
5441           don't assert (fixes #148283)
5442
5443 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5444
5445         * docs/gst/gstreamer-sections.txt:
5446         * docs/gst/tmpl/gstconfig.sgml:
5447           add GST_PLUGIN_EXPORT definition
5448
5449 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5450
5451         * gst/gstplugin.h:
5452         * gst/gstconfig.h.in:
5453         * win32/gstconfig.h:
5454         * win32/gstelements.def:
5455         * win32/gstelements.vcproj:
5456         * win32/gstoptimalscheduler.def:
5457         * win32/gstoptimalscheduler.vcproj:
5458         * win32/gstspider.def:
5459         * win32/gstspider.vcproj:
5460           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
5461
5462 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5463
5464         * docs/gst/gstreamer-sections.txt:
5465           remove GST_CAT_DEFAULT because the type has changed
5466
5467 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5468
5469         * win32/gstbytestream.vcproj:
5470         * win32/gstelements.vcproj:
5471         * win32/gst-inspect.vcproj:
5472         * win32/gst-launch.vcproj:
5473         * win32/gstoptimalscheduler.vcproj:
5474         * win32/GStreamer.vcproj:
5475         * win32/gst-register.vcproj:
5476         * win32/gstspider.vcproj:
5477         * win32/msvc71.sln:
5478           Copy the files where needed after building, The testsuite will be
5479           built separately
5480
5481 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5482
5483         * win32/config.h:
5484         * win32/README.txt:
5485         * docs/manual/win32.xml:
5486         Fixed the plugin and GStreamer location
5487
5488 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5489
5490         * win32/gstreamer.def:
5491         More exports for the plugins
5492
5493 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5494
5495         * gst/gstinfo.h:
5496         Marc was right, we need to export literally GST_CAT_DEFAULT
5497
5498 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5499
5500         * win32/config.h:
5501         NLS crashes in gettext, disabled until this is solved
5502
5503 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5504
5505         * win32/gst-inspect.vcproj:
5506         * win32/gst-launch.vcproj:
5507         Should use NLS when available
5508
5509 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5510
5511         * gst/registries/gstxmlregistry.c:
5512         removing the file doesn't seem to be a good idea on Linux
5513
5514 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5515
5516         * gst/registries/gstxmlregistry.c:
5517         Remove the registry before renaming the tempfile (needed for Windows)
5518
5519 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5520
5521         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
5522         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
5523         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
5524         * gst/elements/gstmultifilesrc.h:
5525         Added newmedia property so it generates newmedia events between each
5526         file when property is set, as well as fixed eos handling
5527
5528 2004-07-22  David Schleef  <ds@schleef.org>
5529
5530         * gst/gststructure.c: (gst_structure_id_empty_new),
5531         (gst_structure_empty_new):  Set type field correctly.
5532         * gst/gststructure.h: Check type field correctly.
5533         * testsuite/caps/Makefile.am:
5534         * testsuite/caps/structure.c: (test1), (main): Add a very small
5535         test for structures.
5536
5537 2004-07-22  David Schleef  <ds@schleef.org>
5538
5539         * docs/random/ds/0.9-suggested-changes: more comments
5540         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
5541
5542 2004-07-22  Benjamin Otte  <otte@gnome.org>
5543
5544         * gst/gstelementfactory.c: (gst_element_register):
5545           set the factory in the class struct, so gst_element_get_factory
5546           actually works
5547         * gst/parse/grammar.y:
5548           set element to playing when it gets unlocked as we can't rely on the
5549           bin state - all elements in the bin state might still be locked in
5550           NULL)
5551
5552 2004-07-22  Benjamin Otte  <otte@gnome.org>
5553
5554         * gst/gstelement.c: (gst_element_set_state_func):
5555           make this a static function
5556
5557 2004-07-22  Wim Taymans  <wim@fluendo.com>
5558
5559         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
5560         (gst_opt_scheduler_pad_link):
5561         fix 147894-2 and the group_link problem.
5562
5563 2004-07-22  Wim Taymans  <wim@fluendo.com>
5564
5565         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
5566         (handoff_identity), (main):
5567         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5568         (handoff_identity), (main):
5569         * testsuite/schedulers/Makefile.am:
5570         * testsuite/schedulers/group_link.c: (main):
5571         Show bug in scheduler when linking chain and loop based element 
5572         where the chain based element was not yet in a group.
5573
5574 2004-07-21  Benjamin Otte  <otte@gnome.org>
5575
5576         * gst/.cvsignore:
5577         * gst/autoplug/.cvsignore:
5578         * gst/elements/.cvsignore:
5579         * gst/indexers/.cvsignore:
5580         * libs/gst/bytestream/.cvsignore:
5581         * libs/gst/control/.cvsignore:
5582         * libs/gst/getbits/.cvsignore:
5583         * testsuite/states/.cvsignore:
5584         * testsuite/threads/.cvsignore:
5585           keep this up to date, since I seem to be the only one who cares
5586           about not missing files on commits (editor's note: no you don't,
5587           but feel free to change them at the time you add stuff instead
5588           of later on)
5589
5590 2004-07-21  Benjamin Otte  <otte@gnome.org>
5591
5592         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
5593         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
5594         (gst_bin_child_state_change_func), (set_kid_state_func),
5595         (gst_bin_set_state), (gst_bin_change_state_norecurse):
5596           make state changes work correctly and reentrant (so removing
5597           elements from bins during state changes of bins doesn't cause
5598           segfaults or even wrong states)
5599           add debugging category and debugging output to print children states
5600         * gst/gstbin.c: (gst_bin_dispose): 
5601           add some assertion checks
5602         * gst/gstbin.h:
5603         * gst/gstbin.c: (gst_bin_sync_children_state):
5604           deprecate this function - it just does gst_bin_set_state (bin,
5605           GST_STATE (bin)) 
5606         * testsuite/threads/queue.c: (main):
5607           don't use gst_bin_sync_children_state anymore
5608         * testsuite/states/Makefile.am:
5609         * testsuite/states/bin.c:
5610           test that the state changes of bins work as expected
5611         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
5612           some adjustments to change states correctly, too
5613         * gst/gstthread.c: (gst_thread_change_state):
5614           don't enable/disable "threadsafe" properties, they're unused and
5615           cause random segfaults
5616         * testsuite/threads/Makefile.am:
5617           the queue check randomly passes now, ignore it
5618
5619 2004-07-21  Benjamin Otte  <otte@gnome.org>
5620
5621         * gst/gstpad.c:
5622           check if data is NULL before outputting debug info. (fixes #145100)
5623
5624 2004-07-21  Benjamin Otte  <otte@gnome.org>
5625
5626         * gst/schedulers/entryscheduler.c:
5627         (gst_entry_scheduler_loop_wrapper),
5628         (gst_entry_scheduler_chain_wrapper),
5629         (gst_entry_scheduler_get_wrapper):
5630           reset the state when the cothread starts, so we don't get assertion
5631           failures on restarting of cothreads
5632
5633 2004-07-20  Benjamin Otte  <otte@gnome.org>
5634
5635         * gst/gstelement.c: (gst_element_link_pads_filtered):
5636           use correct sinkpad, if only sinkpad is specified, but not srcpad
5637           (fixes #147889)
5638         * gst/gstelement.c: (gst_element_set_state_func),
5639         (gst_element_change_state): ref/unref the element, signal handlers
5640         could get rid of the element otherwise
5641
5642 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
5643
5644         * docs/random/ds/0.9-suggested-changes:
5645           Make note about renaming fixed-list to array.
5646         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
5647         (_gst_value_initialize):
5648           Add array intersections.
5649         * testsuite/caps/intersect2.c: (main):
5650           Add test for array intersections.
5651
5652 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5653
5654         * configure.ac: back to cvs
5655
5656 === release 0.8.4 ===
5657
5658 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5659
5660         * configure.ac:
5661           releasing 0.8.4, "Paella"
5662           bump libtool versioning
5663
5664 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5665
5666         * po/LINGUAS:
5667         * po/ca.po:
5668           adding Catalan translation (Jordi Mallach)
5669
5670 2004-07-20  Wim Taymans  <wim@fluendo.com>
5671
5672         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
5673         (handoff_identity), (main):
5674         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5675         (handoff_identity), (main):
5676         * testsuite/schedulers/Makefile.am:
5677         Added failing testcase for variant of #147894
5678
5679 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5680
5681         patch by: David Moore
5682
5683         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
5684         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
5685         (group_migrate_connected):
5686         * testsuite/schedulers/Makefile.am:
5687           fix for #142813 (Deadlock in optimal scheduler)
5688
5689 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5690
5691         patch by: Wim Taymans
5692
5693         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
5694         (gst_opt_scheduler_schedule_run_queue),
5695         (gst_opt_scheduler_get_wrapper), (get_group),
5696         (group_migrate_connected):
5697         * testsuite/schedulers/Makefile.am:
5698           fix for #147819 (Add some checks in the opt scheduler)
5699
5700 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5701
5702         patch by: Benjamin Otte
5703
5704         * gst/gstelementfactory.c: (__gst_element_details_set):
5705           fix for #147929: running gst-register in non-utf8 locale can cause
5706           invalid registry
5707
5708 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5709
5710         patch by: Wim Taymans
5711
5712         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
5713         (group_has_element), (element_get_reachables_func),
5714         (group_migrate_connected):
5715           fix for #147894 (opt scheduler decoupled elements mismanagement)
5716         * testsuite/schedulers/Makefile.am:
5717           testsuite app now passes
5718
5719 2004-07-19  Wim Taymans  <wim@fluendo.com>
5720
5721         * testsuite/schedulers/147819.c: (handoff_identity1),
5722         (handoff_identity2), (main):
5723         * testsuite/schedulers/Makefile.am:
5724         Added testcase for bug 147819
5725
5726 2004-07-19  Wim Taymans  <wim@fluendo.com>
5727
5728         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5729         (handoff_identity), (main):
5730         * testsuite/schedulers/Makefile.am:
5731         Added testcase for bug 147894
5732
5733 2004-07-16  Wim Taymans  <wim@fluendo.com>
5734
5735         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
5736         * testsuite/schedulers/142183.c: (handoff_identity), (main):
5737         * testsuite/schedulers/Makefile.am:
5738         Added testsuite for bug 142183 in its two incarnations. Refcount
5739         is not increased for scheduled elements and threadsafe properties
5740         mutexes are not properly unlocked.
5741
5742 2004-07-16  Wim Taymans  <wim@fluendo.com>
5743
5744         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
5745         (create_chain), (destroy_chain), (create_group), (destroy_group),
5746         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
5747         (group_dec_link), (gst_opt_scheduler_pad_link),
5748         (group_inc_links_for_element), (group_migrate_connected):
5749         Call group_inc_link with the proper src->sink ordering -- 
5750         break this, and we break sort_chain. patch from wingo for bug
5751         147713.
5752         Partially revert patch 1.89. When adding a loop based element to 
5753         the scheduler, the links to other groups are automatically followed
5754         and incremented. This should not happen because the bin will call
5755         pad_link explicitly for those connection, resulting in them counted 
5756         twice. Results in assertion failure on pipeline cleanup.
5757
5758 2004-07-16  Wim Taymans  <wim@fluendo.com>
5759
5760         * testsuite/schedulers/143777-2.c: (main):
5761         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
5762         (main):
5763         * testsuite/schedulers/Makefile.am:
5764         Added cleanup code to testcase 143777-2.
5765         Added testcase to show bug 147713, does not really show the
5766         deadlock as I can't figure out how to trigger it, but it does
5767         demonstrate bad ordering in the scheduler.
5768
5769 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5770
5771         * gst/gstvalue.c: (gst_value_deserialize_fraction):
5772           change strndup to g_strndup.  Fixes #147707
5773
5774 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5775
5776         * po/af.po:
5777         * po/az.po:
5778         * po/cs.po:
5779         * po/en_GB.po:
5780         * po/fr.po:
5781         * po/nl.po:
5782         * po/sr.po:
5783         * po/sv.po:
5784         * po/tr.po:
5785         * po/uk.po:
5786           updated translations
5787
5788 2004-07-16  Benjamin Otte  <otte@gnome.org>
5789
5790         * gst/gstvalue.c: (gst_greatest_common_divisor):
5791           use ints and return ints, fractions only use ints, too, so this
5792           avoids accidently casting multiplications to unsigned
5793         (gst_value_lcopy_fraction): it's ints, not uint32
5794         (gst_value_set_fraction): disallow minint, multiplying and negation
5795           are broken with it
5796         (gst_value_fraction_multiply): fix to make large numbers work and get
5797         rid of the assumption that the multiplication of two ints fits an
5798         int64 - dunno if that's true for all systems
5799         * testsuite/caps/Makefile.am:
5800         * testsuite/caps/fraction-multiply-and-zero.c:
5801         (check_multiplication), (check_equal), (zero_test), (main):
5802           add tests for all the stuff above
5803         * testsuite/caps/value_compare.c: (test1):
5804           fix comment
5805         * tests/.cvsignore:
5806         * testsuite/caps/.cvsignore:
5807         * testsuite/debug/.cvsignore:
5808         * testsuite/dlopen/.cvsignore:
5809         * testsuite/states/.cvsignore:
5810           get up to date
5811
5812 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5813
5814         * docs/manual/bins-api.xml:
5815         * docs/manual/factories.xml:
5816         * docs/manual/helloworld.xml:
5817         * docs/manual/links-api.xml: 
5818           fixes for out of date info, incorrect info and grammar
5819
5820 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5821
5822         * docs/manual/pads.xml:
5823         * docs/manual/pads-api.xml: grammar fix
5824
5825 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5826
5827         * docs/manual/pads-api.xml: typo + grammar fix
5828
5829 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5830
5831         * docs/gst/gstreamer-sections.txt:
5832           add new symbols
5833         * docs/gst/tmpl/gstelement.sgml:
5834         * docs/gst/tmpl/gstpad.sgml:
5835         * docs/gst/tmpl/gsttypes.sgml:
5836         * docs/gst/tmpl/gstvalue.sgml:
5837           update docs
5838         * gst/gststructure.c: (gst_structure_set_valist),
5839         (gst_structure_from_abbr), (gst_structure_to_abbr):
5840         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
5841         (gst_greatest_common_divisor), (gst_value_init_fraction),
5842         (gst_value_copy_fraction), (gst_value_collect_fraction),
5843         (gst_value_lcopy_fraction), (gst_value_set_fraction),
5844         (gst_value_get_fraction_numerator),
5845         (gst_value_get_fraction_denominator),
5846         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
5847         (gst_value_deserialize_fraction),
5848         (gst_value_transform_fraction_string),
5849         (gst_value_transform_string_fraction),
5850         (gst_value_compare_fraction), (_gst_value_initialize):
5851         * gst/gstvalue.h:
5852           adding GstFraction GValue type, get/set, and multiply
5853         * testsuite/caps/Makefile.am:
5854         * testsuite/caps/fraction.c: (test), (main):
5855         * testsuite/caps/string-conversions.c: (main):
5856         * testsuite/caps/value_compare.c: (test1), (main):
5857           add regression tests for GstFraction
5858
5859 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5860         
5861         * docs/manual/init-api.xml: Grammar fix
5862
5863 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5864
5865         * docs/manual/states.xml: Fix inconsistent information
5866
5867 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5868
5869         * gst/gstelement.c: (gst_element_set_state):
5870         * gst/gstpad.c: (gst_pad_try_set_caps):
5871         * gst/gststructure.c:
5872         * gst/gstthread.c: (gst_thread_child_state_change):
5873         * gst/gstvalue.c: (gst_value_compare_double):
5874         * gst/gstvalue.h:
5875         * testsuite/parse/parse1.c: (main):
5876           debugging additions and style cleanups
5877
5878 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5879
5880         * docs/manual/states.xml: Grammar fix
5881
5882 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5883
5884         * docs/manual/pads.xml: Grammar fix
5885
5886 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5887
5888         * docs/manual/elements.xml: Fixed image reference
5889
5890 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5891
5892         * docs/manual/goals.xml: Grammar fix
5893
5894 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5895
5896         * docs/manual/motivation.xml:
5897         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
5898
5899 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5900
5901         * docs/manual/motivation.xml: Fix spelling
5902
5903 2004-07-15  Benjamin Otte  <otte@gnome.org>
5904
5905         * gst/gstelement.h: 
5906           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
5907           strings.
5908         * gst/gstelement.c (gst_element_class_init):
5909           GError's are boxed, not objects
5910         * gst/gstmarshal.list:
5911           update list for the fixed error signal
5912
5913 2004-07-14  Andy Wingo  <wingo@pobox.com>
5914
5915         * gst/gsttag.c: Add a tag merge func for pointers. The header was
5916         there all along, but the function wasn't. (guile-gstreamer's build
5917         system uses the address of the function -- I wasn't actually
5918         trying to use this.)
5919
5920 2004-07-14  Andy Wingo  <wingo@pobox.com>
5921
5922         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
5923         as gst_pad_proxy_pad_link) just link to every other pad when they
5924         are called. In the case where the graph has cycles, this will mean
5925         that a call to try_set_caps will recurse. Allow this recursion
5926         and return OK, while we wait for the first try_set_caps to give a
5927         proper return value.
5928         (gst_pad_link_call_link_functions): Since this function is the
5929         only one to set the NEGOTIATING flag on a pad, if the flag is set
5930         it means that the link functions have indirectly recursed. If this
5931         happens, error out to avoid infinite recursion and an eventual
5932         SEGV.
5933         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
5934         (gst_pad_proxy_getcaps): Intersect the result with the template
5935         caps to ensure that the return value is valid.
5936
5937 2004-07-14  Andy Wingo  <wingo@pobox.com>
5938
5939         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
5940         one refcount, the calling function is the owner of the buffer.
5941
5942 2004-07-14  Wim Taymans  <wim@fluendo.com>
5943
5944         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5945         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5946         Fix stupid warning when an element is to be migrated but
5947         is already migrated.
5948
5949 2004-07-14  Wim Taymans  <wim@fluendo.com>
5950
5951         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5952         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5953         Make sure that a single non-loop-based element does not 
5954         end up in a group. This fixes the testsuite again.
5955
5956 2004-07-14  Wim Taymans  <wim@fluendo.com>
5957
5958         * gst/schedulers/gstoptimalscheduler.c: (create_group),
5959         (add_to_group), (merge_groups), (schedule_group),
5960         (gst_opt_scheduler_get_wrapper), (group_elements),
5961         (group_dec_link), (gst_opt_scheduler_pad_link),
5962         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
5963         (gst_opt_scheduler_iterate):
5964         move isolated groups to a new chain.
5965         Emit a warning instead of segfaulting in some error cases.
5966         Fix a bug where the link count between groups was not calculated 
5967         correctly. Fixes #144510.
5968
5969 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
5970         * gst/elements/gstfilesrc.c:
5971           Binary files support under Windows now OK
5972       
5973 2004-07-13  Benjamin Otte  <otte@gnome.org>
5974
5975           compatibility fixes for Solaris 8/gcc 2.95
5976         * configure.ac:
5977           include libintl libs in LDFLAGS
5978         * gstvalue.c (gst_value_deserialize_buffer):
5979           cast isxdigit stuff to int to silence compiler warning
5980
5981 2004-07-12  Benjamin Otte  <otte@gnome.org>
5982
5983         * gst/gsttypes.h:
5984           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
5985           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
5986           just causes support madness
5987         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
5988           make it work without this
5989         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
5990         (gst_file_index_commit):
5991           glib IO channels don't want binary mode
5992         * testsuite/bytestream/filepadsink.c: (main):
5993         * testsuite/bytestream/test1.c: (read_param_file):
5994           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
5995
5996 2004-07-12  Benjamin Otte  <otte@gnome.org>
5997
5998         * gst/gstelement.c: (gst_element_class_init),
5999         (gst_element_set_state), (gst_element_set_state_func):
6000           virutalize gst_element_set_state, use set_state member in class
6001           struct that was already added in 0.7 for this.
6002         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
6003         (gst_bin_change_state):
6004           make gst_bin_foreach works similar to other foreach functions, plug
6005           memleaks in it. Make functions using it work with the new approach.
6006           Document gst_bin_foreach, so it can be exported if we want to
6007         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
6008           use virtualized set_state to make set_state on bins set the state of
6009           all its children.
6010
6011 2004-07-12  Benjamin Otte  <otte@gnome.org>
6012
6013         * configure.ac:
6014           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
6015           http://bugs.gentoo.org/show_bug.cgi?id=53967)
6016         * gst/gstpad.c: (gst_pad_alloc_buffer):
6017           allow buffer_alloc functions to return NULL and allocate a normal
6018           buffer in that case
6019
6020 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
6021         * gst/elements/gstfilesink.c:
6022         * gst/elements/gstfilesrc.c:
6023         * gst/indexers/gstfileindex.c:
6024         * gst/gsttypes.h:
6025         * testsuite/bytestream/filepadsink.c:
6026         * testsuite/bytestream/test1.c:
6027           Handle binary files under Windows
6028
6029 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
6030         * docs/manual/win32.xml:
6031         * win32/config.h:
6032         * win32/gst-register.vcproj:
6033         * win32/gstreamer.def:
6034           Update to another gettext public build
6035
6036 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
6037         * gst/gstplugin.c:
6038           Fix an impossible C syntax
6039         * win32/config.h:
6040           Disable i18n under Windows for the moment
6041         * win32/gst-register.vcproj:
6042           Use this configuration
6043
6044 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
6045         * docs/manual/quotes.xml:
6046           Keep the quotes file alive
6047         * docs/random/ds/0.9-suggested-changes:
6048           Add the suggestion of including a 'rowstride' as part of video
6049           format caps
6050
6051 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6052
6053         * gst/gstelement.c: (gst_element_set_state),
6054         (gst_element_change_state):
6055           d'oh.  Set PENDING state correctly before forcing bin to change.
6056         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6057         (gst_structure_parse_fixed_list):
6058         * gst/schedulers/gstoptimalscheduler.c:
6059         (gst_opt_scheduler_state_transition):
6060         * testsuite/states/parent.c: (main):
6061           remove comment now that it's fixed.
6062
6063 2004-07-11  Benjamin Otte  <otte@gnome.org>
6064
6065         * gst/gstclock.h:
6066           GST_SECOND shouldn't cause a conversion to unsigned.
6067         * testsuite/clock/.cvsignore:
6068         * testsuite/clock/Makefile.am:
6069         * testsuite/clock/signedness.c: (main):
6070           make sure it never will again
6071
6072 2004-07-11  Andy Wingo  <wingo@pobox.com>
6073
6074         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
6075         whose state is higher than the bin state, raise the bin state to
6076         ensure that bin state := highest child state.
6077         
6078 2004-07-11  Andy Wingo  <wingo@pobox.com>
6079
6080         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
6081         procedure on the children of a bin. Assumes that the procedure can
6082         change the set of children.
6083         (set_kid_state_func): New static function.
6084         (gst_bin_change_state): Use gst_bin_foreach to call
6085         set_kid_state_func. Fixes a bug: if a child had a state-change
6086         handler that removes it from the bin, there would be a segfault.
6087         Hopefully it should also work in the case where the state-change
6088         handler on one child adds or removes other children. In any case,
6089         fixes should go to gst_bin_foreach.
6090
6091 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6092
6093         * gst/gstelement.c: (gst_element_set_state):
6094           compatibility fix for latest plugins release.  Change loop back
6095           to while {}
6096
6097 2004-07-09  Wim Taymans  <wim@fluendo.com>
6098
6099         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
6100         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
6101         (gst_thread_main_loop):
6102         Since remove is virtual in GstBin we must not assume the 
6103         elements GList to have anothing useful.
6104         Add some more logging to GstThread and be a bit more paranoid
6105         when resetting the scheduler.
6106         Set the state of the bin to NULL before removing the children.
6107
6108 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6109
6110         * testsuite/threads/Makefile.am:
6111         * testsuite/threads/threadg.c:
6112           added test to check if problem when removing all elements from a
6113           GstThread before setting GstThread state to NULL
6114
6115 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6116
6117         * docs/gst/tmpl/gstelement.sgml:
6118         * docs/gst/tmpl/gsttypes.sgml:
6119         * gst/gstbin.c: (gst_bin_change_state):
6120         * gst/gstelement.c: (gst_element_set_state),
6121         (gst_element_change_state):
6122           rework so that for bins we try to set the state on all children
6123           as well even if the bin is in the correct state already.
6124           change while to do so at least one iteration is done.
6125           For regular elements, we fall back to the previous behaviour for
6126           now since we first need a new plugins release.
6127         * testsuite/states/parent.c: (main):
6128           test for this case
6129           Fixes #123774
6130
6131 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6132
6133         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
6134         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
6135         (gst_queue_release_locks), (gst_queue_change_state),
6136         (gst_queue_set_property):
6137           add proper lock debugging.  Change dispose to finalize, since
6138           we're freeing mutexes and other stuff which should happen only once.
6139
6140 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6141
6142         * docs/gst/tmpl/gstelement.sgml:
6143         * docs/gst/tmpl/gstplugin.sgml:
6144         * docs/gst/tmpl/gsttypes.sgml:
6145         * docs/pwg/building-state.xml:
6146         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
6147         * gst/gstelement.c: (gst_element_change_state):
6148         * gst/gstthread.c: (gst_thread_change_state):
6149           catch wrong state changes in element base class.
6150
6151 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6152
6153         * gst/gstinfo.h:
6154           clean up layout a little.
6155
6156 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6157
6158         * configure.ac:
6159         * testsuite/Makefile.am:
6160         * testsuite/states/Makefile.am:
6161         * testsuite/states/parent.c: (main):
6162           re-enable states testsuite dir.  Add test for state changes and
6163           parent behaviour
6164
6165 2004-07-09  Wim Taymans  <wim@fluendo.com>
6166
6167         * gst/schedulers/gstoptimalscheduler.c:
6168         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
6169         (element_get_reachables_func), (element_get_reachables),
6170         (debug_element), (rechain_group), (group_migrate_connected),
6171         (gst_opt_scheduler_pad_unlink):
6172         Do not try to migrate decoupled elements to a new group since
6173         they are not added to groups.
6174
6175 2004-07-08  Benjamin Otte  <otte@gnome.org>
6176
6177         * gst/gstelement.c: (gst_element_error_func):
6178           make reentrant (= allow removing elements in error handler)
6179
6180 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6181
6182         * gst/gstpad.c: (gst_pad_event_default_dispatch),
6183         (gst_pad_send_event), (gst_pad_call_chain_function):
6184           events sent to elements below PAUSED cannot be handled, so
6185           don't try to
6186
6187 2004-07-08  Wim Taymans  <wim@fluendo.com>
6188
6189         * gst/schedulers/gstoptimalscheduler.c:
6190         (chain_recursively_migrate_group), (create_group),
6191         (schedule_group), (gst_opt_scheduler_pad_link),
6192         (group_elements_set_visited), (element_get_reachables_func),
6193         (element_get_reachables), (group_can_reach_group), (debug_element),
6194         (rechain_group), (group_migrate_connected),
6195         (gst_opt_scheduler_pad_unlink):
6196         * testsuite/schedulers/Makefile.am:
6197         Implemented group splitting and rechaining.
6198         Fixes 143777 and 143777-2 in the testsuite.
6199
6200 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6201
6202         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
6203           extra debugging
6204         * gst/gstevent.h:
6205         * gst/gstinfo.c: (gst_debug_log_default):
6206           print time nicely.  add thread pointer until someone figures out
6207           a completely portable way of getting at thread id's.
6208         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
6209         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
6210         (gst_pad_call_chain_function):
6211           extra debugging
6212         * gst/schedulers/gstoptimalscheduler.c:
6213         (get_group_schedule_function), (loop_group_schedule_function),
6214         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
6215         (pad_clear_queued), (gst_opt_scheduler_iterate):
6216           rename BUFPEN and friends to DATAPEN since that's what they are.
6217
6218 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6219
6220         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
6221         * gst/gstbuffer.h:
6222         * gst/gstpad.c:
6223           cleanups and debugging
6224
6225 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6226
6227         * configure.ac:
6228         * gst/gstvalue.c: (gst_value_compare_enum),
6229         (gst_value_serialize_enum), (gst_value_deserialize_enum),
6230         (gst_value_can_compare), (gst_value_compare):
6231         * testsuite/Makefile.am:
6232         * testsuite/enumcaps/Makefile.am:
6233         * testsuite/enumcaps/enumcaps.c:
6234           Fix enum serialization, deserialization, comparison in caps, add
6235           a test to ensure that this continues working in the future.
6236
6237 2004-07-06  David Schleef  <ds@schleef.org>
6238
6239         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
6240         Fix memleak.
6241
6242 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6243
6244         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
6245         * gst/gstplugin.h:
6246         * gst/registries/gstxmlregistry.c:
6247         (plugin_times_older_than_recurse), (plugin_times_older_than),
6248         (gst_xml_registry_parse_padtemplate):
6249           only rebuild registry when actual plugins have a newer time than
6250           the registry.  Fixes #145520
6251
6252 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6253
6254         * docs/manual/manual.xml:
6255         * docs/manual/win32.xml:
6256           add chapter on win32 building.  fixes #142422
6257
6258 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6259
6260         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
6261
6262         * gst/autoplug/gstspider.c: (gst_spider_init),
6263         (gst_spider_dispose):
6264           fix spider memleaks.  fixes #137863
6265
6266 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6267
6268         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
6269
6270         * gst/schedulers/gstoptimalscheduler.c:
6271         (gst_opt_scheduler_pad_unlink):
6272           fix SIGBUS error, fixes #145338
6273
6274 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6275
6276         * gst/gstobject.c: (gst_object_replace):
6277         * gst/gstscheduler.c: (gst_scheduler_get_clock):
6278         * gst/gstsystemclock.c: (gst_system_clock_obtain):
6279           clean up clock lifecycle.  Fixes #109831
6280
6281 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6282
6283         * po/LINGUAS:
6284         * po/cs.po:
6285           added Czech translation (Miloslav Trmac)
6286
6287 2004-07-04  David Schleef  <ds@schleef.org>
6288
6289         * tools/Makefile.am:
6290         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
6291
6292 2004-07-04  David Schleef  <ds@schleef.org>
6293
6294         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
6295
6296 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
6297
6298         * gst/gstbin.c: (gst_bin_restore_thyself):
6299           chain to parent restore so the bins get restored correctly
6300           in the editor
6301
6302 2004-07-03  David Schleef  <ds@schleef.org>
6303
6304         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
6305         Actually do something in these functions, like before the big
6306         caps change.  (bug #145137)
6307
6308 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6309
6310         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
6311         (gst_element_get_compatible_pad_filtered):
6312         * gst/gstthread.c: (gst_thread_main_loop):
6313           more debugging
6314
6315 2004-07-02  David Schleef  <ds@schleef.org>
6316
6317         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
6318         * gst/gstobject.h:
6319         * gst/gstparse.h:
6320         * gst/gsttrace.h:
6321         * gst/gstxml.h:
6322
6323 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6324
6325         * gst/gstpad.c: (gst_pad_check_schedulers),
6326         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
6327         (gst_pad_link_prepare):
6328           revert until testsuite is fixed
6329
6330 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6331
6332         * testsuite/Makefile.am:
6333         * testsuite/caps/filtercaps.c: (main):
6334         * testsuite/clock/clock1.c: (main):
6335         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
6336           fix some more tests
6337
6338 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6339
6340         * testsuite/cleanup/cleanup1.c: (create_pipeline):
6341         * testsuite/cleanup/cleanup2.c: (create_pipeline):
6342         * testsuite/cleanup/cleanup4.c: (main):
6343           fix testsuite
6344
6345 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6346
6347         * libs/gst/control/control.c:
6348         * libs/gst/control/dparam.c:
6349         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
6350         * libs/gst/control/dparammanager.c:
6351         * libs/gst/control/dparammanager.h:
6352         * testsuite/dynparams/Makefile.am:
6353         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
6354         (gst_dptest_change_state), (gst_dptest_chain), (main):
6355           fix testcase for dparams
6356           add debugging category
6357
6358 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6359
6360         * testsuite/Rules:
6361           change path
6362
6363 2004-07-02  Benjamin Otte  <otte@gnome.org>
6364
6365         * tests/.cvsignore:
6366         * tests/Makefile.am:
6367         * tests/mass_elements.c: (gst_get_current_time), (main):
6368           add simple benchmark to test various speeds of fakesrc ! identity !
6369           identity ! ... ! fakesink.
6370           Usage: mass_elements [num_identities] [num_buffers]
6371           If not specified they default to 1000.
6372
6373 2004-07-02  Benjamin Otte  <otte@gnome.org>
6374
6375         * gst/gstpad.c: (gst_pad_check_schedulers),
6376         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
6377         (gst_pad_link_prepare):
6378           check that pads that get linked belong to the same manager. The old
6379           code allowed linking elements before putting them into bins, so it
6380           worked to link them and then put them in different threads, which
6381           lead to weird behaviour.
6382           Since this effectively disallows linking elements before putting
6383           them in a bin, some applications might not work after this and error
6384           out. If these applications are too critical, we might need to revert
6385           that patch. Please test this before the next release...
6386
6387 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6388
6389         * gst/gstpad.c: (gst_pad_get_caps):
6390           throw an error if the getcaps function does not return a subset of
6391           the template caps.
6392         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
6393           make disconts without position info an error in debugging
6394         * tests/spidey_bench.c: (handoff), (main):
6395           don't count first try when averaging
6396
6397 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6398
6399         * gst/gstplugin.c: (gst_plugin_load_file):
6400           figure out problem with dynamic test
6401
6402 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6403
6404         * docs/gst/Makefile.am:
6405           fix docs build
6406
6407 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6408
6409         * po/POTFILES.in:
6410         * po/af.po:
6411         * po/az.po:
6412         * po/en_GB.po:
6413         * po/fr.po:
6414         * po/nl.po:
6415         * po/sr.po:
6416         * po/sv.po:
6417         * po/tr.po:
6418         * po/uk.po:
6419         * tools/gst-register.c: (plugin_added_func), (main):
6420           i18n-ize -register, fix plural
6421
6422 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6423
6424         * gst/elements/gstidentity.c: (gst_identity_class_init),
6425         (gst_identity_init), (gst_identity_chain),
6426         (gst_identity_set_property), (gst_identity_get_property):
6427         * gst/elements/gstidentity.h:
6428           check for perfect stream
6429
6430 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6431
6432         * gst/elements/gstidentity.c: (gst_identity_chain):
6433           print offset_end
6434
6435 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6436
6437         * docs/gst/Makefile.am:
6438         * docs/gst/gstreamer-docs.sgml:
6439           doc fixes
6440
6441 2004-06-24  David Schleef  <ds@schleef.org>
6442
6443         * autogen.sh:  Remove call to env, since the buildbot isn't
6444         broken anymore.
6445
6446 2004-06-24  Wim Taymans  <wim@fluendo.com>
6447
6448         * gst/elements/Makefile.am:
6449         * gst/elements/gstelements.c:
6450         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
6451         (gst_multifdsink_class_init), (gst_multifdsink_init),
6452         (gst_multifdsink_add), (gst_multifdsink_remove),
6453         (gst_multifdsink_clear), (gst_multifdsink_chain),
6454         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
6455         * gst/elements/gstmultifdsink.h:
6456         Added an element that writes to multiple filedescriptors at once.
6457
6458 2004-06-24  Benjamin Otte  <otte@gnome.org>
6459
6460         * gst/parse/grammar.y:
6461           don't try to link elements before they have been added to bins
6462
6463 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6464
6465         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
6466         (gst_file_pad_get_length):
6467         * libs/gst/bytestream/filepad.h:
6468           add 2 new functions
6469
6470 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6471
6472         * docs/gst/gstreamer-sections.txt:
6473         remove from docs, the define that Benjamin removed from gstelement.h
6474
6475 2004-06-22  Benjamin Otte  <otte@gnome.org>
6476
6477         * gst/gstelement.h:
6478           remove define that referenced a nonexisting GstElement struct member
6479
6480 2004-06-20  Benjamin Otte  <otte@gnome.org>
6481
6482         * gst/gstdata.c: (gst_data_is_writable):
6483           whoops, return values were wrong, so writable data was marked as
6484           non-writable and vice versa. (fixes #143953, spotted by Francis
6485           Labonte)
6486           Shows how rarely we need to copy data ;)
6487
6488 2004-06-20  Benjamin Otte  <otte@gnome.org>
6489
6490         * testsuite/schedulers/.cvsignore:
6491         * testsuite/schedulers/Makefile.am:
6492         * testsuite/schedulers/143777-2.c: (main):
6493           add test for opt breakage in bug #143777
6494
6495 2004-06-20  Benjamin Otte  <otte@gnome.org>
6496
6497         * gst/gstpad.c: (gst_pad_call_chain_function):
6498           check for if we were unlinked while inside the chainfunction (fixes
6499           entrygthread having issues with #143777)
6500         * testsuite/schedulers/143777.c: (main):
6501         * testsuite/schedulers/Makefile.am:
6502           add a test for that fix
6503
6504 2004-06-20  Benjamin Otte  <otte@gnome.org>
6505
6506         * gst/gstvalue.c: (gst_value_set_int_range):
6507           test that start is smaller then end
6508         * libs/gst/bytestream/Makefile.am:
6509         * libs/gst/bytestream/filepad.c: 
6510         * libs/gst/bytestream/filepad.h:
6511           add GstFilePad - a pad that behaves like a FILE*
6512         * testsuite/bytestream/.cvsignore:
6513         * testsuite/bytestream/Makefile.am:
6514         * testsuite/bytestream/filepadsink.c: 
6515           test for the GstFilePad
6516
6517 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
6518
6519         * gst/elements/gstidentity.c: (gst_identity_class_init),
6520         (gst_identity_init), (gst_identity_set_clock),
6521         (gst_identity_chain), (gst_identity_set_property),
6522         (gst_identity_get_property):
6523         * gst/elements/gstidentity.h:
6524         * gst/gstclock.c: (gst_clock_id_wait):
6525           add a "sync" property to sync to the clock
6526
6527 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6528
6529         * gst/gstelementfactory.c: (gst_element_factory_create):
6530           make the freakin "elementfactory bla has no type" message more
6531           useful. So we actually can do something when someone shows up
6532           complaining about it.
6533
6534 2004-06-15  Johan Dahlin  <johan@gnome.org>
6535
6536         * tools/gst-inspect.c (main): Fallback to plugin if no element is
6537         found. This matches the old behavior better. Thanks to Thomas for
6538         pointing out.
6539
6540 2004-06-14  David Schleef  <ds@schleef.org>
6541
6542         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
6543         -fomit-frame-pointer.  Appears to generate correct code in
6544         other cases as well.
6545
6546 2004-06-14  Johan Dahlin  <johan@gnome.org>
6547
6548         * tools/gst-inspect.c (main): Add two new command line options: -a
6549         to print all elements and -n to print the name on each line. Also
6550         fix some error reporting.
6551         (main): Simplify, remove -n and always print names if -a is specified
6552
6553 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
6554
6555         * win32/gstconfig.h:
6556         * win32/GSTreamer.vcproj:
6557         * win32/Makefile:
6558         * gst/gstconfig.h.in:
6559         * gst/gst.h:
6560         * gst/gstbin.h:
6561         * gst/gstelement.h:
6562         * gst/gstevent.h:
6563         * gst/gstobject.h:
6564         * gst/gstpad.h:
6565         * docs/gst/gstreamer-sections.txt:
6566         * docs/gst/tmpl/gstconfig.sgml:
6567           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
6568
6569 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
6570         * docs/gst/gstreamer-sections.txt:
6571         * docs/gst/tmpl/gstconfig.sgml:
6572         Add the GSTREAMER_EXPORT macro to the docs
6573
6574 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
6575
6576         * tools/gst-compprep.c: (handle_xmlerror), (main):
6577         Add a check for the version that introduced SetStructuredError to fix
6578         the build on FC1
6579
6580 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6581
6582         * win32/msvc71.sln:
6583         * win32/testsuite/:
6584           prepare to compile the testsuite with MSVC
6585
6586 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6587
6588         * docs/manual/win32.xml:
6589           attempt to transform the Win32 README into an XML doc
6590
6591 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6592
6593         * gst/gst.c:
6594         * gst/gstbin.*:
6595         * gst/config.h.in:
6596         * gst/gstelement.*:
6597         * gst/gstevent.h:
6598         * gst/gstobject.*:
6599         * gst/gstpad.h:
6600         * tools/gst-register.c:
6601         * win32/gstreamer.def:
6602           extern symbols are now exported for the Windows DLL
6603
6604 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6605
6606         * gst/gstinfo.h:
6607           fix a problem to enable/disable DEBUG under MSVC
6608
6609 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6610
6611         * win32/:
6612           enable more debug code in DEBUG build
6613
6614 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6615
6616         * win32/config.h:
6617         * gst/gst-i18n-app.h:
6618           enable NLS under Windows
6619
6620 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
6621         * tools/gst-compprep.c: (handle_xmlerror), (main):
6622           Make an error that baffled me a bit clearer
6623
6624 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6625
6626         * gst/gstqueue.c:
6627           don't use g_queue_get_length () because it's 2.4, use ->length
6628
6629 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
6630
6631         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
6632
6633         * tools/gst-inspect.c: (print_signal_info):
6634           don't free random data twice. (fixes #144185)
6635
6636 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6637
6638         * gst/gstqueue.c:
6639         * gst/gstqueue.h:
6640           fix removing from the wrong queue on event timeout
6641           fix disposing of the event queue by casting correctly
6642           add mutexes for handling the event queue
6643           someone was sleeping when fixing queue last time around :)
6644
6645 2004-06-10  Johan Dahlin  <johan@gnome.org>
6646
6647         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
6648         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
6649
6650 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6651
6652         * docs/random/gdp:
6653         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
6654         * libs/gst/dataprotocol/dataprotocol.c:
6655         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6656         (gst_dp_buffer_from_header):
6657         * libs/gst/dataprotocol/dataprotocol.h:
6658         * libs/gst/dataprotocol/dp-private.h:
6659           rev version to 0.1, add buffer flags and copy them
6660
6661 2004-06-09  Johan Dahlin  <johan@gnome.org>
6662
6663         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
6664         the flags from the buffer we're copying.
6665
6666 2004-06-09  Wim Taymans  <wim@fluendo.com>
6667
6668         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
6669         * gst/elements/gstidentity.c: (gst_identity_init),
6670         (gst_identity_chain):
6671         Print more buffer info in fakesink.
6672         Make identity output similar to fakesink.
6673
6674 2004-06-07  Daniel Gazard  <dany42@free.fr>
6675
6676         reviewed by Benjamin Otte  <otte@gnome.org>
6677
6678         * configure.ac:
6679           fix cross compiling not working. (fixes #143741)
6680
6681 2004-06-07  Benjamin Otte  <otte@gnome.org>
6682
6683         * gst/gstelement.c: (gst_element_set_time_delay):
6684           add failure check
6685         * gst/gstinfo.h:
6686           put brackets around macro arguments of GST_TIME_ARGS, add note to
6687           move it to correct header in 0.9
6688
6689 2004-06-07  Benjamin Otte  <otte@gnome.org>
6690
6691         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
6692         (gst_file_index_load), (_file_index_id_save_entries),
6693         (gst_file_index_commit), (gst_file_index_add_association),
6694         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
6695         (gst_file_index_plugin_init):
6696           make debugging use a default category
6697
6698 2004-06-06  David Moore  <dcm@acm.org>
6699
6700         reviewed by Benjamin Otte  <otte@gnome.org>
6701
6702         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
6703         (gst_fdsrc_change_state):
6704           reset offset counter when going READY => PAUSED. (fixes #142903)
6705
6706 2004-06-06  ed@catmur.co.uk
6707
6708         reviewed by Benjamin Otte  <otte@gnome.org>
6709
6710         * gst/registries/gstxmlregistry.c:
6711         (gst_xml_registry_rebuild_recurse):
6712           don't rely on g_dir_open to figure out if a file is a directory, use
6713           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
6714           directories. (fixes #142850)
6715
6716 2004-06-06  Benjamin Otte  <otte@gnome.org>
6717
6718         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
6719           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
6720         * libs/gst/bytestream/adapter.c:
6721         * libs/gst/bytestream/adapter.h:
6722           fix copyright in header and typo in debugging category name
6723
6724 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6725
6726         * configure.ac:
6727           bump nano to cvs
6728
6729 === release 0.8.3 ===
6730
6731 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6732
6733         * configure.ac:
6734           update libtool versioning
6735           do a new release
6736         * docs/gst/tmpl/gstelement.sgml:
6737         * docs/gst/tmpl/gsttypes.sgml:
6738         * gst/gstinfo.c: (_gst_debug_init):
6739           put back GST_CAT_DATAFLOW to fix API breakage
6740
6741 2004-06-04  David Schleef  <ds@schleef.org>
6742
6743         * autogen.sh: Add a temporary 'env' to test buildbot problems.
6744
6745 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6746
6747         * configure.ac:
6748           bump nano to cvs
6749
6750 === release 0.8.2 ===
6751
6752 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6753
6754         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
6755           check GST_DEBUG environment variable which is parsed the same way
6756           as --gst-debug=
6757
6758 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6759
6760         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
6761                             gstmd5sink.c gstshaper.c gsttee.c
6762                             gsttypefindelement.c
6763         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
6764
6765           - removing trailing commas at end of enums
6766             it is correct C99 code but C90 compilers would complain
6767             (AIX, Forte, ...)
6768             ('should' fix #143290, at least partially)
6769
6770 2004-05-27  Wim Taymans  <wim@fluendo.com>
6771
6772         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
6773         (chain_group_set_enabled), (create_group), (add_to_group),
6774         (merge_groups), (setup_group_scheduler), (group_elements),
6775         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
6776         Don't try to follow the pad connections with other groups
6777         when a loop based element is added to the scheduler because
6778         the bin will inform the scheduler about the pad links a little
6779         later.
6780
6781 2004-05-27  Wim Taymans  <wim@fluendo.com>
6782
6783         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6784         (remove_from_chain), (chain_group_set_enabled),
6785         (setup_group_scheduler), (group_element_set_enabled),
6786         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
6787         (gst_opt_scheduler_show):
6788         Elements without a group can do a state change as well, just wait
6789         with the setup of the scheduling function when it is added to a
6790         chain.
6791
6792 2004-05-27  Wim Taymans  <wim@fluendo.com>
6793
6794         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6795         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
6796         (merge_groups), (setup_group_scheduler),
6797         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
6798         (gst_opt_scheduler_show):
6799         Fixes to maintain internal consistency of the scheduler data
6800         structures. 
6801          - adding an enabled group to a chain should increment the
6802            number of enabled elements in that chain.
6803          - removing an enabled group from a chain could disable the
6804            chain.
6805          - removing a disabled group from a chain could enable the
6806            chain.
6807          - add g_assert when internal inconsistency is detected.
6808          - adding an element to a group could increase the number of
6809            links this group has with other groups.
6810          - merging two groups also merges the chains.
6811          - also show group links in the _show method.
6812            
6813
6814 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6815
6816         * gst/gstcaps.c: (gst_caps_structure_simplify):
6817           don't print error messages when there is no error
6818         * gst/gstvalue.c: (gst_value_compare_int_range):
6819           compare the second value, too
6820         * testsuite/caps/Makefile.am:
6821         * testsuite/caps/random.c: (assert_on_error), (main):
6822           add tests to make sure the two things above are checked for
6823
6824 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6825
6826         * configure.ac:
6827         * libs/gst/dataprotocol/Makefile.am:
6828         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
6829         * libs/gst/dataprotocol/dataprotocol.h:
6830           wrap header in GST_ENABLE_NEW.  make code use it
6831
6832 2004-05-23  Johan Dahlin  <johan@gnome.org>
6833
6834         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
6835         so verbose and print GstElement signal names all the time.
6836
6837 2004-05-22  David Schleef  <ds@schleef.org>
6838
6839         * gst/registries/gstxmlregistry.c:
6840         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
6841         (bug #142957)
6842
6843 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
6844
6845         * configure.ac:
6846           scrub cflags for glib2 so gcc doesn't complain when glib is in
6847           /usr/local
6848
6849 2004-05-21  Johan Dahlin  <johan@gnome.org>
6850
6851         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
6852         __GNUC__, patch from Brian Cameron, fixes bug #142804
6853
6854 2004-05-20  David Schleef  <ds@schleef.org>
6855
6856         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
6857         comparison code.  (bug #142819)
6858
6859 2004-05-20  Wim Taymans  <wim@fluendo.com>
6860
6861         * gst/gstbuffer.c: (gst_buffer_default_copy):
6862         * gst/gstbuffer.h:
6863         Added Comment to a flag.
6864         copy relevant flags in _buffer_copy.
6865
6866 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6867
6868         reviewed by: Wim Taymans <wim at fluendo dot com>
6869
6870         * gst/gstbuffer.h:
6871           add GST_BUFFER_IN_CAPS buffer flag
6872         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6873         (gst_structure_parse_any_list), (gst_structure_parse_list),
6874         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
6875         * gst/gstvalue.c: (gst_value_serialize_any_list),
6876         (gst_value_transform_any_list_string),
6877         (gst_value_list_prepend_value), (gst_value_list_append_value),
6878         (gst_value_list_get_size), (gst_value_list_get_value),
6879         (gst_value_transform_list_string),
6880         (gst_value_transform_fixed_list_string),
6881         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
6882         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
6883         (_gst_value_initialize):
6884         * gst/gstvalue.h:
6885           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
6886           < , > as a format.
6887         * testsuite/caps/string-conversions.c: (main):
6888           add regression tests for < >
6889
6890 2004-05-20  Johan Dahlin  <johan@gnome.org>
6891
6892         * docs/gst/Makefile.am (all-local): Re-add
6893
6894 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6895
6896         * docs/gst/Makefile.am:
6897         * docs/gst/gstreamer-docs.sgml:
6898         * docs/libs/Makefile.am:
6899         * docs/libs/gstreamer-libs-docs.sgml:
6900           fix distcheck issues
6901
6902 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6903
6904         * libs/gst/dataprotocol/Makefile.am:
6905           add to autotest
6906
6907 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6908
6909         * libs/gst/dataprotocol/Makefile.am:
6910         * libs/gst/dataprotocol/dataprotocol.c:
6911         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6912         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
6913         * libs/gst/dataprotocol/dp-private.h:
6914           use GST macros to read/write fixed length ints
6915           add some more asserts
6916
6917 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6918
6919         * docs/libs/gstreamer-libs-docs.sgml:
6920         * docs/libs/gstreamer-libs-sections.txt:
6921           remove idct and putbits
6922         * configure.ac:
6923         * docs/libs/tmpl/gstdataprotocol.sgml:
6924         * libs/gst/Makefile.am:
6925         * libs/gst/dataprotocol/Makefile.am:
6926         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
6927         (buffer_test), (caps_test), (event_test), (main):
6928         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
6929         (gst_dp_dump_byte_array), (gst_dp_init),
6930         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
6931         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6932         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
6933         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
6934         (gst_dp_validate_header), (gst_dp_validate_payload),
6935         (gst_dp_validate_packet), (plugin_init):
6936         * libs/gst/dataprotocol/dataprotocol.h:
6937         * libs/gst/dataprotocol/dp-private.h:
6938           add dataprotocol
6939
6940 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6941
6942         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
6943           fix int variable deserialization and add a helper so we can actually
6944           debug this.
6945
6946 2004-05-18  David Schleef  <ds@schleef.org>
6947
6948         * testsuite/debug/commandline.c: (main): Call ./commandline, not
6949           argv[0].  Calling yourself is probably not the best way to
6950           construct a test like this, btw.
6951
6952 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6953
6954         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
6955           don't claim to be more intelligent than a scheduler when the
6956           scheduler claims the pipeline is stopped
6957         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
6958         (safe_cothread_destroy),
6959         (gst_entry_scheduler_remove_all_cothreads),
6960         (gst_entry_scheduler_reset), (_remove_cothread),
6961         (gst_entry_scheduler_state_transition):
6962           hold off cothread destruction if we're not in main cothread
6963         * configure.ac:
6964         * testsuite/Makefile.am:
6965           add new test dir
6966         * testsuite/schedulers/.cvsignore:
6967         * testsuite/schedulers/Makefile.am:
6968           add tests
6969         * testsuite/schedulers/relink.c: (cb_handoff), (main):
6970           check relinking and adding/removing elements from a running pipeline
6971         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
6972           check unlinking in a running pipeline
6973         * testsuite/schedulers/unref.c: (cb_handoff), (main):
6974           check unreffing a running pipeline
6975         * testsuite/schedulers/useless_iteration.c: (main):
6976           check iterating a pipeline that contains running threads works
6977
6978 2004-05-18  David Schleef  <ds@schleef.org>
6979
6980         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
6981           is false.
6982
6983 2004-05-18  Wim Taymans  <wim@fluendo.com>
6984
6985         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6986         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
6987         Fixed an error introduced with patch for 1.63. When setting
6988         a get based element as the entry point in a group, make sure
6989         to mark the group as GET based.
6990
6991 2004-05-18  Wim Taymans  <wim@fluendo.com>
6992
6993         * gst/schedulers/gstoptimalscheduler.c: (create_group),
6994         (setup_group_scheduler), (loop_group_schedule_function),
6995         (gst_opt_scheduler_pad_link):
6996         Added some more debug info and fixed a bug where the group
6997         type was set to LOOP but it was in fact unknown.
6998
6999 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7000
7001         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
7002           make resetting scheduler work twice in a row
7003
7004 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7005
7006         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
7007         (CREATE_USERIALIZATION), (_gst_value_initialize),
7008         (gst_value_compare_float), (gst_value_serialize_float),
7009         (gst_value_deserialize_float), (gst_value_compare_enum),
7010         (gst_value_serialize_enum), (gst_value_deserialize_enum):
7011           add serialization and comparison functions for long, int64, enum and
7012           float values
7013         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
7014           use best serialization function in type hierarchy instead of only a
7015           matching one. This is required for enums to work.
7016         * gst/parse/grammar.y:
7017           use gst_caps_deserialize
7018         * testsuite/parse/Makefile.am:
7019           parse1 now works
7020         * testsuite/parse/parse1.c: (main):
7021           remove aggregator check, aggregator is broken, this test works now
7022           but fails because of bug #138012
7023         * testsuite/parse/parse2.c: (main):
7024           s/xvideosink/xvimagesink - this test looks a lot like we should
7025           disable it
7026
7027 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7028
7029         * gst/gstelement.c: (gst_element_class_init):
7030           whoops, store the signal id correctly
7031         * gst/schedulers/gstbasicscheduler.c:
7032         (gst_basic_scheduler_chain_wrapper):
7033           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
7034           chain function isn't linked
7035
7036 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
7037         * configure.ac:
7038         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
7039         support until we decide where the flags should be used
7040         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
7041         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
7042         * gst/gstpad.c: (gst_pad_link_call_link_functions):
7043         Output refused caps in the debug info
7044
7045 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7046
7047         * gst/elements/gstidentity.c: (gst_identity_chain):
7048           add duration debug
7049         * gst/gstinfo.c: (gst_debug_log_default):
7050           add timestamp
7051
7052 2004-05-13  Benjamin Otte  <otte@gnome.org>
7053
7054         * gst/gstpipeline.c: (gst_pipeline_dispose),
7055         (gst_pipeline_change_state):
7056           call gst_scheduler_reset on dispose (fixes #141416)
7057
7058 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7059
7060         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7061           compute mapsize correctly
7062         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7063           use correct datatypes when calling a varargs function
7064         * gst/elements/gsttypefindelement.c: (stop_typefinding):
7065           push a DISCONT event as first thing
7066         * gst/gst_private.h:
7067         * gst/gstinfo.c: (_gst_debug_init):
7068           remove GST_DATAFLOW debugging category
7069         * gst/gstbin.c: (gst_bin_iterate):
7070           use GST_SCHEDULING category
7071         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
7072         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
7073         (gst_pad_call_get_function):
7074           add GST_DATAFLOW to easily track flow of buffers or events.
7075         * gst/gstqueue.c: (gst_queue_get_type),
7076         (gst_queue_handle_pending_events), (gst_queue_chain),
7077         (gst_queue_get), (gst_queue_handle_src_event):
7078           use own static debugging category GST_DATAFLOW for dataflow,
7079           use DEBUG category for showing which path events go, use LOG
7080           category for buffers.
7081
7082 2004-05-10  David Schleef  <ds@schleef.org>
7083
7084         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
7085
7086 2004-05-10  David Schleef  <ds@schleef.org>
7087
7088         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
7089         symbols, because otherwise we don't know what they are.  Thanks,
7090         the GStreamer team.
7091         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
7092
7093 2004-05-10  David Schleef  <ds@schleef.org>
7094
7095         (from Steve Lhomme)
7096         * win32/Makefile: When using make clean the MS Visual Studio makefiles
7097         are deleted.  Fix.
7098         * win32/Makefile.inspect:
7099         * win32/Makefile.launch:
7100         * win32/Makefile.register:
7101
7102 2004-05-10  David Schleef  <ds@schleef.org>
7103
7104         * gst/gstinfo.h: Add missing inline function.
7105         * gst/gsttrace.c: add include
7106         * gst/parse/grammar.y: remove unused code
7107         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
7108         more portable.
7109         * tools/gst-register.c: wrap unistd.h
7110         
7111         More additions/fixes from Steve for the MSVC build.
7112         * win32/GStreamer.vcproj:
7113         * win32/Makefile:
7114         * win32/Makefile.inspect:
7115         * win32/Makefile.launch:
7116         * win32/Makefile.register:
7117         * win32/README.txt:
7118         * win32/gst-inspect.vcproj:
7119         * win32/gst-launch.vcproj:
7120         * win32/gst-register.vcproj:
7121         * win32/gstbytestream.def:
7122         * win32/gstbytestream.vcproj:
7123         * win32/gstconfig.h:
7124         * win32/gstelements.def:
7125         * win32/gstelements.vcproj:
7126         * win32/gstenumtypes.c:
7127         * win32/gstenumtypes.h:
7128         * win32/gstoptimalscheduler.def:
7129         * win32/gstoptimalscheduler.vcproj:
7130         * win32/gstreamer.def:
7131         * win32/gstspider.def:
7132         * win32/gstspider.vcproj:
7133         * win32/gstversion.h:
7134         * win32/msvc71.sln:
7135
7136 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7137
7138         * gst/gstelement.c: (gst_element_class_init),
7139         (gst_element_no_more_pads):
7140         * gst/gstelement.h:
7141           add gst_element_no_more_pads and the "no-more-pads" signal
7142
7143 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7144
7145         * gst/gstregistry.c: (gst_registry_add_plugin):
7146           refuse to add plugins when a plugin with same name is already
7147           registered. Fixes a bunch of "How to remove plugins?" issues.
7148           May lead to other problems though, let's test
7149
7150 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7151
7152         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
7153         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
7154         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
7155
7156 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7157
7158         * tests/Makefile.am: fix am16 issue
7159
7160 2004-05-09  Benjamin Otte  <otte@gnome.org>
7161
7162         * libs/gst/bytestream/Makefile.am:
7163           we should indeed add .c files to makefiles or they won't be built
7164           (d'oh)
7165
7166 2004-05-08  Benjamin Otte  <otte@gnome.org>
7167
7168         * gst/gstpad.c: (gst_pad_proxy_fixate):
7169           really reduce the set of caps
7170
7171 2004-05-08  Benjamin Otte  <otte@gnome.org>
7172
7173         * tests/Makefile.am:
7174         * tests/spidey_bench.c: (handoff), (main):
7175           add benchmark to test how long spider needs to create a pipeline
7176
7177 2004-05-08  Benjamin Otte  <otte@gnome.org>
7178
7179         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
7180           mark links as unengaged when unnegotiating instead of deactivating.
7181           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
7182
7183 2004-05-08  Benjamin Otte  <otte@gnome.org>
7184
7185         * docs/manual/helloworld.xml:
7186           s/audiosink/osssink (patch by Patrick Guimond)
7187
7188 2004-05-07  David Schleef  <ds@schleef.org>
7189
7190         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
7191         since it contains important stuff.
7192
7193 2004-05-07  David Schleef  <ds@schleef.org>
7194
7195         * testsuite/caps/caps.c: (test3), (main): A check for appending
7196         ANY caps.
7197
7198 2004-05-07  David Schleef  <ds@schleef.org>
7199
7200         * common/m4/as-compiler-flag.m4: Properly quote arguments,
7201         which may contain commas.  Fixes detection of -Wa,-mregnames
7202
7203 2004-05-06  David Schleef  <ds@schleef.org>
7204
7205         Changes to handle compilers that don't have variadic macro
7206         support.  In particular, glib headers define some inlines
7207         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
7208         builds.
7209         * gst/Makefile.am:
7210         * gst/cothreads.c:
7211         * gst/elements/gstfdsink.c:
7212         * gst/elements/gstfdsrc.c:
7213         * gst/elements/gstfilesink.c:
7214         * gst/elements/gstfilesrc.c:
7215         * gst/gst_private.h:
7216         * gst/gstatomic.c:
7217         * gst/gstcaps.c: (gst_caps_append):
7218         * gst/gstcpu.c: (gst_cpuid_i386):
7219         * gst/gstelement.c:
7220         * gst/gsterror.c:
7221         * gst/gstfilter.c:
7222         * gst/gstinfo.h:
7223         * gst/gstprobe.c:
7224         * gst/gstquery.c:
7225         * gst/gstregistry.c:
7226         * gst/gststructure.c:
7227         * gst/gsttaginterface.c:
7228         * gst/gsttrace.c: (gst_trace_new):
7229         * gst/gsttrashstack.c:
7230         * gst/gsturi.c:
7231         * gst/gstvalue.c:
7232         * gst/parse/grammar.y:
7233         * gst/parse/parse.l:
7234         * tools/gst-inspect.c: (main):
7235         * tools/gst-launch.c: (main):
7236         * tools/gst-xmlinspect.c: (PUT_STRING):
7237
7238 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7239
7240         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
7241         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
7242         * gst/elements/gstfilesrc.h:
7243           send NEW_MEDIA events correctly
7244         * gst/elements/gsttypefindelement.c: (start_typefinding),
7245         (gst_type_find_element_handle_event):
7246           restart typefinding when we get a NEW_MEDIA event
7247         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
7248         (gst_bin_dispose):
7249           don't die when someone removes elements in callbacks
7250         * gst/gstelement.c: (gst_element_change_state):
7251           improve debugging
7252         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
7253           we need a NEW_MEDIA event to engage a link
7254         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
7255           don't g_print debugging stuff
7256         * testsuite/caps/simplify.c: (check_caps):
7257
7258 2004-05-04  Benjamin Otte  <otte@gnome.org>
7259
7260         * gst/parse/grammar.y:
7261           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
7262
7263 2004-05-04  Benjamin Otte  <otte@gnome.org>
7264
7265         * testsuite/caps/renegotiate.c: (main):
7266           improve output in error case
7267
7268 2004-05-04  Benjamin Otte  <otte@gnome.org>
7269
7270         * gst/parse/grammar.y:
7271           fix assert to not trigger when there's no error argument
7272         * gst/parse/parse.l:
7273           fix definition of caps to allow more than two structures
7274         * testsuite/caps/Makefile.am:
7275         * testsuite/caps/renegotiate.c: (main):
7276           it's sinesrc and works in that case
7277
7278 2004-05-04  Wim Taymans  <wim@fluendo.com>
7279
7280         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7281         (group_dec_link), (gst_opt_scheduler_pad_unlink):
7282         when removing an element from a group, we always need to
7283         decrement the link count that this group had with other 
7284         groups through the element.
7285         added an extra assert to catch inconsistencies when decrementing
7286         the link count.
7287
7288 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7289
7290         * configure.ac:
7291         * docs/gst/Makefile.am:
7292         * docs/gst/gstreamer-sections.txt:
7293         * docs/gst/tmpl/gstcompat.sgml:
7294         * examples/appreader/Makefile.am:
7295         * examples/cutter/Makefile.am:
7296         * examples/events/Makefile.am:
7297         * examples/helloworld/Makefile.am:
7298         * examples/helloworld2/Makefile.am:
7299         * examples/launch/Makefile.am:
7300         * examples/manual/Makefile.am:
7301         * examples/mixer/Makefile.am:
7302         * examples/pingpong/Makefile.am:
7303         * examples/plugins/Makefile.am:
7304         * examples/queue/Makefile.am:
7305         * examples/queue2/Makefile.am:
7306         * examples/queue3/Makefile.am:
7307         * examples/queue4/Makefile.am:
7308         * examples/retag/Makefile.am:
7309         * examples/thread/Makefile.am:
7310         * examples/typefind/Makefile.am:
7311         * examples/xml/Makefile.am:
7312         * gst/Makefile.am:
7313         * gst/autoplug/Makefile.am:
7314         * gst/elements/Makefile.am:
7315         * gst/gstcompat.h:
7316         * gst/indexers/Makefile.am:
7317         * gst/parse/Makefile.am:
7318         * gst/registries/Makefile.am:
7319         * gst/schedulers/Makefile.am:
7320         * libs/gst/bytestream/Makefile.am:
7321         * libs/gst/control/Makefile.am:
7322         * libs/gst/getbits/Makefile.am:
7323         * po/af.po:
7324         * po/az.po:
7325         * po/en_GB.po:
7326         * po/fr.po:
7327         * po/nl.po:
7328         * po/sr.po:
7329         * po/sv.po:
7330         * po/tr.po:
7331         * po/uk.po:
7332         * tests/Makefile.am:
7333         * tests/bufspeed/Makefile.am:
7334         * tests/instantiate/Makefile.am:
7335         * tests/memchunk/Makefile.am:
7336         * tests/muxing/Makefile.am:
7337         * tests/negotiation/Makefile.am:
7338         * tests/probes/Makefile.am:
7339         * tests/sched/Makefile.am:
7340         * tests/seeking/Makefile.am:
7341         * tests/threadstate/Makefile.am:
7342         * testsuite/caps/Makefile.am:
7343         * testsuite/cleanup/Makefile.am:
7344         * testsuite/dlopen/Makefile.am:
7345         * testsuite/dynparams/Makefile.am:
7346         * testsuite/plugin/Makefile.am:
7347         * testsuite/states/Makefile.am:
7348         * tools/Makefile.am:
7349           reorganize compile/link flags to be consistent
7350           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
7351
7352 2004-05-04  David Schleef  <ds@schleef.org>
7353
7354         The "once more, with feeling" check-in.
7355         * testsuite/caps/Makefile.am: dist caps_strings
7356         * testsuite/caps/renegotiate.c: (main): This test triggers a
7357           segfault in the core.  Marking as failing.
7358
7359 2004-05-03  David Schleef  <ds@schleef.org>
7360
7361         * testsuite/caps/deserialize.c: (main): Fix problems noticed
7362           by the build bots.
7363         * testsuite/caps/renegotiate.c: (main): Same.
7364
7365 2004-05-03  David Schleef  <ds@schleef.org>
7366
7367         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
7368
7369 2004-05-03  David Schleef  <ds@schleef.org>
7370
7371         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
7372           variable to find our source file.
7373
7374 2004-05-03  David Schleef  <ds@schleef.org>
7375
7376         * configure.ac:  Link plugins with libgstreamer and dependent
7377           libraries
7378         * testsuite/caps/Makefile.am:
7379         * testsuite/caps/caps_strings:
7380         * testsuite/caps/deserialize.c: (main): Add a little test to slog
7381           through a file of caps strings and test each one
7382
7383 2004-05-04  Benjamin Otte  <otte@gnome.org>
7384
7385         * libs/gst/bytestream/Makefile.am:
7386         * libs/gst/bytestream/adapter.c: 
7387         * libs/gst/bytestream/adapter.h:
7388           add GstAdapter, similar to bytestream, but doesn't require ugly event
7389           handling or uglier loopbased elements
7390
7391 2004-05-03  David Schleef  <ds@schleef.org>
7392
7393         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
7394         * testsuite/caps/erathostenes.c:
7395         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
7396
7397 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7398
7399         * docs/pwg/pwg.xml:
7400           remove hardcoded stylesheet path (duh)
7401         * docs/random/release:
7402         * docs/gst/gstreamer-sections.txt:
7403         * gst/Makefile.am:
7404         * gst/gst.h:
7405         * gst/gst_private.h:
7406         * gst/gstcaps.c:
7407         * gst/gstevent.c:
7408         * gst/gstformat.c:
7409         * gst/gstinfo.c:
7410         * gst/gstinfo.h:
7411         * gst/gstinterface.c:
7412         * gst/gstmemchunk.c:
7413         * gst/gstprobe.c:
7414         * gst/gstquery.c:
7415         * gst/gstregistry.c:
7416         * gst/gstregistrypool.c:
7417         * gst/gststructure.c:
7418         * gst/gsttaginterface.c:
7419         * gst/gstthread.c:
7420         * gst/gsttrace.c:
7421         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
7422         * gst/gsturi.c:
7423         * gst/gstvalue.c:
7424           deprecate gst_info; remove gstlog.h
7425    
7426
7427 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7428
7429         * Makefile.am:
7430         * po/en_GB.po:
7431         * po/sv.po:
7432         * po/uk.po:
7433           updated translations
7434
7435 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7436
7437         * gst/gstbin.c: (gst_bin_dispose):
7438           better debugging
7439
7440 2004-05-03  Johan Dahlin  <johan@gnome.org>
7441
7442         * gst/schedulers/gstoptimalscheduler.c
7443         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
7444         really is a GstElement. Avoids critical when running gst-launch -v
7445         and a oggdemux/decoding pipeline.
7446
7447 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7448
7449         * docs/gst/tmpl/gstpipeline.sgml :
7450         * docs/manual/elements-api.xml :
7451                 doc fix by Patrick Guimond (Protector) from devel ML
7452                 reviewed by ronald
7453
7454 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7455
7456         * docs/gst/Makefile.am :
7457         * docs/libs/Makefile.am :
7458                 apply a patch from Arwed v. Merkatz so that gtk-doc
7459                 generated docs install (same for .devhelp file)
7460                 (fixes part 1 of #138836)
7461
7462 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7463
7464         * docs/faq/dependencies.xml: typo
7465         * docs/faq/getting.xml :
7466             - fix download URL for new gstreamer site
7467             - hide sf.net download page as latest version aren't there
7468             - fix apt URLs
7469             - fill "get via CVS" paragraph (link to dev page on the site)
7470         * docs/faq/general.xml:
7471             hide status tables as they no more exists
7472             change case on plugins license file to reflect reality
7473         * docs/faq/troubleshooting.xml:
7474             remove the wiki question/answer as there is no more wiki
7475
7476 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
7477
7478         * gst/gsterror.h:
7479           include the headers needed for declarations used in this header
7480
7481 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7482
7483         * docs/random/uraeus/gstreamer_and_midi.txt :
7484           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
7485           (fixes #132288)
7486
7487 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
7488
7489         reviewed by Benjamin Otte  <otte@gnome.org>
7490
7491         * gst/schedulers/gthread-cothreads.h:
7492           free allocated data for main cothread, too when destroying context
7493           (fixes #141417)
7494
7495 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7496
7497         * docs/manual/goals.xml : remove duplicated paragraph at end 
7498         of doc page (fixes #141448)
7499
7500 2004-04-29  David Schleef  <ds@schleef.org>
7501
7502         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
7503         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
7504
7505 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7506
7507         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
7508           fix property
7509         * gst/gstcaps.c:
7510           fix doc string
7511         * po/POTFILES.in:
7512           rename typefind source file
7513
7514 2004-04-28  David Schleef  <ds@schleef.org>
7515
7516         Several new files from Steve Lhomme's MSVC patch (bug #141317):
7517         * win32/GStreamer.vcproj:
7518         * win32/Makefile:
7519         * win32/config.h:
7520         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
7521         (_trewinddir), (_ttelldir), (_tseekdir):
7522         * win32/dirent.h:
7523         * win32/gst-inspect.vcproj:
7524         * win32/gst-launch.vcproj:
7525         * win32/gst-register.vcproj:
7526         * win32/gstbytestream.vcproj:
7527         * win32/gstelements.vcproj:
7528         * win32/gstoptimalscheduler.vcproj:
7529         * win32/gstspider.vcproj:
7530         * win32/gtchar.h:
7531         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
7532         * win32/mman.h:
7533         * win32/mman.inl:
7534         * win32/msvc71.sln:
7535
7536 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7537
7538         * gst/gst.c: (init_post):
7539         * gst/gstinfo.c:
7540           remove useless _gst_progname stuff
7541         * tools/gst-inspect.c: (print_field), (print_caps):
7542           improve caps output
7543
7544 2004-04-28  David Schleef  <ds@schleef.org>
7545
7546         Disable parsing of a lot of files that aren't part of the
7547         exported API.  Move corresponding template files to old/,
7548         waiting for removal when they don't contain anything
7549         interesting.
7550         * docs/gst/Makefile.am:
7551         * docs/gst/gstreamer-sections.txt:
7552         * docs/gst/tmpl/cothreads.sgml:
7553         * docs/gst/tmpl/cothreads_compat.sgml:
7554         * docs/gst/tmpl/gettext.sgml:
7555         * docs/gst/tmpl/gobject2gtk.sgml:
7556         * docs/gst/tmpl/grammar.tab.sgml:
7557         * docs/gst/tmpl/gst-i18n-app.sgml:
7558         * docs/gst/tmpl/gst-i18n-lib.sgml:
7559         * docs/gst/tmpl/gst_private.sgml:
7560         * docs/gst/tmpl/gstaggregator.sgml:
7561         * docs/gst/tmpl/gstarch.sgml:
7562         * docs/gst/tmpl/gstatomic_impl.sgml:
7563         * docs/gst/tmpl/gstbufferstore.sgml:
7564         * docs/gst/tmpl/gstdata_private.sgml:
7565         * docs/gst/tmpl/gstdisksink.sgml:
7566         * docs/gst/tmpl/gstdisksrc.sgml:
7567         * docs/gst/tmpl/gstelementfactory.sgml:
7568         * docs/gst/tmpl/gstextratypes.sgml:
7569         * docs/gst/tmpl/gstfakesink.sgml:
7570         * docs/gst/tmpl/gstfakesrc.sgml:
7571         * docs/gst/tmpl/gstfdsink.sgml:
7572         * docs/gst/tmpl/gstfdsrc.sgml:
7573         * docs/gst/tmpl/gstfilesink.sgml:
7574         * docs/gst/tmpl/gstfilesrc.sgml:
7575         * docs/gst/tmpl/gsthttpsrc.sgml:
7576         * docs/gst/tmpl/gstidentity.sgml:
7577         * docs/gst/tmpl/gstindexfactory.sgml:
7578         * docs/gst/tmpl/gstmarshal.sgml:
7579         * docs/gst/tmpl/gstmd5sink.sgml:
7580         * docs/gst/tmpl/gstmultidisksrc.sgml:
7581         * docs/gst/tmpl/gstmultifilesrc.sgml:
7582         * docs/gst/tmpl/gstpadtemplate.sgml:
7583         * docs/gst/tmpl/gstpipefilter.sgml:
7584         * docs/gst/tmpl/gstschedulerfactory.sgml:
7585         * docs/gst/tmpl/gstsearchfuncs.sgml:
7586         * docs/gst/tmpl/gstshaper.sgml:
7587         * docs/gst/tmpl/gstspider.sgml:
7588         * docs/gst/tmpl/gstspideridentity.sgml:
7589         * docs/gst/tmpl/gststatistics.sgml:
7590         * docs/gst/tmpl/gsttee.sgml:
7591         * docs/gst/tmpl/gsttimecache.sgml:
7592         * docs/gst/tmpl/gsttypefind.sgml:
7593         * docs/gst/tmpl/gsttypefindfactory.sgml:
7594         * docs/gst/tmpl/gstxmlregistry.sgml:
7595         * docs/gst/tmpl/gthread-cothreads.sgml:
7596         * docs/gst/tmpl/old/cothreads.sgml:
7597         * docs/gst/tmpl/old/cothreads_compat.sgml:
7598         * docs/gst/tmpl/old/gettext.sgml:
7599         * docs/gst/tmpl/old/gobject2gtk.sgml:
7600         * docs/gst/tmpl/old/grammar.tab.sgml:
7601         * docs/gst/tmpl/old/gst-i18n-app.sgml:
7602         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
7603         * docs/gst/tmpl/old/gst_private.sgml:
7604         * docs/gst/tmpl/old/gstaggregator.sgml:
7605         * docs/gst/tmpl/old/gstarch.sgml:
7606         * docs/gst/tmpl/old/gstatomic_impl.sgml:
7607         * docs/gst/tmpl/old/gstbufferstore.sgml:
7608         * docs/gst/tmpl/old/gstdata_private.sgml:
7609         * docs/gst/tmpl/old/gstdisksink.sgml:
7610         * docs/gst/tmpl/old/gstdisksrc.sgml:
7611         * docs/gst/tmpl/old/gstelementfactory.sgml:
7612         * docs/gst/tmpl/old/gstextratypes.sgml:
7613         * docs/gst/tmpl/old/gstfakesink.sgml:
7614         * docs/gst/tmpl/old/gstfakesrc.sgml:
7615         * docs/gst/tmpl/old/gstfdsink.sgml:
7616         * docs/gst/tmpl/old/gstfdsrc.sgml:
7617         * docs/gst/tmpl/old/gstfilesink.sgml:
7618         * docs/gst/tmpl/old/gstfilesrc.sgml:
7619         * docs/gst/tmpl/old/gsthttpsrc.sgml:
7620         * docs/gst/tmpl/old/gstidentity.sgml:
7621         * docs/gst/tmpl/old/gstindexfactory.sgml:
7622         * docs/gst/tmpl/old/gstmarshal.sgml:
7623         * docs/gst/tmpl/old/gstmd5sink.sgml:
7624         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
7625         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
7626         * docs/gst/tmpl/old/gstpadtemplate.sgml:
7627         * docs/gst/tmpl/old/gstpipefilter.sgml:
7628         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
7629         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
7630         * docs/gst/tmpl/old/gstshaper.sgml:
7631         * docs/gst/tmpl/old/gstspider.sgml:
7632         * docs/gst/tmpl/old/gstspideridentity.sgml:
7633         * docs/gst/tmpl/old/gststatistics.sgml:
7634         * docs/gst/tmpl/old/gsttee.sgml:
7635         * docs/gst/tmpl/old/gsttimecache.sgml:
7636         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
7637         * docs/gst/tmpl/old/gstxmlregistry.sgml:
7638         * docs/gst/tmpl/old/gthread-cothreads.sgml:
7639         * docs/gst/tmpl/old/types.sgml:
7640         * docs/gst/tmpl/types.sgml:
7641
7642         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
7643         gtkdoc-scan doesn't like files with the same name in different
7644         directories.
7645         * gst/elements/Makefile.am:
7646         * gst/elements/gstelements.c:
7647         * gst/elements/gsttypefind.c: 
7648         * gst/elements/gsttypefind.h:
7649         * gst/elements/gsttypefindelement.c:
7650         * gst/elements/gsttypefindelement.h:
7651
7652 2004-04-28  David Schleef  <ds@schleef.org>
7653
7654         A bunch of portability fixes, derived from Steve Lhomme's MSVC
7655         patch (bug #141317):
7656         * gst/gst-i18n-lib.h: Allow disabling gettext.
7657         * gst/gstatomic_impl.h: disable warning when it's dumb.
7658         * gst/gstclock.c: fix include
7659         * gst/gstcompat.h: fix variadic macro
7660         * gst/gstinfo.c: fix include
7661         * gst/gstmacros.h: add defines for inlines on MSVC
7662         * gst/gstplugin.c: fix includes
7663         * gst/gstregistry.c: fix includes
7664         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
7665         * gst/gstsystemclock.c: fix include
7666         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
7667         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
7668         * gst/registries/gstxmlregistry.c:
7669         (gst_xml_registry_parse_element_factory): fix use of non-portable
7670         functions
7671         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
7672         * libs/gst/control/dparammanager.h: same
7673
7674 2004-04-28  David Schleef  <ds@schleef.org>
7675
7676         Move a bunch of unused files to old/ with names that are
7677         not case-insensitive-unique.  These files still contain some
7678         useful information that needs to be merged into gstbin.sgml,
7679         etc., so they shouldn't be deleted yet.
7680         * docs/gst/tmpl/GstBin.sgml:
7681         * docs/gst/tmpl/GstBuffer.sgml:
7682         * docs/gst/tmpl/GstCaps.sgml:
7683         * docs/gst/tmpl/GstClock.sgml:
7684         * docs/gst/tmpl/GstCompat.sgml:
7685         * docs/gst/tmpl/GstData.sgml:
7686         * docs/gst/tmpl/GstElement.sgml:
7687         * docs/gst/tmpl/GstEvent.sgml:
7688         * docs/gst/tmpl/GstIndex.sgml:
7689         * docs/gst/tmpl/GstStructure.sgml:
7690         * docs/gst/tmpl/GstTag.sgml:
7691         * docs/gst/tmpl/old/GstBin.sgml:
7692         * docs/gst/tmpl/old/GstBuffer.sgml:
7693         * docs/gst/tmpl/old/GstCaps.sgml:
7694         * docs/gst/tmpl/old/GstClock.sgml:
7695         * docs/gst/tmpl/old/GstCompat.sgml:
7696         * docs/gst/tmpl/old/GstData.sgml:
7697         * docs/gst/tmpl/old/GstElement.sgml:
7698         * docs/gst/tmpl/old/GstEvent.sgml:
7699         * docs/gst/tmpl/old/GstIndex.sgml:
7700         * docs/gst/tmpl/old/GstStructure.sgml:
7701         * docs/gst/tmpl/old/GstTag.sgml:
7702
7703 2004-04-28  David Schleef  <ds@schleef.org>
7704
7705         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
7706         (gst_caps_append), (gst_caps_append_structure),
7707         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
7708         (gst_caps_set_simple), (gst_caps_set_simple_valist),
7709         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
7710         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
7711         (gst_caps_intersect), (gst_caps_normalize),
7712         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
7713         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
7714         * gst/gstcaps.h: use GST_IS_CAPS().
7715
7716 2004-04-26  David Schleef  <ds@schleef.org>
7717
7718         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
7719         assembly.  gcc doesn't handle it correctly. (bug #141083)
7720         * gst/gsttrashstack.h: same
7721
7722 2004-04-25  Benjamin Otte  <otte@gnome.org>
7723
7724         * gst/gstelement.c: (gst_element_change_state):
7725           fix assertion to do an int comparison
7726
7727 2004-04-25  Benjamin Otte  <otte@gnome.org>
7728
7729         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7730           better debugging output on error
7731
7732 2004-04-25  Benjamin Otte  <otte@gnome.org>
7733
7734         * gst/gstcaps.c: (gst_caps_subtract):
7735           fix memleak
7736
7737 2004-04-23  Benjamin Otte  <otte@gnome.org>
7738
7739         * gst/gstvalue.c: (gst_value_compare_buffer),
7740         (_gst_value_initialize):
7741           add comparison function for buffers
7742
7743 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7744
7745         * docs/pwg/pwg.xml:
7746           Just found out that this so-called "ima-wav" format is really
7747           just "dvi adpcm" (according to the MS WAV documentation). So
7748           renaming it. We didn't use it yet anyway.
7749
7750 2004-04-23  Benjamin Otte  <otte@gnome.org>
7751
7752         * gst/gstcaps.c: (gst_caps_is_always_compatible):
7753           call gst_caps_is_subset
7754
7755 2004-04-23  Benjamin Otte  <otte@gnome.org>
7756
7757         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
7758         (gst_caps_is_subset):
7759           add documentation
7760
7761 2004-04-23  Benjamin Otte  <otte@gnome.org>
7762           
7763         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
7764         (gst_caps_structure_subtract), (gst_caps_subtract),
7765         (gst_caps_structure_figure_out_union),
7766         (gst_caps_structure_simplify), (gst_caps_do_simplify):
7767           fix simplifying and subtracting not working correctly with optional
7768           properties
7769           solve assorted problems that make it now simplify ebven more
7770         * docs/gst/tmpl/gstcaps.sgml:
7771         * gst/gstcaps.h:
7772           make gst_caps_do_simplify return a bool to indicate if it simplified
7773         * testsuite/caps/simplify.c: (main):
7774           add more checks. The tests is quite a bit useless right now because
7775           the core is heavily simplifying itself.
7776         * testsuite/caps/caps.h:
7777           fix caps to contain all optional properties
7778
7779 2004-04-22  Benjamin Otte  <otte@gnome.org>
7780
7781         * docs/gst/tmpl/gstcaps.sgml:
7782         * docs/gst/tmpl/gstfilesrc.sgml:
7783         * docs/gst/tmpl/gststructure.sgml:
7784         * docs/gst/tmpl/gstvalue.sgml:
7785           update for recent API changes
7786         * gst/gstcaps.c: (gst_caps_do_simplify):
7787           fix to stop trying with a freed structure
7788         * gst/gstpad.c: (gst_pad_link_fixate):
7789           simplify caps
7790         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
7791           remove C++ comment
7792         * gst/gstpad.h:
7793           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
7794         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7795         (gst_structure_to_string):
7796           keep the correct type when using lists of ranges
7797         * gst/gstvalue.c: (gst_value_list_prepend_value),
7798         (gst_value_list_append_value):
7799           copy the value before adding to the list (d'oh)
7800         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
7801         (gst_value_subtract_int_range_int_range):
7802           handle overflows correctly
7803         * gst/gstvalue.c: (gst_value_subtract_from_list):
7804           fix memleak
7805         * testsuite/caps/caps.h:
7806           add a caps that caused segfaults
7807
7808 2004-04-22  Benjamin Otte  <otte@gnome.org>
7809
7810         * testsuite/refcounting/pad.c: (main):
7811           fix test
7812
7813 2004-04-22  Benjamin Otte  <otte@gnome.org>
7814
7815         * gst/gstcaps.c: (gst_caps_subtract):
7816           allow subtracting ANY and EMPTY from ANY caps
7817
7818 2004-04-22  Benjamin Otte  <otte@gnome.org>
7819
7820         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
7821         (gst_caps_union):
7822           only simplify in functions that create new caps. Simplifying in
7823           gst_caps_append breaks tests.
7824
7825 2004-04-22  Benjamin Otte  <otte@gnome.org>
7826
7827         * gst/gstcaps.c: (gst_caps_structure_simplify):
7828           unset GValue after use
7829         * gst/gstcaps.c: (gst_caps_append), 
7830         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
7831           use gst_caps_simplify (reduces registry size by 30%)
7832         * gst/gstpad.c: (gst_pad_template_new):
7833           don't allow NULL caps
7834
7835 2004-04-22  Benjamin Otte  <otte@gnome.org>
7836
7837         * docs/gst/gstreamer-sections.txt:
7838           add gst_caps_do_simplify
7839         * gst/gstcaps.c:
7840           add documentation for gst_caps_do_simplify
7841         * gst/gstvalue.h:
7842           fix typo in gst_value_register_subtract_func declaration for gst-doc
7843
7844 2004-04-22  Benjamin Otte  <otte@gnome.org>
7845
7846         * gst/gstcaps.c: (gst_caps_from_string_inplace):
7847           fix bug when converting from empty string.
7848         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
7849         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
7850           use gst_caps_new_empty to allocate a new caps. Only that function
7851           allocates memory for caps now.
7852         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
7853         (gst_caps_remove_structure):
7854           add ability to remove one structure (but not to header yet)
7855         * gst/gstcaps.c: (gst_caps_compare_structures),
7856         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
7857         (gst_caps_structure_simplify), (gst_caps_do_simplify),
7858         * gst/gstcaps.h:
7859           add gst_caps_do_simplify that tries to simplify a caps in place.
7860           Deprecate old gst_caps_simplify function.
7861         * testsuite/caps/caps.h:
7862           add caps.h containing a common set of caps to test against.
7863         * testsuite/caps/sets.c: (check_caps), (main):
7864           use it.
7865         * testsuite/caps/.cvsignore:
7866         * testsuite/caps/Makefile.am:
7867         * testsuite/caps/simplify.c: (check_caps), (main):
7868           add test to check correctness and efficency of caps simplification.
7869
7870 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
7871
7872         reviewed by Benjamin Otte  <otte@gnome.org>
7873
7874         * gst/gstparse.c: (_gst_parse_escape):
7875           Free the GString used in _gst_parse_escape()
7876
7877 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7878
7879         * gst/gstpad.c: (gst_pad_link_negotiate):
7880           refuse to link if the link is not possible
7881         * configure.ac:
7882         * testsuite/Makefile.am:
7883         * testsuite/negotiation/.cvsignore:
7884         * testsuite/negotiation/Makefile.am:
7885         * testsuite/negotiation/pad_link.c: (main):
7886           add test that checks the above behaviour
7887
7888 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7889
7890         * docs/gst/gstreamer-sections.txt:
7891           add newly added API
7892
7893 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7894
7895         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
7896         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
7897         (gst_filesrc_open_file), (gst_filesrc_close_file),
7898         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
7899         * gst/elements/gstfilesrc.h:
7900           add support for non-regular files (#140734)
7901
7902 2004-04-21  Benjamin Otte  <otte@gnome.org>
7903
7904         * gst/gstpad.c: (gst_pad_link_fixate):
7905           add sophisticated error checking code to see if fixation functions
7906           did their fixation right
7907
7908 2004-04-21  Benjamin Otte  <otte@gnome.org>
7909
7910         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
7911           check for ANY caps before appending/unioning
7912         * gst/gstcaps.c: (gst_caps_is_subset),
7913         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
7914         (gst_caps_structure_subtract), (gst_caps_subtract):
7915         * gst/gstcaps.h:
7916           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
7917           the API. deprecate gst_caps_is_equal_fixed
7918         * gst/gstpad.c: (gst_pad_try_set_caps):
7919         * gst/gstqueue.c: (gst_queue_link):
7920           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
7921         * gst/gststructure.c: (gst_structure_get_name_id):
7922         * gst/gststructure.h:
7923           add function gst_structure_get_name_id
7924         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
7925         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
7926         (gst_value_subtract_int_range_int_range),
7927         (gst_value_subtract_double_double_range),
7928         (gst_value_subtract_double_range_double),
7929         (gst_value_subtract_double_range_double_range),
7930         (gst_value_subtract_from_list), (gst_value_subtract_list),
7931         (gst_value_can_intersect), (gst_value_subtract),
7932         (gst_value_can_subtract), (gst_value_register_subtract_func),
7933         (_gst_value_initialize):
7934         * gst/gstvalue.h:
7935           add support for subtracting values from each other. Note that
7936           subtracting means subtracting as in set theory. Required for caps
7937           stuff above.
7938         * testsuite/caps/.cvsignore:
7939         * testsuite/caps/Makefile.am:
7940         * testsuite/caps/erathostenes.c: (erathostenes), (main):
7941         * testsuite/caps/sets.c: (check_caps), (main):
7942         * testsuite/caps/subtract.c: (check_caps), (main):
7943           add tests for subtraction and equality code.
7944
7945 2004-04-20  David Schleef  <ds@schleef.org>
7946
7947         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
7948         * gst/indexers/Makefile.am:
7949         * gst/schedulers/Makefile.am:
7950         * libs/gst/bytestream/Makefile.am:
7951         * libs/gst/control/Makefile.am:
7952         * libs/gst/getbits/Makefile.am:
7953
7954 2004-04-20  David Schleef  <ds@schleef.org>
7955
7956         * common/as-libtool.mak: Fine-tune DLL building.
7957         * configure.ac: Link plugins against libgstreamer.  Define plugindir
7958         (like gst-plugins)
7959         * examples/plugins/Makefile.am: remove plugindir
7960         * gst/autoplug/Makefile.am: DLL building fixes
7961         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
7962         Windows.
7963         * gst/elements/gstelements.c: Conditionally disable pipefilter.
7964         * gst/indexers/Makefile.am: DLL building fixes
7965         * gst/schedulers/Makefile.am: DLL building fixes.
7966         * libs/gst/bytestream/Makefile.am: DLL building fixes.
7967         * libs/gst/control/Makefile.am: same
7968         * libs/gst/getbits/Makefile.am: same
7969         * testsuite/Makefile.am: New dlopen directory
7970         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
7971         when dlopened.
7972         * testsuite/dlopen/dlopen_gst.c: (main): same
7973         * testsuite/dlopen/loadgst.c: (do_test): same
7974
7975 2004-04-20  David Schleef  <ds@schleef.org>
7976
7977         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
7978         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
7979
7980 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7981
7982         * gst/gstelement.c: (gst_element_wait),
7983         (gst_element_set_time_delay), (gst_element_change_state):
7984           Use GST_TIME_*
7985
7986 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7987
7988         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
7989         (gst_spider_identity_plug):
7990           improve debugging messages
7991         * gst/gstbin.c: (gst_bin_remove_func):
7992           make sure the state_change function is only called with simple state
7993           transitions
7994
7995 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7996
7997         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
7998         (gst_fakesink_set_property), (gst_fakesink_chain):
7999         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
8000         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
8001         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
8002         * gst/elements/gstidentity.c: (gst_identity_chain),
8003         (gst_identity_set_property):
8004         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
8005         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
8006           add warnings to _set_property for unknown arguments
8007           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
8008
8009 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8010
8011         * Makefile.am:
8012         * docs/manuals.mak:
8013           add .po file download snippet
8014           fix a bug in the doc makefile
8015
8016 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8017
8018         * Makefile.am:
8019         * po/LINGUAS:
8020         * po/en_GB.po:
8021           Added en_GB translation (Gareth Owen)
8022
8023 2004-04-20  Johan Dahlin  <johan@gnome.org>
8024
8025         * gst/gstpad.c (_invent_event): Clean up
8026
8027 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8028
8029         * testsuite/caps/filtercaps.c: (main):
8030           fix test to test things correctly (caps are complicated)
8031
8032 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8033
8034         * testsuite/caps/Makefile.am:
8035         * testsuite/caps/filtercaps.c: (main):
8036           add test (that doesn't work right now, but should)
8037
8038 2004-04-19  David Schleef  <ds@schleef.org>
8039
8040         * configure.ac: Add test for allowing unaligned access.  Add define
8041         to put in gstconfig.h.
8042         * docs/gst/gstreamer-sections.txt: New symbols
8043         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
8044         * docs/gst/tmpl/gstfilesrc.sgml:
8045         * docs/gst/tmpl/gstparse.sgml:
8046         * docs/gst/tmpl/gsttypes.sgml:
8047         * docs/gst/tmpl/gstutils.sgml:
8048         * docs/gst/tmpl/gstvalue.sgml:
8049         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
8050         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
8051         on most !i386/!powerpc architectures.  From Daniel Gazard
8052         <daniel.gazard@free.fr>.  (bug #140156)
8053         * po/af.po: Check in changes made by gettext.
8054         * po/az.po:
8055         * po/fr.po:
8056         * po/nl.po:
8057         * po/sr.po:
8058         * po/sv.po:
8059
8060 2004-04-20  Benjamin Otte  <otte@gnome.org>
8061
8062         * gst/schedulers/entryscheduler.c: 
8063         (gst_entry_scheduler_yield):
8064           refuse to yield when decoupled elements insist on doing that.
8065           At least it's better than crashing
8066
8067 2004-04-19  David Schleef  <ds@schleef.org>
8068
8069         * docs/libs/Makefile.am: Change sinclude to include
8070         * docs/gst/Makefile.am: same
8071         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
8072
8073 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8074
8075         * po/LINGUAS:
8076         * po/uk.po:
8077           Added Ukrainian translation (Maxim V. Dziumanenko)
8078
8079 2004-04-19  Johan Dahlin  <johan@gnome.org>
8080
8081         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
8082         checking here, do it before calling the function.
8083         Clean up, use for loops instead of while loops while iterating
8084         over lists.
8085
8086         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
8087         in debug message.
8088         (gst_spider_create_and_plug): Improve debug message.
8089         General: Replace while loops which iterates over GLists with for
8090         loops. Which are much cleaner, improves readability, especially
8091         for gst_spider_identity_plug
8092
8093         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
8094         fixes bug 140477
8095
8096 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8097
8098         * po/LINGUAS:
8099         * po/tr.po:
8100           Added Turkish translation (Baris Cicek)
8101
8102 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8103
8104         * docs/faq/troubleshooting.xml:
8105           Mention gst-register in the FAQ (fixes 139045).
8106
8107 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8108
8109         * docs/gst/gstreamer-sections.txt:
8110
8111 2004-04-17  Benjamin Otte  <otte@gnome.org>
8112
8113         * gst/gstelement.c: (gst_element_dispose):
8114           simplify
8115         * gst/gstpad.c: (gst_pad_call_chain_function):
8116           don't create loads of events due to bad macro usage
8117
8118 2004-04-16  David Schleef  <ds@schleef.org>
8119
8120         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
8121         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
8122         * gst/gstvalue.c: (gst_value_serialize_buffer),
8123         (gst_value_deserialize_buffer), (gst_type_is_fixed),
8124         (_gst_value_initialize): Create a new function gst_type_is_fixed()
8125         to indicate types that are fixed wrt caps or not.  Switching to
8126         this function fixes (bug #140298).
8127         * gst/gstvalue.h:
8128
8129 2004-04-16  David Schleef  <ds@schleef.org>
8130
8131         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
8132         for GST_UNALIGNED_ACESS, since we essentially know which archs
8133         are ok.
8134
8135 2004-04-17  Benjamin Otte  <otte@gnome.org>
8136
8137         * docs/gst/Makefile.am:
8138           ignore gst/parse directory when building docs (fixes #140205)
8139
8140 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8141
8142         * testsuite/refcounting/mem.c: (vmsize):
8143           do error checking
8144
8145 2004-04-16  Johan Dahlin  <johan@gnome.org>
8146
8147         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
8148         and gst_pad_call_get_function.
8149
8150 2004-04-15  David Schleef  <ds@schleef.org>
8151
8152         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
8153         checks if we can access unaligned memory.
8154         * configure.ac: Use it.
8155
8156 2004-04-16  Benjamin Otte  <otte@gnome.org>
8157
8158         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
8159         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8160         * gst/elements/gstfilesrc.h:
8161           s/seek_happened/need_discont/ and require discont before sending any
8162           data
8163
8164 2004-04-15  David Schleef  <ds@schleef.org>
8165
8166         * gst/gstvalue.c: (gst_value_serialize_buffer),
8167         (gst_value_deserialize_buffer), (_gst_value_initialize):
8168         Register these types as fundamental types. (bug #140015)
8169
8170 2004-04-16  Benjamin Otte  <otte@gnome.org>
8171
8172         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
8173         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
8174         (gst_pad_pull):
8175           implement enforcing discont events before buffers are passed. This
8176           allows state changes of only some elements and later correctly going
8177           on where they left off (or in short: you can now set audio sinks to
8178           NULL to release the device when the pipeline is paused)
8179         * gst/gstpad.c: (gst_pad_call_chain_function),
8180         (gst_pad_call_get_function):
8181         * gst/gstpad.h:
8182           add gst_pad_call_chain_function and gst_pad_call_get_function for
8183           scheduler interaction. They are required because of the changes
8184           above.
8185         * gst/schedulers/entryscheduler.c: (get_buffer),
8186         (gst_entry_scheduler_chain_wrapper),
8187         (gst_entry_scheduler_get_wrapper),
8188         (gst_entry_scheduler_state_transition),
8189         (gst_entry_scheduler_pad_link):
8190         * gst/schedulers/gstbasicscheduler.c:
8191         (gst_basic_scheduler_chain_wrapper),
8192         (gst_basic_scheduler_src_wrapper),
8193         (gst_basic_scheduler_chainhandler_proxy),
8194         (gst_basic_scheduler_gethandler_proxy),
8195         (gst_basic_scheduler_cothreaded_chain),
8196         (gst_basic_scheduler_chain_elements):
8197         * gst/schedulers/gstoptimalscheduler.c:
8198         (get_group_schedule_function), (pad_clear_queued),
8199         (gst_opt_scheduler_pad_link):
8200           use the new functions instead of calling get/chain-functions
8201           directly.
8202
8203 2004-04-15  David Schleef  <ds@schleef.org>
8204
8205         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
8206         * docs/gst/tmpl/gstinfo.sgml: same
8207         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
8208         gtk-doc put here.
8209         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
8210         * examples/queue/queue.c: (main):  We iterate pipelines, not
8211         bins.  (bug #139996)
8212
8213 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8214
8215         * docs/pwg/advanced-types.xml:
8216           Add MS RLE support. Also document Qt RLE although I have no sample
8217           files for that yet. And document an extra property for ADPCM.
8218
8219 2004-04-15  David Schleef  <ds@schleef.org>
8220
8221         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
8222         (_gst_plugin_fault_handler_setup):  Disable more stuff on
8223         Windows.
8224
8225 2004-04-15  David Schleef  <ds@schleef.org>
8226
8227         * gst/gstinfo.c: (_gst_debug_init): Change some internal
8228         symbol names to not conflict with new gstinfo.h symbols.
8229         * gst/gstinfo.h: Add inline functions for all those crazy
8230         compilers that don't know how to handle variadic macros (MSVC).
8231
8232 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8233
8234         * configure.ac: bump nano to 1
8235
8236 === release 0.8.1 ===
8237
8238 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8239
8240         * NEWS:
8241         * RELEASE:
8242         * configure.ac:
8243           releasing 0.8.1, "Snow Brigade"
8244
8245 2004-04-14  David Schleef  <ds@schleef.org>
8246
8247         * testsuite/Makefile.am: define tests_ignore
8248         * testsuite/Rules: Added new tests_ignore, which get compiled,
8249         but not run (generally because they're inconsistent or have
8250         heisenbugs).  Now we can ensure all the .c files compile in
8251         testsuite/.
8252         * testsuite/bins/Makefile.am: define tests_ignore
8253         * testsuite/bytestream/Makefile.am:
8254         * testsuite/caps/Makefile.am:
8255         * testsuite/clock/Makefile.am:
8256         * testsuite/debug/Makefile.am:
8257         * testsuite/debug/global.c: (gst_debug_log_one),
8258         (gst_debug_log_two): Fix compilation problem.
8259         * testsuite/dynparams/Makefile.am:
8260         * testsuite/elements/Makefile.am:
8261         * testsuite/ghostpads/Makefile.am:
8262         * testsuite/indexers/Makefile.am:
8263         * testsuite/parse/Makefile.am:
8264         * testsuite/plugin/Makefile.am:
8265         * testsuite/refcounting/Makefile.am:
8266         * testsuite/refcounting/element_pad.c: (main): Don't return leak
8267         results, because it's not calculated correctly.
8268         * testsuite/refcounting/pad.c: (main): same
8269         * testsuite/states/Makefile.am:
8270         * testsuite/tags/Makefile.am:
8271         * testsuite/threads/Makefile.am:
8272
8273 2004-04-14  David Schleef  <ds@schleef.org>
8274
8275         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
8276         generating bad code around the cpu detection asm code.
8277
8278 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8279
8280         * tools/gst-inspect.c: (print_element_info):
8281           print numeric version of rank as well, since we added some - 1
8282           rank values to elements
8283
8284 2004-04-13  David Schleef  <ds@schleef.org>
8285
8286         * configure.ac:  Disable various code when compiling for MinGW.
8287         * gst/elements/Makefile.am:
8288         * gst/elements/gstelements.c:
8289         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
8290         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
8291         * gst/registries/gstxmlregistry.c: (make_dir):
8292
8293 2004-04-13  David Schleef  <ds@schleef.org>
8294
8295         * gst/Makefile.am:
8296         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
8297         assembly.
8298         * gst/gstcpuid_i386.s: remove
8299
8300 2004-04-13  David Schleef  <ds@schleef.org>
8301
8302         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
8303         seems to think it needs to be done.
8304         * docs/gst/tmpl/gstfakesink.sgml:
8305         * docs/gst/tmpl/gstfakesrc.sgml:
8306         * docs/gst/tmpl/gstfdsink.sgml:
8307         * docs/gst/tmpl/gstfdsrc.sgml:
8308         * docs/gst/tmpl/gstfilesink.sgml:
8309         * docs/gst/tmpl/gstfilesrc.sgml:
8310         * docs/gst/tmpl/gstidentity.sgml:
8311         * docs/gst/tmpl/gstmd5sink.sgml:
8312         * docs/gst/tmpl/gstmultifilesrc.sgml:
8313         * docs/gst/tmpl/gstpipefilter.sgml:
8314         * docs/gst/tmpl/gstshaper.sgml:
8315         * docs/gst/tmpl/gstspider.sgml:
8316         * docs/gst/tmpl/gstspideridentity.sgml:
8317         * docs/gst/tmpl/gststatistics.sgml:
8318         * docs/gst/tmpl/gsttee.sgml:
8319         * docs/gst/tmpl/gsttypefind.sgml:
8320         * docs/gst/tmpl/gstutils.sgml:
8321
8322 2004-04-13  David Schleef  <ds@schleef.org>
8323
8324         * configure.ac: Changes to remove POSIXisms (mmap in this case)
8325         and to build DLLs on Windows.
8326         * gst/Makefile.am:
8327         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8328         (gst_filesrc_open_file):
8329         * gst/schedulers/Makefile.am:
8330
8331 2004-04-13  David Schleef  <ds@schleef.org>
8332
8333         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
8334         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
8335         fixating lists.
8336
8337 2004-04-12  David Schleef  <ds@schleef.org>
8338
8339         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
8340         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
8341         to using it.
8342         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
8343         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
8344         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
8345         * gst/gststructure.c: (gst_structure_set_valist),
8346         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
8347         support for buffers.
8348         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
8349         intended to be const.
8350         * gst/gsttag.h: same
8351         * gst/gstvalue.c: (gst_value_serialize_buffer),
8352         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
8353         to (de)serialize buffers.
8354         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
8355         * testsuite/caps/string-conversions.c: (main):
8356         * testsuite/caps/value_serialize.c: add new test
8357
8358 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8359
8360         * docs/pwg/advanced-types.xml:
8361           Document MS video 1 (video/x-msvideocodec) mimetype/format.
8362
8363 2004-04-11  Benjamin Otte  <otte@gnome.org>
8364
8365         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
8366           rename categories to basic_*
8367         * gst/schedulers/gstbasicscheduler.c: 
8368         (gst_basic_scheduler_chain_wrapper),
8369         (gst_basic_scheduler_chainhandler_proxy),
8370         (gst_basic_scheduler_gethandler_proxy),
8371         (gst_basic_scheduler_eventhandler_proxy):
8372           debugging category fixes - put common stuff in log category
8373         * gst/schedulers/gstbasicscheduler.c: 
8374         (gst_basic_scheduler_chain_elements):
8375           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
8376           active and linking two active chains
8377
8378 2004-04-10  Benjamin Otte  <otte@gnome.org>
8379
8380         * docs/pwg/intro-preface.xml:
8381           fix dead links and remove reference to Wiki
8382
8383 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8384
8385         * gst/schedulers/gstbasicscheduler.c:
8386           make sure we can switch back to the main function if we're still in
8387           the main function (supposed to fix #139617)
8388         * gst/schedulers/gthread-cothreads.h:
8389           don't throw an error when switching to the same cothread
8390
8391 2004-04-09  Benjamin Otte  <otte@gnome.org>
8392
8393         * gst/gstbin.c: (gst_bin_get_type):
8394         * gst/gstclock.c: (gst_clock_get_type):
8395         * gst/gstindex.c: (gst_index_get_type):
8396         * gst/gstobject.c: (gst_object_get_type),
8397         (gst_signal_object_get_type):
8398         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
8399         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
8400         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
8401         * gst/gstqueue.c: (gst_queue_get_type):
8402         * gst/gstregistry.c: (gst_registry_get_type):
8403         * gst/gstsystemclock.c: (gst_system_clock_get_type):
8404         * gst/gstthread.c: (gst_thread_get_type):
8405           don't use memchunks for these objects, use malloc instead
8406
8407 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
8408
8409         * docs/gst/.cvsignore:
8410         * docs/gst/Makefile.am:
8411         * docs/gst/gstreamer-sections.txt:
8412         * docs/gst/tmpl/gstaggregator.sgml:
8413         * docs/gst/tmpl/gstbuffer.sgml:
8414         * docs/gst/tmpl/gstclock.sgml:
8415         * docs/gst/tmpl/gstelement.sgml:
8416         * docs/gst/tmpl/gstfakesink.sgml:
8417         * docs/gst/tmpl/gstfakesrc.sgml:
8418         * docs/gst/tmpl/gstfdsink.sgml:
8419         * docs/gst/tmpl/gstfdsrc.sgml:
8420         * docs/gst/tmpl/gstfilesink.sgml:
8421         * docs/gst/tmpl/gstfilesrc.sgml:
8422         * docs/gst/tmpl/gstidentity.sgml:
8423         * docs/gst/tmpl/gstindex.sgml:
8424         * docs/gst/tmpl/gstinfo.sgml:
8425         * docs/gst/tmpl/gstmd5sink.sgml:
8426         * docs/gst/tmpl/gstmultifilesrc.sgml:
8427         * docs/gst/tmpl/gstpad.sgml:
8428         * docs/gst/tmpl/gstpipefilter.sgml:
8429         * docs/gst/tmpl/gstpipeline.sgml:
8430         * docs/gst/tmpl/gstpluginfeature.sgml:
8431         * docs/gst/tmpl/gstqueue.sgml:
8432         * docs/gst/tmpl/gstregistry.sgml:
8433         * docs/gst/tmpl/gstscheduler.sgml:
8434         * docs/gst/tmpl/gstshaper.sgml:
8435         * docs/gst/tmpl/gstspider.sgml:
8436         * docs/gst/tmpl/gstspideridentity.sgml:
8437         * docs/gst/tmpl/gststatistics.sgml:
8438         * docs/gst/tmpl/gstsystemclock.sgml:
8439         * docs/gst/tmpl/gsttee.sgml:
8440         * docs/gst/tmpl/gstthread.sgml:
8441         * docs/gst/tmpl/gsttypefind.sgml:
8442         * docs/gst/tmpl/gstutils.sgml:
8443           further doc build fixes
8444
8445 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
8446
8447         * docs/gst/Makefile.am:
8448           make docs exit on scanning problems
8449           fix nonsrcdir build issues
8450         * docs/gst/gstreamer-sections.txt:
8451           adding stuff from -unused
8452         * gst/gstqueue.h:
8453           create GstQueueSize
8454         * gst/schedulers/cothreads_compat.h:
8455           fix cothread warnings
8456
8457 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
8458
8459         * docs/gst/gstreamer-sections.txt:
8460           remove defines deprecated by Benjamin
8461
8462 2004-04-07  Benjamin Otte  <otte@gnome.org>
8463
8464         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
8465           when the buffer is complete, don't check if other buffers are needed
8466         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
8467           check that the offset is >0 so we don't try to read before the
8468           beginning of the file
8469         * gst/gstpad.c: (gst_pad_set_pad_template):
8470           sink the template, so we don't end up with 130k pad templates
8471
8472 2004-04-06  Benjamin Otte  <otte@gnome.org>
8473
8474         * gst/autoplug/gstspider.c: (gst_spider_link_add):
8475           don't ref the element, adding already reffed it. And we didn't unref
8476           it later anyway... (huge memleak when you used many spider elements)
8477         * gst/gstelement.c: (gst_element_base_class_finalize):
8478         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
8479         (gst_element_register):
8480         * gst/gsturi.c: (gst_element_make_from_uri):
8481           use gst_object_(un)ref instead of g_object(un)ref
8482
8483 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8484
8485         * gst/gstbuffer.h:
8486           remove macro that wouldn't work anymore because struct member has
8487           been removed.
8488         * gst/schedulers/entryscheduler.c: (schedule_forward):
8489           fix segfault for unconnected pads
8490         
8491 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8492
8493         reviewed by David Schleef <ds@schleef.org>
8494
8495         * gst/gstinfo.h:
8496           *_FORMAT modifiers should require putting a % in front of them for
8497           consistency reasons.
8498
8499 2004-04-05  Colin Walters  <walters@redhat.com>
8500
8501         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
8502         space.
8503
8504 2004-04-05  Benjamin Otte  <otte@gnome.org>
8505
8506         * configure.ac:
8507         * gst/Makefile.am:
8508         * gst/gst_private.h:
8509         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
8510           add support for detecting if GStreamer runs inside valgrind.
8511           requires valgrind (d'oh) and --enable-debug for correct cdetection.
8512           print a big message in valgrind that GStreamer has detected it's
8513           running inside and might now use different code.
8514         * gst/gstmemchunk.c: (populate), (free_area),
8515         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
8516         (gst_mem_chunk_free):
8517           flag memchunks for valgrind, so it can detect leaking of chunks.
8518           This allows detecting leaks of GstBuffer and GstEvent correctly
8519           inside valgrind.
8520
8521 2004-04-05  David Schleef  <ds@schleef.org>
8522
8523         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
8524           jensgr@gmx.net (Jens Granseuer)
8525
8526 2004-04-05  David Schleef  <ds@schleef.org>
8527
8528         * gst/gstbuffer.c: (_gst_buffer_sub_free),
8529         (gst_buffer_default_free), (gst_buffer_default_copy),
8530         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
8531         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
8532         structures in one place.
8533
8534 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8535
8536         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
8537           (GST_TIME_FORMAT, GST_TIME_ARGS)
8538
8539 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8540
8541         * testsuite/elements/Makefile.am:
8542           disable test until it stops breaking make distcheck
8543
8544 2004-04-05  Johan Dahlin  <johan@gnome.org>
8545
8546         * po/sv.po: Updated translation
8547
8548 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8549
8550         * gst/gstplugin.c: (gst_plugin_load_file):
8551           fix segfault for when original plugin was loaded statically
8552
8553 2004-04-05  Benjamin Otte  <otte@gnome.org>
8554
8555         * testsuite/debug/category.c: (main):
8556         * testsuite/debug/commandline.c: (main):
8557         * testsuite/debug/output.c: (main):
8558           fix tests to work again with debugging enabled
8559
8560 2004-04-05  Benjamin Otte  <otte@gnome.org>
8561
8562         * gst/schedulers/gstbasicscheduler.c:
8563         (gst_basic_scheduler_pad_link):
8564           fix to work with recent scheduling changes
8565
8566 2004-04-05  Benjamin Otte  <otte@gnome.org>
8567
8568         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
8569         prepareChangeLog doesn't work when cvs indents):
8570           don't throw an error when no element can be scheduled, there's too
8571           many weird reasons why it doesn't work. Return STOPPED instead.
8572           decoupled elemts' schedulability doesn't depend on bufpens.
8573
8574 2004-04-04  Benjamin Otte  <otte@gnome.org>
8575
8576         * gst/schedulers/gstbasicscheduler.c:
8577         (gst_basic_scheduler_pad_select):
8578           fix uninitialized variable warnings
8579
8580 2004-04-04  Benjamin Otte  <otte@gnome.org>
8581
8582         * gst/gstpad.c: (gst_pad_collect_valist):
8583           fix uninitialized variable warning
8584         * gst/schedulers/entryscheduler.c: (schedule_forward):
8585           fix shadowed variable
8586
8587 2004-04-04  Benjamin Otte  <otte@gnome.org>
8588
8589         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
8590         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
8591         (gst_pad_select):
8592         * gst/gstpad.h:
8593         * gst/gstscheduler.c: (gst_scheduler_pad_select),
8594         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
8595         * gst/gstscheduler.h:
8596           implement gst_pad_collect as replacement for gst_pad_select.
8597           deprecate gst_pad_select and gst_scheduler_(un)lock_element
8598           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
8599           new pad_select, lock and unlock calls.
8600         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
8601         * gst/cothreads.h:
8602         * gst/schedulers/cothreads_compat.h:
8603         * gst/schedulers/gthread-cothreads.h:
8604           remove unused cothread_lock and cothread_unlock calls
8605         * gst/schedulers/entryscheduler.c:
8606         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
8607         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
8608         (gst_entry_scheduler_pad_select):
8609           update to new API
8610         * gst/schedulers/gstbasicscheduler.c:
8611         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
8612         (gst_basic_scheduler_pad_select):
8613           remove useless lock and unlock calls, update pad_select to new API
8614           (untested)
8615         * gst/schedulers/gstoptimalscheduler.c:
8616         (gst_opt_scheduler_class_init):
8617           remove useless select, lock and unlock function calls
8618         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
8619           use gst_pad_collect instead of gst_pad_select
8620
8621 2004-04-04  Benjamin Otte  <otte@gnome.org>
8622
8623         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
8624         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
8625         (schedule_next_element), (print_entry):
8626           add can_schedule_pad to handle element states.
8627           add schedule_forward to select the correct entry to schedule next
8628
8629 2004-04-03  Benjamin Otte  <otte@gnome.org>
8630
8631         * gst/schedulers/entryscheduler.c: 
8632           remove unused variable, fix error inside Rb, fix compile warning in
8633           unreachable code
8634
8635 2004-04-03  Benjamin Otte  <otte@gnome.org>
8636
8637         * gst/schedulers/entryscheduler.c:
8638           completely revamp the inner workings, so it's a lot easier to
8639           understand and extend
8640
8641 2004-04-03  Andy Wingo  <wingo@pobox.com>
8642
8643         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
8644         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
8645         This allows better introspection of pipeline topology.
8646         (add_to_chain): Don't do trickery to put loop elements first;
8647         rather, queue a chain sort by marking the chain as dirty.
8648         (remove_from_chain): Mark the chain dirty.
8649         (sort_chain): New function. Sorts the group list so that terminal
8650         sinks are first. This means elements on the sink side will be
8651         preferentially sscheduled before elements on the src side of the
8652         pipeline.
8653         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
8654         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
8655         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
8656         (group_inc_link): Change argument and variable names to match the
8657         new link structure member names (src and sink).
8658         (group_dec_link): Add some description
8659
8660 2004-04-03  Benjamin Otte  <otte@gnome.org>
8661
8662         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
8663         * gst/gstinfo.h:
8664         * testsuite/debug/category.c: (main):
8665         * testsuite/debug/commandline.c: (main):
8666         * testsuite/debug/output.c: (main):
8667         * testsuite/debug/printf_extension.c: (main):
8668           fix to successfully build and test with --disable-gst-debug
8669           configure switch (fixes #138705)
8670
8671 2004-04-03  Benjamin Otte  <otte@gnome.org>
8672
8673         * docs/pwg/building-boiler.xml:
8674           add cvs login line and s/anonymous/anoncvs/
8675
8676 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
8677
8678         reviewed by Benjamin Otte  <otte@gnome.org>
8679
8680         * gst/gststructure.c: (gst_structure_free):
8681           memleak fix: free fields array (partial fix for #134839)
8682
8683 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8684
8685         * docs/random/ds/0.9-suggested-changes:
8686           Add a note to change handoff use in fakesrc to be usable in
8687           a more generic way (fakesrc should be renamed to appsrc or so).
8688         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8689           Change signal type to scope, so we can fill the buffer in the
8690           handoff handler (that's the whole use of this signal...).
8691
8692 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8693
8694         * docs/pwg/other-ntoone.xml:
8695           Document muxers and n-to-1 elements.
8696
8697 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
8698
8699         * gst/registries/gstxmlregistry.c
8700         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
8701         determine if a file is a G_MODULE. The old one discards paths
8702         containing "so" somewhere in the middle. My home directory is
8703         called "soto". Go figure...
8704
8705 2004-03-31  David Schleef  <ds@schleef.org>
8706
8707         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
8708         to eventually deprecate gst_buffer_merge().  (bug: #136408)
8709         * gst/gstbuffer.h:
8710
8711 2004-03-31  David Schleef  <ds@schleef.org>
8712
8713         * gst/gstvalue.c: (gst_value_union_int_int_range),
8714         (gst_value_union_int_range_int_range), (gst_value_can_union),
8715         (gst_value_union), (_gst_value_initialize):  Add some union
8716         implementations.  We didn't have any previously.
8717         * testsuite/caps/Makefile.am:
8718         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
8719         (gst_audioscale_getcaps), (test_caps), (main): A little test
8720         that is the same as the caps manipulation in audioscale.
8721
8722 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8723
8724         * docs/faq/general.xml:
8725           add entry about "does gst support format X?"
8726
8727 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8728
8729         * gst/gstthread.c:
8730           fix docs
8731         * gst/gstutils.h:
8732           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
8733
8734 2004-03-30  Benjamin Otte  <otte@gnome.org>
8735
8736         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
8737           set the offset of the buffer to the requested offset
8738         * gst/elements/gsttypefind.c: (stop_typefinding):
8739           revert patch 1.18 (which I unfortunately don't know the reason for).
8740           This is needed to allow downstream elements to seek. Otherwise
8741           typefind might overwrite a previous seek by downstream elements.
8742           This lead to errors with id3tag and typefind on some mp3s.
8743         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8744         (gst_entry_scheduler_iterate):
8745           be more verbose when debugging
8746
8747 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8748
8749         * gst/gstcaps.c: (gst_caps_from_string_inplace):
8750           make sure we don't get NULL strings
8751
8752 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8753
8754         * gst/gstcaps.c:
8755         * gst/gstelement.c:
8756         * gst/gstelementfactory.c: (gst_element_factory_get_type):
8757         * gst/gstindex.c: (gst_index_resolver_get_type),
8758         (gst_index_get_type), (gst_index_factory_get_type):
8759         * gst/gstinfo.c:
8760         * gst/gstpad.c:
8761         * gst/gstplugin.c:
8762         * gst/gsturi.c: (gst_uri_handler_get_type):
8763         * gst/gstvalue.c:
8764           first batch of documentation fixes
8765
8766 2004-03-29  David Schleef  <ds@schleef.org>
8767
8768         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
8769         * docs/gst/gstreamer-docs.sgml:  More hacking
8770         * docs/gst/gstreamer-sections.txt:
8771         * docs/gst/tmpl/cothreads_compat.sgml:
8772         * docs/gst/tmpl/gstcaps.sgml:
8773         * docs/gst/tmpl/gstclock.sgml:
8774         * docs/gst/tmpl/gstelement.sgml:
8775         * docs/gst/tmpl/gstevent.sgml:
8776         * docs/gst/tmpl/gstpad.sgml:
8777         * docs/gst/tmpl/gstutils.sgml:
8778         * docs/gst/tmpl/gstxml.sgml:
8779         * docs/gst/tmpl/gthread-cothreads.sgml:
8780         * docs/random/ds/0.9-suggested-changes:
8781         * gst/elements/gstfakesink.h: doc fixes
8782         * gst/elements/gstfakesrc.h: doc fixes
8783         * gst/gstcaps.c: doc fixes
8784         * gst/gstcaps.h: doc fixes
8785         * gst/gstelement.c: doc fixes
8786         * gst/gstelement.h: doc fixes
8787         * gst/gstindex.c: doc fixes
8788         * gst/gstinfo.c: doc fixes
8789         * gst/gstpad.c: doc fixes
8790         * gst/gstpad.h: doc fixes
8791         * gst/gstplugin.c: doc fixes
8792         * gst/gsttypefind.h: doc fixes
8793         * gst/gsturi.c: doc fixes
8794         * gst/gstvalue.c: doc fixes
8795
8796 2004-03-29  Colin Walters  <walters@redhat.com>
8797
8798         * gst/registries/gstxmlregistry.c (get_time)
8799         (plugin_times_older_than_recurse):
8800         Use the result of stat to determine whether a path is a file,
8801         so we don't attempt to opendir() files.
8802
8803 2004-03-29  Benjamin Otte  <otte@gnome.org>
8804
8805         * gst/gstpad.c: (gst_pad_set_explicit_caps):
8806           print caps in debugging output when setting caps failed
8807         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8808         (schedule_next_element), (get_buffer), (run_chainhandler),
8809         (element_may_start), (gst_entry_scheduler_chain_handler),
8810         (gst_entry_scheduler_get_handler),
8811         (gst_entry_scheduler_state_transition),
8812         (gst_entry_scheduler_pad_link):
8813           make this scheduler a testcase for mandatory
8814           discont-before-first-buffer which is needed if we want to allow apps
8815           to release the sound device.
8816           add SCHED_ASSERT macro to print scheduler state before an assertion
8817           triggers.
8818
8819 2004-03-29  Benjamin Otte  <otte@gnome.org>
8820
8821         * COPYING:
8822           replace by LGPL (former COPYING.LIB). The core is completely
8823           licensed LGPL.
8824         * COPYING.LIB:
8825           remove
8826
8827 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8828
8829         * po/af.po:
8830         * po/sv.po:
8831           updated Afrikaans and Swedish
8832
8833 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8834
8835         * po/LINGUAS:
8836         * po/az.po:
8837           adding Azerbaijani (Mətin Əmirov)
8838
8839 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
8840
8841         * gst/gstelement.h: 
8842         * gst/gstelement.c (gst_element_set_time_delay): New function for
8843         setting element time taking into account a hardware buffering
8844         delay.
8845         (gst_element_set_time): Now just an invocation of
8846         gst_element_set_time_delay.
8847         * gst/gstclock.h: 
8848         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
8849         allowing to set event times in the future.
8850         (gst_clock_get_event_time): Now just an invocation of
8851         gst_clock_get_event_time_delay.
8852
8853 2004-03-28  Benjamin Otte  <otte@gnome.org>
8854
8855         * gst/gstbin.c: (gst_bin_set_element_sched),
8856         (gst_bin_unset_element_sched):
8857           don't add decoupled elements to schedulers - otherwise it's
8858           impossible to control if a link to a decoupled element was already
8859           removed from a scheduler or not.
8860         * gst/schedulers/cothreads_compat.h:
8861         * gst/schedulers/gthread-cothreads.h:
8862           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
8863           is no "unused" warning.
8864         * gst/schedulers/Makefile.am:
8865         * gst/schedulers/entryscheduler.c:
8866           add new scheduler, based on ideas from talking to David and Martin.
8867           It's supposed to be small and correct. Currently it's also slow (but
8868           it's not noticable)
8869         * examples/retag/retag.c: (main):
8870         * testsuite/bytestream/test1.c: (main):
8871           fix missing NULLs at end of variadic functions
8872         * testsuite/elements/.cvsignore:
8873           update
8874
8875 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
8876
8877         * gst/gstevent.h:
8878         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
8879
8880 2004-03-25  David Schleef  <ds@schleef.org>
8881
8882         * docs/gst/gstreamer-sections.txt:  More doc hacking.
8883         * docs/gst/tmpl/gstaggregator.sgml:
8884         * docs/gst/tmpl/gstautoplugfactory.sgml:
8885         * docs/gst/tmpl/gstbin.sgml:
8886         * docs/gst/tmpl/gstbuffer.sgml:
8887         * docs/gst/tmpl/gstbufferstore.sgml:
8888         * docs/gst/tmpl/gstfakesink.sgml:
8889         * docs/gst/tmpl/gstfakesrc.sgml:
8890         * docs/gst/tmpl/gstmd5sink.sgml:
8891         * docs/gst/tmpl/gstreamer-unused.sgml:
8892         * docs/gst/tmpl/gstsearchfuncs.sgml:
8893         * docs/gst/tmpl/gstshaper.sgml:
8894         * docs/gst/tmpl/gstspider.sgml:
8895         * docs/gst/tmpl/gsttee.sgml:
8896         * docs/gst/tmpl/gstutils.sgml:
8897         * docs/gst/tmpl/gstvalue.sgml:
8898         * docs/gst/tmpl/gstxml.sgml:
8899         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
8900         and we don't support it.
8901         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
8902         (gst_use_threads), (gst_has_threads): same
8903         * gst/gstthreaddummy.c: same
8904         * gst/autoplug/gstspider.c: Make gst_spider_details static.
8905         * gst/autoplug/gstspider.h: same
8906         * gst/elements/gstaggregator.h: Remove bogus function from header
8907         * gst/elements/gstfakesink.h: same
8908         * gst/elements/gstfakesrc.h: same
8909         * gst/elements/gstmd5sink.h: same
8910         * gst/elements/gstshaper.h: same
8911         * gst/elements/gsttee.h: same
8912         * gst/gstbin.c: doc fixes
8913         * gst/gstbin.h: Remove unused definition.
8914         * gst/gstbuffer.c: doc fixes
8915         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
8916         * gst/gstfilter.c: doc fixes
8917         * gst/gsttag.c: doc fixes
8918         * gst/gstvalue.c: doc fixes
8919
8920 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8921
8922         * docs/pwg/advanced-types.xml:
8923           Document typefinding.
8924         * docs/pwg/other-oneton.xml:
8925           Document one-to-n elements, demuxers and parsers.
8926
8927 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
8928
8929         reviewed by: David Schleef  <ds@schleef.org>
8930
8931         * configure.ac: Check bison version (bug #127838)
8932
8933 2004-03-25  David Schleef  <ds@schleef.org>
8934
8935         * docs/gst/gstreamer-docs.sgml: More fine tuning.
8936         * docs/gst/gstreamer-sections.txt:
8937         * docs/gst/tmpl/gstautoplug.sgml:
8938         * docs/gst/tmpl/gststaticautoplug.sgml:
8939         * docs/gst/tmpl/gststaticautoplugrender.sgml:
8940         * docs/gst/tmpl/gstutils.sgml:
8941         * docs/gst/tmpl/gstxml.sgml:
8942
8943 2004-03-24  David Schleef  <ds@schleef.org>
8944
8945         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
8946         manual being such complete crap, that I decided to do major
8947         hacking of it.  This checkin replaces any fine tuning that
8948         may have been done previously, with the benefit of actually
8949         being complete for much of the API that was changed since
8950         0.6.  Further fine tuning will occur shortly.  (bug #134721)
8951         * docs/gst/gstreamer-sections.txt:
8952         * docs/gst/tmpl/GstBin.sgml:
8953         * docs/gst/tmpl/GstBuffer.sgml:
8954         * docs/gst/tmpl/GstCaps.sgml:
8955         * docs/gst/tmpl/GstClock.sgml:
8956         * docs/gst/tmpl/GstCompat.sgml:
8957         * docs/gst/tmpl/GstData.sgml:
8958         * docs/gst/tmpl/GstElement.sgml:
8959         * docs/gst/tmpl/GstEvent.sgml:
8960         * docs/gst/tmpl/GstIndex.sgml:
8961         * docs/gst/tmpl/GstStructure.sgml:
8962         * docs/gst/tmpl/GstTag.sgml:
8963         * docs/gst/tmpl/cothreads.sgml:
8964         * docs/gst/tmpl/cothreads_compat.sgml:
8965         * docs/gst/tmpl/gettext.sgml:
8966         * docs/gst/tmpl/grammar.tab.sgml:
8967         * docs/gst/tmpl/gst-i18n-app.sgml:
8968         * docs/gst/tmpl/gst-i18n-lib.sgml:
8969         * docs/gst/tmpl/gst.sgml:
8970         * docs/gst/tmpl/gst_private.sgml:
8971         * docs/gst/tmpl/gstaggregator.sgml:
8972         * docs/gst/tmpl/gstarch.sgml:
8973         * docs/gst/tmpl/gstatomic.sgml:
8974         * docs/gst/tmpl/gstatomic_impl.sgml:
8975         * docs/gst/tmpl/gstbin.sgml:
8976         * docs/gst/tmpl/gstbuffer.sgml:
8977         * docs/gst/tmpl/gstbufferstore.sgml:
8978         * docs/gst/tmpl/gstcaps.sgml:
8979         * docs/gst/tmpl/gstclock.sgml:
8980         * docs/gst/tmpl/gstcompat.sgml:
8981         * docs/gst/tmpl/gstconfig.sgml:
8982         * docs/gst/tmpl/gstcpu.sgml:
8983         * docs/gst/tmpl/gstdata.sgml:
8984         * docs/gst/tmpl/gstdata_private.sgml:
8985         * docs/gst/tmpl/gstelement.sgml:
8986         * docs/gst/tmpl/gstenumtypes.sgml:
8987         * docs/gst/tmpl/gsterror.sgml:
8988         * docs/gst/tmpl/gstevent.sgml:
8989         * docs/gst/tmpl/gstfakesink.sgml:
8990         * docs/gst/tmpl/gstfakesrc.sgml:
8991         * docs/gst/tmpl/gstfilesink.sgml:
8992         * docs/gst/tmpl/gstfilter.sgml:
8993         * docs/gst/tmpl/gstindex.sgml:
8994         * docs/gst/tmpl/gstinfo.sgml:
8995         * docs/gst/tmpl/gstinterface.sgml:
8996         * docs/gst/tmpl/gstlog.sgml:
8997         * docs/gst/tmpl/gstmacros.sgml:
8998         * docs/gst/tmpl/gstmarshal.sgml:
8999         * docs/gst/tmpl/gstmd5sink.sgml:
9000         * docs/gst/tmpl/gstmultifilesrc.sgml:
9001         * docs/gst/tmpl/gstobject.sgml:
9002         * docs/gst/tmpl/gstpad.sgml:
9003         * docs/gst/tmpl/gstparse.sgml:
9004         * docs/gst/tmpl/gstpipeline.sgml:
9005         * docs/gst/tmpl/gstplugin.sgml:
9006         * docs/gst/tmpl/gstpluginfeature.sgml:
9007         * docs/gst/tmpl/gstqueue.sgml:
9008         * docs/gst/tmpl/gstreamer-unused.sgml:
9009         * docs/gst/tmpl/gstregistry.sgml:
9010         * docs/gst/tmpl/gstregistrypool.sgml:
9011         * docs/gst/tmpl/gstscheduler.sgml:
9012         * docs/gst/tmpl/gstsearchfuncs.sgml:
9013         * docs/gst/tmpl/gstshaper.sgml:
9014         * docs/gst/tmpl/gstspider.sgml:
9015         * docs/gst/tmpl/gstspideridentity.sgml:
9016         * docs/gst/tmpl/gststructure.sgml:
9017         * docs/gst/tmpl/gstsystemclock.sgml:
9018         * docs/gst/tmpl/gsttag.sgml:
9019         * docs/gst/tmpl/gsttaginterface.sgml:
9020         * docs/gst/tmpl/gsttee.sgml:
9021         * docs/gst/tmpl/gstthread.sgml:
9022         * docs/gst/tmpl/gsttrace.sgml:
9023         * docs/gst/tmpl/gsttrashstack.sgml:
9024         * docs/gst/tmpl/gsttypefind.sgml:
9025         * docs/gst/tmpl/gsttypes.sgml:
9026         * docs/gst/tmpl/gsturi.sgml:
9027         * docs/gst/tmpl/gsturitype.sgml:
9028         * docs/gst/tmpl/gstutils.sgml:
9029         * docs/gst/tmpl/gstvalue.sgml:
9030         * docs/gst/tmpl/gstversion.sgml:
9031         * docs/gst/tmpl/gstxml.sgml:
9032         * docs/gst/tmpl/gstxmlregistry.sgml:
9033         * docs/gst/tmpl/gthread-cothreads.sgml:
9034         * docs/gst/tmpl/types.sgml:
9035
9036 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9037
9038         * docs/pwg/other-sink.xml:
9039         * docs/pwg/other-source.xml:
9040           Documentation on how to write source and sink elements. Other
9041           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
9042           manager, autoplugger) are all still pending.
9043
9044 2004-03-25  Benjamin Otte  <otte@gnome.org>
9045
9046         * testsuite/elements/Makefile.am:
9047         * testsuite/elements/gst-compprep-check:
9048           add check to make sure gst-compprep works
9049         * testsuite/elements/gst-inspect-check.in:
9050           improve initialization output
9051         * testsuite/Makefile.am:
9052         * testsuite/gst-inspect-check:
9053           remove old file
9054
9055 2004-03-24  David Schleef  <ds@schleef.org>
9056
9057         * testsuite/elements/Makefile.am:
9058         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
9059         to the testsuite.
9060
9061 2004-03-24  Benjamin Otte  <otte@gnome.org>
9062
9063         * libs/gst/control/dparam.c: (gst_dparam_attach),
9064         (gst_dparam_detach):
9065         * libs/gst/control/dparammanager.c: (gst_dpman_init):
9066           fix lvalue casts for real
9067
9068 2004-03-24  Benjamin Otte  <otte@gnome.org>
9069
9070         * gst/schedulers/gstbasicscheduler.c:
9071         (gst_basic_scheduler_src_wrapper):
9072         * gst/schedulers/gstoptimalscheduler.c:
9073         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
9074         (pad_clear_queued), (gst_opt_scheduler_add_element),
9075         (gst_opt_scheduler_remove_element):
9076           fix GStreamer to not have issues with lvalue casts anymore (fixes
9077           #136841)
9078
9079 2004-03-24  Benjamin Otte  <otte@gnome.org>
9080
9081         * gst/gstelement.c:
9082           add documentation about a gobject quirk where the object hasn't the
9083           correct class pointer set on initialization
9084         * gst/schedulers/gstbasicscheduler.c:
9085         (gst_basic_scheduler_src_wrapper):
9086           make sure to not run into an infinite loop
9087
9088 2004-03-22  Benjamin Otte  <otte@gnome.org>
9089
9090         * gst/gstutils.c: (gst_util_dump_mem):
9091         * gst/gstutils.h:
9092           first argument of gst_util_dump_mem should be const
9093
9094 2004-03-22  Johan Dahlin  <johan@gnome.org>
9095
9096         * gst/gstvalue.h: Clean up a little bit.
9097
9098 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
9099
9100         reviewed by Benjamin Otte  <otte@gnome.org>
9101
9102         * gst/autoplug/gstspider.c: (gst_spider_dispose):
9103         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
9104         (gst_aggregator_class_init), (gst_aggregator_init):
9105         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9106         (gst_filesrc_dispose), (gst_filesrc_set_location):
9107         * gst/elements/gstidentity.c: (gst_identity_finalize),
9108         (gst_identity_class_init), (gst_identity_chain):
9109         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
9110         * gst/elements/gststatistics.c: (gst_statistics_finalize),
9111         (gst_statistics_class_init):
9112         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
9113         (gst_tee_get_property):
9114           clean up used memory in this elements correctly on teardown (closes
9115           #137279)
9116
9117 2004-03-20  Colin Walters  <walters@redhat.com>
9118
9119         * gst/registries/gstxmlregistry.c:
9120         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
9121         registry saving atomic.
9122
9123 2004-03-20  Colin Walters  <walters@redhat.com>
9124
9125         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
9126         Just use
9127         access() instead of actually creating and deleting files.
9128
9129 2004-03-18  David Schleef  <ds@schleef.org>
9130
9131         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
9132         (bug #137625)
9133
9134 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9135
9136         * po/sv.po: updated translation (Christian Rose)
9137
9138 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9139
9140         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
9141         (gst_filesink_get_query_types), (_do_init),
9142         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
9143           return FALSE silently
9144         * po/af.po: updated translation (Petri Jooste)
9145
9146 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9147
9148         * Makefile.am:
9149         * configure.ac:
9150           dist common properly
9151         * po/af.po:
9152         * po/fr.po:
9153         * po/nl.po:
9154         * po/sr.po:
9155         * po/sv.po:
9156           refreshing translations
9157
9158 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9159
9160         * po/LINGUAS:
9161         * po/sv.po:
9162         * po/af.po:
9163           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
9164
9165 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9166
9167         * Makefile.am: use common/release.mak
9168
9169 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9170
9171         * docs/faq/gst-uninstalled:
9172           adding gst-monkeysaudio to the list of possible plugin dirs
9173
9174 2004-03-16  David Schleef  <ds@schleef.org>
9175
9176         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
9177         (gst_init_check_with_popt_table):  Fix some gettext strings to
9178         make them easier to translate.  Required making the strings
9179         non-const.
9180
9181 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9182
9183         * configure.ac: bump nano to 1
9184
9185 === release 0.8.0 ===
9186
9187 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9188
9189         * configure.ac: release 0.8.0, "Executive Slacks"
9190
9191 2004-03-16  Johan Dahlin  <johan@gnome.org>
9192
9193         * gst/schedulers/gstoptimalscheduler.c
9194         (gst_opt_scheduler_pad_unlink): Remove double ;,
9195         spotted by Scott Wheeler
9196
9197 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9198
9199         * configure.ac: bump libtool version
9200
9201 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9202
9203         * gst/gstcaps.h:
9204         * gst/gststructure.h:
9205           add reserved padding
9206
9207 2004-03-15  Benjamin Otte  <otte@gnome.org>
9208
9209         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9210           set the first parameter for select call correctly.
9211           (fixes #137230)
9212
9213 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9214
9215         * *.c,*.h: don't mix tabs and spaces
9216
9217 2004-03-15  Johan Dahlin  <johan@gnome.org>
9218
9219         * gst/schedulers/gstoptimalscheduler.c
9220         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
9221         crash on MPEG playback. My boolean arithmetic is a bit rusty.
9222
9223         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
9224         
9225 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9226
9227         * testsuite/Rules:
9228           fix gst-register rules
9229
9230 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9231
9232         * testsuite/Rules:
9233           use versioned gst-register
9234
9235 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9236
9237         * docs/libs/gstreamer-libs-sections.txt:
9238           remove </SUBSECTION>
9239         * gst/gstplugin.c:
9240         * gst/gstregistry.c: (gst_registry_add_plugin):
9241         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
9242         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
9243           add debugging and fix some comment blocks
9244
9245 2004-03-15  Johan Dahlin  <johan@gnome.org>
9246
9247         * *.h: Revert indent changes.
9248         
9249 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9250
9251         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
9252           g_error_free the g_error
9253         * tools/gst-feedback-m.m:
9254           check for other versions of gstreamer
9255         * tools/gst-indent:
9256           use sh, not bash
9257
9258 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9259
9260         * tools/gst-register.c: do not spill paths when registries are not
9261           writable, until we fix the "user running gst-register" case.
9262
9263 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9264
9265         * *.c, *.h: commit of gst-indent run on core
9266
9267 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9268
9269         * tools/gst-indent:
9270         * tools/Makefile.am:
9271           add our indentation style as a script
9272
9273 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9274
9275         * po/sr.po:
9276         * po/LINGUAS:
9277           added Serbian translation
9278
9279 2004-03-13  Benjamin Otte  <otte@gnome.org>
9280
9281         * gst/gstelement.c:
9282           add documentation note about gst_element_found_tags_for_pad not
9283           being usable in getfunctions. (see #137042)
9284
9285 2004-03-12  David Schleef  <ds@schleef.org>
9286
9287         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
9288         change API right now!  Readd gst_caps_is_simple() macro.
9289         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
9290         uninitialized variable.  I'd bet this caused crashes.
9291         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
9292
9293 2004-03-12  Johan Dahlin  <johan@gnome.org>
9294
9295         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
9296         * gst/gstcaps.h: Clean up
9297
9298         * gst/gst.c (init_post): call gst_caps_get_type() instead of
9299         _gst_caps_initalize()
9300
9301         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
9302         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
9303
9304         * gst/gststructure.c (gst_structure_get_type): Ditto
9305
9306         * gst/gststructure.h: Ditto
9307         
9308 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9309
9310         * gst/gstqueue.c: (gst_queue_init):
9311           Reset default max. values in queues. Reason is simply to avoid
9312           braindead use. If you want wider values, use the properties. The
9313           default is supposed to always work. Wider values would make this
9314           beast a memory hog by default (250 full-PAL RGB32 video frames?
9315           That's 440 MB! No thank you).
9316
9317 2004-03-10  David Schleef  <ds@schleef.org>
9318
9319         * tools/gst-run.c: (main):  Fix crash when no relevant tools
9320         were found.  (bug #136793)
9321
9322 2004-03-10  Johan Dahlin  <johan@gnome.org>
9323
9324         * gst/schedulers/gstoptimalscheduler.c
9325         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
9326         links to elements within the same group, so we can finally remove
9327         that annoying warning. Refactor the code a little bit
9328         (group_dec_links_for_element): Split out
9329
9330 2004-03-09  David Schleef  <ds@schleef.org>
9331
9332         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
9333         (bug #134863)
9334
9335 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9336
9337         * configure.ac: first bug fix due to major/minor bump
9338
9339 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9340
9341         * configure.ac: bump nano to 1
9342
9343 === release 0.7.6 ===
9344
9345 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9346
9347         * NEWS:
9348         * RELEASE:
9349         * configure.ac:
9350           releasing 0.7.6, "Almost"
9351         * po/fr.po:
9352         * po/nl.po:
9353         * tools/Makefile.am:
9354         * tools/gst-feedback-m.m:
9355           unversioned source
9356
9357 2004-03-09  Johan Dahlin  <johan@gnome.org>
9358
9359         Reviewed by: Thomas Vander Stichele
9360
9361         * gst/gstelement.c (gst_element_class_init): register second
9362         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
9363         language bindings can (de)marshall correctly.
9364
9365         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
9366
9367         * gst/gsterror.c (gst_g_error_get_type): New function
9368
9369         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
9370         with VOID:OBJECT,OBJECT,STRING 
9371
9372 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
9373
9374         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
9375         Free a leaked g_timer on early returns.
9376
9377 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9378
9379         * docs/pwg/advanced-types.xml:
9380           Add cinepak description.
9381
9382 2004-03-07  David Schleef  <ds@schleef.org>
9383
9384         * docs/random/mimetypes:  Added cinepak description
9385
9386 2004-03-07  Andy Wingo  <wingo@pobox.com>
9387
9388         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
9389
9390         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
9391         there are no links to other groups when a group is destroyed.
9392         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
9393         removed from a group, make sure the link count to elements linked
9394         to other pads is appropriately decremented. This really fixes
9395         #135672.
9396
9397         The 1.60->1.61 patch has been reapplied in light of this fix.
9398
9399         * gst/gstelement.c (gst_element_dispose): Really protect against
9400         multiple invocations this time.
9401
9402 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9403
9404         * docs/gst/gstreamer-sections.txt:
9405         * docs/gst/tmpl/gsttag.sgml:
9406           remove some deprecated functions, document some existing ones
9407         * gst/gsttag.c: (gst_tag_get_flag):
9408         * gst/gsttag.h:
9409           add accessor function
9410
9411 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9412
9413         * docs/gst/gstreamer-sections.txt:
9414         * docs/gst/tmpl/gsttag.sgml:
9415         * docs/gst/tmpl/gstxml.sgml:
9416         * gst/gsttag.c: (gst_tag_get_flag):
9417         * gst/gsttag.h:
9418
9419 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
9420
9421         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
9422         leak
9423
9424 2004-03-05  David Schleef  <ds@schleef.org>
9425
9426         * REQUIREMENTS: Add bison and flex.
9427         * configure.ac: Fix comment about bison.
9428         * docs/random/ds/0.9-suggested-changes: yer ma
9429         * tools/gst-inspect.c: (print_element_info):  Fix warning.
9430
9431 2004-03-05  Benjamin Otte  <otte@gnome.org>
9432
9433         * gst/gstelement.c: (gst_element_error_full):
9434           revert recent recursive state changing commit - messing with other
9435           elements' states is evil and should be done by apps only.
9436
9437 2004-03-05  Benjamin Otte  <otte@gnome.org>
9438
9439         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
9440           check for empty intersection instead of NULL caps
9441         (gst_element_get_compatible_pad_filtered):
9442           remove old workaround that is only a bug nowadays
9443
9444 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9445
9446         * gst/gstelement.c: (gst_element_error_full):
9447           make elements try to recursively change state to PAUSED on all
9448           parents after an error to suppress ensuing warnings
9449         * gst/parse/grammar.y:
9450           make it check if it was able to sync the state, and throw an error
9451           if not, so stuff like
9452           oggdemux ! vorbisdec ! osssink gets caught
9453
9454 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9455
9456         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
9457           it contains lib64; use AS_AC_EXPAND to handle it properly
9458
9459 2004-03-05  David Schleef  <ds@schleef.org>
9460
9461         * gst/gstcpuid_i386.s:  Remove unused code
9462         * libs/gst/getbits/getbits.c: (gst_getbits_init),
9463         (gst_getbits_newbuf): Remove MMX code
9464         * libs/gst/getbits/getbits.h: Remove MMX code
9465
9466 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
9467
9468         * debian/.cvsignore:
9469         * debian/README.Debian:
9470         * debian/changelog:
9471         * debian/control:
9472         * debian/control.in:
9473         * debian/copyright:
9474         * debian/gstreamer-core-libs-dev.files:
9475         * debian/gstreamer-core-libs.files:
9476         * debian/gstreamer-core.files:
9477         * debian/gstreamer-core.postinst:
9478         * debian/gstreamer-core.postrm:
9479         * debian/gstreamer-doc.files:
9480         * debian/gstreamer-doc.links:
9481         * debian/gstreamer-doc.lintian:
9482         * debian/gstreamer-runtime.files:
9483         * debian/gstreamer-runtime.manpages:
9484         * debian/gstreamer-runtime.postinst:
9485         * debian/gstreamer-runtime.postrm:
9486         * debian/gstreamer-tools.files:
9487         * debian/gstreamer-tools.manpages:
9488         * debian/libgstreamer-dev.files:
9489         * debian/libgstreamer0.4.1.files:
9490         * debian/libgstreamerVERSION.files:
9491         * debian/rules:
9492         Debian package info not maintained here.
9493
9494 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9495
9496         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9497         * gst/gstbin.c: (gst_bin_class_init):
9498         * gst/gstelement.c: (gst_element_class_init):
9499         * gst/gstindex.c: (gst_index_class_init):
9500         * gst/gstobject.c: (gst_object_class_init),
9501         (gst_signal_object_class_init):
9502         * gst/gstpad.c: (gst_pad_template_class_init):
9503         * gst/gstregistry.c: (gst_registry_class_init):
9504         * gst/gsturi.c: (gst_uri_handler_base_init):
9505         * gst/gstxml.c: (gst_xml_class_init):
9506         * libs/gst/control/dparam.c: (gst_dparam_class_init):
9507         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
9508           make all signal names use dashes instead of underscore
9509
9510 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9511
9512         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
9513
9514 2004-03-03  Benjamin Otte  <otte@gnome.org>
9515
9516         * gst/schedulers/gstoptimalscheduler.c:
9517           revert last commit by Andy Wingo. It causes segfaults on unreffing
9518           in Rhythmbox. (see bug #135672)
9519
9520 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
9521
9522         * po/fr.po: fix typo
9523
9524 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
9525
9526         * tools/gst-inspect.c: (main): 
9527         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
9528
9529 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9530
9531         * configure.ac:
9532           get GLIB_ONLY and POPT flags for the nonversioned binaries
9533         * tools/Makefile.am:
9534           use them
9535
9536 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9537
9538         * gst/gst.c: (init_post):
9539           change so that GST_REGISTRY now is where the global registry gets
9540           saved, since that is where plugins now get attached to first, and
9541           spilled over to the user registry.  Note that in the case of using
9542           GST_REGISTRY env var, we don't want to affect any real registries
9543           beyond the one given by this var, and thus we don't set a user
9544           registry to spill to.  So make sure GST_REGISTRY is writable.
9545
9546 2004-03-01  David Schleef  <ds@schleef.org>
9547
9548         * AUTHORS:  Added some names.  Add yourself if you're missing.
9549
9550 2004-03-01  David Schleef  <ds@schleef.org>
9551
9552         * MAINTAINERS: Add
9553
9554 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
9555
9556         * configure.ac:
9557           remove whitespace
9558         * docs/gst/tmpl/gstbuffer.sgml:
9559         * docs/gst/tmpl/gstdata.sgml:
9560         * docs/gst/tmpl/gstreamer-unused.sgml:
9561         * docs/gst/tmpl/gstxml.sgml:
9562           doc update
9563         * docs/manuals.mak:
9564           add a FIXME
9565         * docs/pwg/intro-preface.xml:
9566         * docs/pwg/pwg.xml:
9567           remove GNOME
9568         * gst/gst.c: (init_post):
9569           try GST_PLUGIN_PATH paths for the _global_registry first
9570         * gst/gstelement.h:
9571           add the error message as well, otherwise (null) debug info doesn't
9572           make much sense
9573         * tools/gst-register.c: (main):
9574           spill paths to next registry if this registry is not writable
9575         * po/fr.po:
9576         * po/nl.po:
9577           translation updates
9578
9579 2004-03-01  Johan Dahlin  <johan@gnome.org>
9580
9581         * gst/gstbuffer.c (_gst_buffer_initialize): 
9582         * gst/gstdata.c (gst_data_get_type): 
9583         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
9584         instead of ref, since some applications that uses GBoxed
9585         routines depends on a function that actually returns a copy.
9586
9587 2004-02-27  Benjamin Otte  <otte@gnome.org>
9588
9589         * gst/gstbuffer.h:
9590           remove gst_buffer_free, use gst_data_unref
9591         * gst/gstdata.c: (gst_data_get_type):
9592           use refcounting in GstData GBoxed registration
9593         * gst/gstdata.h:
9594           remove gst_data_free, use gst_data_unref
9595
9596 2004-02-27  Johan Dahlin  <johan@gnome.org>
9597
9598         * gst/gstdata.c (gst_data_get_type): New function, register
9599         GstData as a GBoxed type.
9600
9601         * gst/gstdata.h (GST_TYPE_DATA): New macro
9602
9603 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
9604
9605         * Makefile.am:
9606         * gstreamer.spec.in:
9607           put back RELEASE
9608         * gst/Makefile.am:
9609           clean up non-disting of built files
9610         * testsuite/debug/commandline.c:
9611           test fix for option rename
9612
9613 2004-02-26  David Schleef  <ds@schleef.org>
9614
9615         * configure.ac:  We don't really need glib-2.3.  Also remove
9616         some unneeded checks for library functions.
9617         * gst/Makefile.am:  Instead, we need to not dist files created
9618         by glib-genmarshal.
9619
9620 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9621
9622         * configure.ac:
9623           bump glib required version to 2.3.0 for g_value_takes_boxed
9624
9625  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
9626
9627         * common/m4/gst-docs.m4
9628         change flavour text from enable to disable as enable is our default
9629         closes bug Bug 135304
9630
9631 === release 0.7.5 ===
9632  
9633  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9634  
9635         * NEWS:
9636           instate NEWS file
9637         * Makefile.am:
9638         * gstreamer.spec.in:
9639         * RELEASE:
9640           put back release
9641         * configure.ac:
9642         * docs/random/release:
9643           more updates
9644
9645 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9646
9647         * gst/gsttag.c: (_gst_tag_initialize):
9648         * po/fr.po:
9649         * po/nl.po:
9650           remove hyphen from codec tags
9651
9652 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9653
9654         * gst/parse/Makefile.am:
9655           fix dependency so that a make from a clean build works the first
9656           time
9657
9658 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9659
9660         * docs/random/release:
9661           update release strategy
9662         * po/fr.po:
9663           auto-update po file
9664         * po/nl.po:
9665           update dutch translation
9666
9667 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
9668
9669         * docs/manual/debugging.xml:
9670         fix manual for new debugging system
9671
9672 2004-02-25  Andy Wingo  <wingo@pobox.com>
9673
9674         * gst/gstpad.c (gst_pad_link_prepare): Re-add
9675         gst_pad_link_prepare. Please email the list with specific reasons
9676         for reverting.
9677
9678 2004-02-24  Andy Wingo  <wingo@pobox.com>
9679
9680         * gst/gstelement.c (gst_element_dispose): Protect against multiple
9681         invocations.
9682
9683         * gst/schedulers/gstoptimalscheduler.c:
9684         I added a mess of prototypes at the top of the file by way of
9685         documentation. Some of the operations on chains and groups were
9686         re-organized.
9687
9688         (create_group): Added a type argument so if the group is enabled,
9689         the setup_group_scheduler knows what to do.
9690         (group_elements): Added a type argument here, too, to be passed on
9691         to create_group.
9692         (group_element_set_enabled): If an unlinked PLAYING element is
9693         added to a bin, we have to create a new group to hold the element,
9694         and this function will be called before the group is added to the
9695         chain. Thus we have a valid case for group->chain==NULL. Instead
9696         of calling chain_group_set_enabled, just set the flag on the group
9697         (the chain's status will be set when the group is added to it).
9698         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
9699         Setup the group scheduler when the group is enabled, not
9700         specifically when an element goes PAUSED->PLAYING. This means
9701         PLAYING elements can be added, linked, and scheduled into a
9702         PLAYING pipeline, as was intended.
9703         (add_to_group): Don't ref the group twice. I don't know when this
9704         double-ref got in here. Removing it has the potential to cause
9705         segfaults if other parts of the scheduler are buggy. If you find
9706         that the scheduler is segfaulting for you, put in an extra ref
9707         here and see if that hacks over the underlying issue. Of course,
9708         then find out what code is unreffing a group it doesn't own...
9709         (create_group): Make the extra refcount floating, and remove it
9710         after adding the element. This means that...
9711         (unref_group): Destroy when the refcount reaches 0, not 1, like
9712         every other refcounted object in the known universe.
9713         (remove_from_group): When a group becomes empty, set it to be not
9714         active, and remove it from its chain. Don't unref it again,
9715         there's no floating reference any more.
9716         (destroy_group): We have to remove the group from the chain in
9717         remove_from_group (rather than here) to break refcounting cycles
9718         (the chain always has a ref on the group). So assert that
9719         group->chain==NULL.
9720         (ref_group_by_count): Removed, it was commented out anyway.
9721         (merge_chains): Use the remove_from_chain and add_to_chain
9722         primitives to do the reparenting, instead of rolling our own
9723         implementation.
9724         (add_to_chain): The first non-disabled group in the chain's group
9725         list will be the entry point for the chain. Because buffers can
9726         accumulate in loop elements' peer bufpens, we preferentially
9727         schedule loop groups before get groups to avoid unnecessary
9728         execution of get-based groups when the bufpens are already full.
9729         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
9730         (get_group_schedule_function): Ditto.
9731         (loop_group_schedule_function): Ditto.
9732         (gst_opt_scheduler_loop_wrapper): Ditto.
9733         (gst_opt_scheduler_iterate): Ditto.
9734
9735         I understand the opt scheduler now, yippee!
9736
9737         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
9738         (gst_pad_get_name, gst_pad_set_chain_function) 
9739         (gst_pad_set_get_function, gst_pad_set_event_function) 
9740         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
9741         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
9742         (gst_pad_set_query_function, gst_pad_get_query_types) 
9743         (gst_pad_get_query_types_default) 
9744         (gst_pad_set_internal_link_function) 
9745         (gst_pad_set_formats_function, gst_pad_set_link_function) 
9746         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
9747         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
9748         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
9749         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
9750         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
9751         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
9752         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
9753         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
9754         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
9755         (gst_pad_event_default_dispatch, gst_pad_event_default) 
9756         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
9757         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
9758         (gst_pad_get_formats_default, gst_pad_get_formats): Better
9759         argument checks, and some doc fixes.
9760
9761         (gst_pad_custom_new_from_template): Um, does anyone
9762         use these functions? Actually make a custom pad instead of a
9763         normal one.
9764         (gst_pad_try_set_caps): Transpose some checks.
9765         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
9766         the pad is in negotiation.
9767         (gst_pad_try_relink_filtered): Use pad_link_prepare.
9768         
9769         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
9770
9771         * gst/gstelement.h: 
9772         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
9773         on the list.
9774
9775 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
9776
9777         * gst/gstbin.c: (gst_bin_add):
9778           add error for not being able to add elements
9779
9780 2004-02-22  Julien MOUTTE <julien@moutte.net>
9781
9782         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
9783         audio-codec and video-codec.
9784
9785 2004-02-22  Benjamin Otte  <otte@gnome.org>
9786
9787         reported by: Padraig O'Briain <padraig.obriain@sun.com>
9788
9789         * autogen.sh:
9790           replace test -e with test -x for mkinstalldirs to be more portable.
9791           (fixes #134816)
9792
9793 2004-02-22  Benjamin Otte  <otte@gnome.org>
9794
9795         * gst/gstpad.c:
9796           revert last patch from Andy, it makes gst_pad_can_link_filtered much
9797           too noisy
9798         * gst/gsttag.c: (_gst_tag_initialize):
9799         * gst/gsttag.h:
9800           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
9801         * libs/gst/control/dparam.c: (gst_dparam_attach):
9802         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
9803           check that types for attached dparams match
9804
9805 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
9806
9807         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
9808         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9809         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
9810           fix errors
9811
9812 2004-02-20  Andy Wingo  <wingo@pobox.com>
9813
9814         * gst/gstbin.c:
9815         * gst/gstbuffer.c:
9816         * gst/gstplugin.c:
9817         * gst/registries/gstxmlregistry.c: 
9818         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
9819
9820         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
9821         (gst_element_add_pad): DEBUG->INFO, some fixes.
9822         (gst_element_get_compatible_pad_template): Just see if the
9823         templates' caps intersect, not if one is a strict subset of the
9824         other. This conforms more to what gst_pad_link_intersect() does.
9825         (gst_element_class_add_pad_template): Don't memcpy the pad
9826         template, just ref it.
9827         (gst_element_get_compatible_pad_filtered): Clean up debug messages
9828
9829         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
9830         (gst_pad_link_filtered): Debug changes.
9831         (gst_pad_link_prepare): New function, consolidated from
9832         can_link_filtered and link_filtered.
9833
9834         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
9835         look more like that of the functions in gstelement.c
9836
9837         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
9838         object, and return the empty string if object is NULL.
9839
9840         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
9841         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
9842         LOG, not DEBUG. We still get flex info on debug.
9843
9844         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
9845         debug string more verbose.
9846         (plugin_times_older_than): DEBUG->LOG.
9847
9848 2004-02-20  Julien MOUTTE <julien@moutte.net>
9849
9850         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
9851         will emit found_tag for each stream they demux with the codec.
9852
9853 2004-02-20  Benjamin Otte  <otte@gnome.org>
9854
9855         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
9856           copy navigation event correctly. Check freeing tag lists. 
9857         * gst/gstthread.c: (gst_thread_change_state):
9858           don't abort() on state changing mess - it might happen because of
9859           bugs.
9860         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
9861           use boxed functions
9862         * gst/gstvalue.h:
9863           fix GST_VALUE_HOLDS_CAPS
9864
9865 2004-02-19  David Schleef  <ds@schleef.org>
9866
9867         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
9868         and use it for GST_FUNCTION.  (bug #134750)
9869
9870 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9871
9872         * po/fr.po:
9873         * po/nl.po:
9874           updating translations
9875
9876 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9877
9878         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
9879
9880 2004-02-18  kost@imn.htwk-leipzig.de
9881
9882         reviewed by: David Schleef  <ds@schleef.org>
9883
9884         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
9885         for libgstcontrol.
9886
9887 2004-02-18  David Schleef  <ds@schleef.org>
9888
9889         * libs/gst/control/dparam.c: (gst_dparam_class_init):
9890         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9891         (gst_dpsmooth_new): Additional fixes to get double dparams working.
9892         * tools/gst-inspect.c: (print_element_info): Support dumping of
9893         double dparam information.
9894
9895 2004-02-17  David Schleef  <ds@schleef.org>
9896
9897         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9898         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
9899         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
9900         Use GST_TYPE_CAPS in signal prototype.
9901         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
9902         Convert GST_TYPE_CAPS to boxed.
9903         * gst/gstelement.c: (gst_element_class_init):
9904         Use GST_TYPE_TAG_LIST in signal prototype.
9905         * gst/gstindex.c: (gst_index_class_init):
9906         * gst/gstindex.h:
9907         Add GST_TYPE_INDEX_ENTRY type.
9908         * gst/gstmarshal.list:
9909         Add necessary marshal types.
9910         * gst/gstpad.c: (gst_real_pad_class_init),
9911         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
9912         (gst_pad_recover_caps_error):
9913         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
9914         * gst/gststructure.c: (_gst_structure_initialize),
9915         (gst_structure_copy), (_gst_structure_copy_conditional):
9916         * gst/gststructure.h:
9917         Convert GST_TYPE_STRUCTURE to boxed.
9918         * gst/gsttag.c: (gst_tag_list_get_type):
9919         * gst/gsttag.h:
9920         Add GST_TYPE_TAG_LIST type.
9921
9922 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9923
9924         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
9925         to what we agreed with david.
9926         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
9927
9928 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9929
9930         * po/nl.po: update translation
9931
9932 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9933
9934         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9935           throw an error if spider is trying to play a mime type there is
9936           no decoder for
9937         * po/POTFILES.in:
9938           add gst/autoplug/gstspider.c for translation
9939
9940 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9941
9942         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
9943         silently when the pad is negotiating.
9944
9945 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9946
9947         * docs/faq/Makefile.am:
9948           add script to run gstreamer uninstalled 
9949         * docs/faq/faq.xml:
9950         * docs/faq/developing.xml:
9951         * docs/faq/gst-uninstalled:
9952           extract script to run gstreamer uninstalled
9953         * docs/manuals.mak:
9954           add EXTRA_SOURCES variable for Makefile.am's to set to
9955           use additional SOURCE files for the doc build
9956
9957 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9958
9959         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
9960
9961 2004-02-15  Julien MOUTTE  <julien@moutte.net>
9962
9963         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
9964         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
9965         an error was thrown by osssink. Basically a state change failure for
9966         an element in a different scheduling group was considered as
9967         successful, which means that caps nego was going on and weird stuff
9968         happened. Like I wrote in the comment there, if someone wants to
9969         revert that please drop me a mail explaining why because I really see
9970         no point in keeping that broken behaviour there.
9971         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
9972         be empty, we then return NULL which will trigger a nice error when 
9973         pulling from the pad.
9974
9975 2004-02-13  David Schleef  <ds@schleef.org>
9976
9977         * libs/gst/control/dparam.c: (gst_dparam_class_init),
9978         (gst_dparam_get_property), (gst_dparam_set_property),
9979         (gst_dparam_do_update_default):
9980         * libs/gst/control/dparam.h:
9981         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9982         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
9983         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
9984         (gst_dpsmooth_do_update_double):
9985         * libs/gst/control/dparam_smooth.h:
9986         * libs/gst/control/dparammanager.c:
9987         (gst_dpman_inline_direct_update):
9988         Add support for double dparams.
9989
9990 2004-02-13  David Schleef  <ds@schleef.org>
9991
9992         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
9993         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
9994
9995 2004-02-13  Mattias Wadman  <mattias@sudac.org>
9996
9997         reviewed by: David Schleef  <ds@schleef.org>
9998
9999         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
10000         (gst_fdsrc_init), (gst_fdsrc_set_property),
10001         (gst_fdsrc_get_property), (gst_fdsrc_get):
10002         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
10003         and sends an EOS event if file descriptor reading times out.
10004
10005 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10006
10007         * configure.ac:
10008           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
10009
10010 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10011
10012         * configure.ac: pass required libxml version as argument
10013         (bug reported by Christophe Fergeau)
10014
10015 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10016   
10017         * docs/gst/gstreamer-docs.sgml:
10018         * docs/gst/tmpl/gstxml.sgml:
10019         * docs/libs/gstreamer-libs-docs.sgml:
10020           version API docs
10021
10022 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10023
10024         * gst/gstinfo.c:
10025         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
10026         (gst_registry_pool_feature_filter):
10027         * gst/gstthread.c: (gst_thread_class_init):
10028         * gst/gstvalue.c:
10029           add includes exposed by building without libxml
10030         * gst/indexers/Makefile.am:
10031           do not build fileindex when LOADSAVE disabled; we should have
10032           a better libxml check later since fileindex depends on xml, not
10033           LOADSAVE or REGISTRY
10034         * libs/gst/control/Makefile.am:
10035           link with m
10036         * tools/Makefile.am:
10037           fix wrong source code for gst-xmlinspect
10038
10039 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10040
10041         * configure.ac:
10042           fix gcov help output
10043           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
10044         * docs/random/release:
10045           some updated releasing notes
10046         * gstreamer.spec.in:
10047           more updates
10048
10049 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10050
10051         * docs/faq/faq.xml:
10052         * docs/manual/manual.xml:
10053         * docs/pwg/pwg.xml:
10054         * docs/pwg/titlepage.xml:
10055           put version in documentation
10056
10057 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10058
10059         * tools/Makefile.am: fix man page installation
10060
10061 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10062
10063         * configure.ac:
10064           don't check for libxml when load/save and registry disabled (#105844)
10065         * gstreamer.spec.in:
10066           sync with fedora candidate spec
10067
10068 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10069
10070         * po/fr.po:
10071         * po/nl.po:
10072           replace multidisksrc with multifilesrc
10073
10074 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10075
10076         * po/POTFILES.in:
10077           update to multidisksrc => multifilesrc file renaming (#134145)
10078
10079 2004-02-11  David Schleef  <ds@schleef.org>
10080
10081         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
10082         * docs/gst/tmpl/gstpadtemplate.sgml: same
10083         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
10084         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
10085         fixing dance.
10086         * gst/gstutils.c: Remove disabled code that uses GstProps.
10087         * gst/registries/gstxmlregistry.h: same
10088         * docs/random/ds/0.9-suggested-changes: random notes
10089
10090 2004-02-11  kost@imn.htwk-leipzig.de
10091
10092         reviewed by: David Schleef  <ds@schleef.org>
10093
10094         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
10095         initialisation of clock (bug #134128)
10096
10097 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10098
10099         * configure.ac:
10100         * gst/elements/Makefile.am:
10101         * gst/elements/gstelements.c:
10102         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
10103         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
10104         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
10105         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
10106         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
10107         * gst/elements/gstmultifilesrc.h:
10108           rename multidisksrc to multifilesrc (part of #122200)
10109
10110 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10111
10112         * docs/manuals.mak:
10113           fix automake complaints
10114         * gst-element-check.m4:
10115           fix unquotedness
10116
10117 2004-02-11  David Schleef  <ds@schleef.org>
10118
10119         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
10120         * gst/gstatomic_impl.h: Disable sparc implementation.
10121
10122 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10123
10124         * gst-element-check.m4:
10125           fix underquoted macros as reported by automake 1.8.x (#133800)
10126         * configure.ac:
10127           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
10128           by autopoint (fixes #132996)
10129
10130 2004-02-10  Andy Wingo  <wingo@pobox.com>
10131
10132         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
10133         way to do inheritance.
10134         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
10135         (gst_pad_get_query_types, gst_pad_get_query_types_default):
10136         Routine docs.
10137         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
10138         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
10139         doc.
10140         (gst_pad_unlink, gst_pad_is_linked): Docs.
10141         (gst_pad_renegotiate): A brief description of capsnego.
10142         (gst_pad_try_set_caps): Document.
10143         (gst_pad_try_set_caps_nonfixed): Document.
10144         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
10145         (gst_pad_set_parent): Deprecated (although not out of the API).
10146         (gst_pad_get_parent): Deprecated, although many plugins use this.
10147         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
10148         are private and will go away in 0.9.
10149         (gst_pad_perform_negotiate): Doc.
10150         (gst_pad_link_unnegotiate): I think this is meant to be static.
10151         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
10152         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
10153         (gst_pad_get_peer): Doc updates.
10154         (gst_pad_caps_change_notify): Doc.
10155         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
10156         (gst_ghost_pad_new): Doc fixes.
10157
10158         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
10159         (gst_object_check_uniqueness): 
10160
10161         * gst/gstelement.c (gst_element_add_pad) 
10162         (gst_element_add_ghost_pad, gst_element_remove_pad) 
10163         (gst_element_remove_ghost_pad, gst_element_get_pad) 
10164         (gst_element_get_static_pad, gst_element_get_pad_list) 
10165         (gst_element_class_get_pad_template_list) 
10166         (gst_element_class_get_pad_template): Work on the docs.
10167         (gst_element_get_pad_template_list): Uses the class method.
10168         (gst_element_get_compatible_pad_template): Docs, and consolidate
10169         some test conditions. 
10170         (gst_element_get_pad_from_template): New static function.
10171         (gst_element_request_compatible_pad): Docs, and work with
10172         non-request compatible templates. 
10173         (gst_element_get_compatible_pad_filtered): Docs and remove
10174         redundant checks.
10175         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
10176         (gst_element_link_filtered, gst_element_link_many) 
10177         (gst_element_link, gst_element_link_pads) 
10178         (gst_element_unlink_many): Docs.
10179
10180 2004-02-05  Andy Wingo  <wingo@pobox.com>
10181
10182         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
10183         s/pointer/boxed/.
10184
10185         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
10186
10187         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
10188         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
10189         with the type=GST_TYPE_CAPS. This allows language bindings to know
10190         what kind of data they're dealing with.
10191
10192         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
10193         to NULL when g_value_init is called. GstCaps, which rolls its own
10194         type implementation, now does the same instead of allocating empty
10195         caps.
10196         (_gst_caps_initialize, _gst_caps_collect_value,
10197         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
10198         table methods. This allows G_VALUE_COLLECT to work.
10199
10200 2004-02-05  Andy Wingo  <wingo@pobox.com>
10201
10202         * configure.ac:
10203         * testsuite/Makefile.am (SUBDIRS): 
10204         * testsuite/ghostpads/Makefile.am: 
10205         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
10206
10207         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
10208         These two routines are the only ones that set
10209         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
10210         pad template. They should be made static, depending on ABI needs.
10211         (gst_real_pad_dispose): Handle the case of ghost pads without a
10212         parent. Assert after dealing with ghost pads that the ghost pad
10213         list is empty.
10214         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
10215         set after creation.
10216         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
10217         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
10218         functions. set_property will call add_ghost_pad/remove_ghost_pad
10219         as appropriate.
10220         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
10221
10222         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
10223         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
10224         (gst_element_remove_pad): Handle ghost pads as well.
10225         (gst_element_remove_ghost_pad): Deprecated (could be removed,
10226         depending on API-stability needs).
10227
10228 2004-02-05  Andy Wingo  <wingo@pobox.com>
10229
10230         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
10231         of course they're const
10232
10233 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10234
10235         * tools/Makefile.am:
10236         * tools/gst-feedback:
10237         * tools/gst-feedback-0.7:
10238           make gst-feedback versioned too for consistency
10239
10240 2004-02-11  David Schleef  <ds@schleef.org>
10241
10242         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10243         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
10244
10245 2004-02-10  Julien MOUTTE <julien@moutte.net>
10246
10247         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
10248         the structure does not contain a valid tag list. Adding a safety check
10249         to remove a noisy warning in that case.
10250
10251 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
10252
10253         * gst/gst.c: fix name to be in line with others
10254
10255 2004-02-09  Julien MOUTTE <julien@moutte.net>
10256
10257         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
10258         not shout that loud when len is 0. Just return 0 silently.
10259
10260 2004-02-09  Julien MOUTTE  <julien@moutte.net>
10261
10262         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
10263         because data_unref has one and I prefer the debug to be symetric.
10264         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
10265         were refed when added to the queue and unrefed only once when the queue
10266         was flushed. Now the flush handler unref the buffers two times : first
10267         unref for the ref added when pushing in the queue's tail and second
10268         unref to destroy the flushed buffer.
10269
10270 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10271
10272         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
10273
10274 2004-02-06  David Schleef  <ds@schleef.org>
10275
10276         * docs/random/ds/0.9-suggested-changes: Random ramblings
10277         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
10278         to int before printing.
10279         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
10280         * gst/parse/parse.l: same.  See bug #129600
10281
10282 2004-02-06  David Schleef  <ds@schleef.org>
10283
10284         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
10285         (gst_index_add_entry), (gst_index_add_associationv),
10286         (gst_index_add_association): Add gst_index_add_associationv()
10287         and clean up gst_index_add_association(). #127133
10288
10289 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10290
10291         * autogen.sh: check out common with right tag if CVS/Tag exists
10292
10293 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10294
10295         * testsuite/ghostpads/ghostpads.c: (main):
10296           fix testsuite from segfaulting
10297
10298 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10299
10300         * Makefile.am: add release target
10301         * configure.ac: bump nano to 1
10302         * docs/random/release:
10303
10304 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10305
10306         * gst/gstcaps.h:
10307         * gst/gstelement.c: (gst_element_base_class_init),
10308         (gst_element_class_set_details), (gst_element_clear_pad_caps):
10309         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10310         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
10311         (gst_real_pad_dispose):
10312         * gst/gststructure.c: (gst_structure_free),
10313         (gst_structure_from_string):
10314           put reverted patch back in
10315         * gst/gstelement.c: (gst_element_remove_pad):
10316           free explicit caps if they're set
10317         * gst/gstpad.c: (_gst_pad_default_fixate_func):
10318           copy the structure when fixating
10319
10320 2004-02-05  David Schleef  <ds@schleef.org>
10321
10322         * gst/gstmarshal.list:
10323         * gst/gstpad.c: (gst_real_pad_class_init),
10324         (_gst_real_pad_fixate_accumulator):
10325         Revert POINTER->BOXED change in signal marshaller.
10326
10327 === release 0.7.4 ===
10328                                                                                 
10329 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10330                                                                                 
10331         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
10332         * configure.ac: changed for release
10333
10334 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
10335
10336         * gstreamer.spec.in:
10337           bump required version of gtk-doc
10338
10339 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10340
10341         * gst/gstcaps.h:
10342         * gst/gstelement.c: (gst_element_base_class_init),
10343         (gst_element_class_set_details), (gst_element_clear_pad_caps):
10344         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10345         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
10346         (gst_real_pad_dispose):
10347         * gst/gststructure.c: (gst_structure_free),
10348         (gst_structure_from_string):
10349           revert patch that breaks applications, reapply after release
10350           to get this fixed properly
10351
10352 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10353
10354         * gst/gsttag.c: (_gst_tag_initialize):
10355         * gst/gsttag.h:
10356           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
10357
10358 2004-02-04  David Schleef  <ds@schleef.org>
10359
10360         Fix some memleaks:
10361         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
10362         (gst_spider_plug_from_srcpad):
10363         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
10364
10365 2004-02-04  David Schleef  <ds@schleef.org>
10366
10367         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
10368         a GstRealPad before accessing its structure members.
10369
10370 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10371
10372         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
10373         (gst_clock_get_speed):
10374         * gst/gstclock.h:
10375           reset padding, remove unused fields
10376
10377 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10378
10379         * gst/autoplug/gstspideridentity.c:
10380         (gst_spider_identity_sink_loop_type_finding):
10381           use get_allowed_caps, not get_caps (fixes #132519)
10382         * gst/elements/gsttypefind.c: (stop_typefinding):
10383           use correct order when sending buffers and seeking
10384
10385 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10386
10387         * configure.ac:
10388         * gst/gstelement.h:
10389         * gst/gstpad.h:
10390         * gst/gstqueue.h:
10391           upgrade libtool CURRENT, reset padding
10392
10393 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10394
10395         * configure.ac:
10396           bump to prerelease
10397           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
10398
10399 2004-02-04  David Schleef  <ds@schleef.org>
10400
10401         * docs/random/ds/0.9-suggested-changes: random notes
10402         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
10403         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
10404         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
10405         expansion.
10406         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10407         (gst_filesink_get_query_types): same
10408         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
10409         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
10410         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
10411         to use new GST_PTR_FORMAT.
10412         * gst/gstelement.h: deprecate function factory macros
10413         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
10414         These are our last variadic macros that can't be replaced with
10415         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
10416         attempting to deprecate gst_element_clock_wait().
10417         * gst/gstevent.h: same
10418         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10419         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
10420         * gst/gstpad.h: deprecate function factory macros similar to above.
10421
10422 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10423
10424         * configure.ac:
10425         * tools/Makefile.am:
10426         * tools/gst-run.c: (popt_callback), (hash_print_key),
10427         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
10428         (get_candidates), (main):
10429           add new source file to generate non-versioned wrapper binaries
10430           for our tools.
10431
10432 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10433
10434         * gst/gstevent.c: (_gst_event_free):
10435           actually break; inside the switch statement
10436         * gst/parse/grammar.y:
10437           fix memleak where GValues weren't unset
10438
10439 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10440
10441         * gst/gststructure.c: (gst_structure_from_string):
10442           fix huge memleak
10443         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
10444         (new_entry), (gst_type_find_element_chain):
10445         * gst/gstelement.c: (gst_element_base_class_init),
10446         (gst_element_class_set_details):
10447         * gst/gstpad.c: (gst_pad_can_link_filtered):
10448           fix smaller memleaks
10449         * gst/gstpad.c: (gst_real_pad_dispose):
10450           check that explicit caps are gone
10451         * gst/gststructure.c: (gst_structure_free):
10452           actually free the structure
10453         * gst/gstelement.c: (gst_element_clear_pad_caps):
10454           unset explicit caps
10455
10456 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10457
10458         * tools/Makefile.am:
10459           use AM_CFLAGS since all the CFLAGS are the same
10460           use AM_LDFAGS
10461
10462 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10463
10464         * docs/manual/gnome.xml:
10465           expand example a little
10466         * gst/gst.c: (gst_init_with_popt_table),
10467         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
10468           make sure popt option displays are done with right textdomain
10469           use GstPoptOption type
10470         * gst/gst.h:
10471           create GstPoptOption type
10472
10473 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10474
10475         * gst/gsterror.c: (_gst_stream_errors_init):
10476         * gst/gsterror.h:
10477           adding error type for no codec
10478         * po/POTFILES.in:
10479           add gst-inspect
10480         * po/nl.po:
10481           update dutch translation
10482         * tools/gst-inspect.c: (print_element_list), (main):
10483           do proper internationalization
10484         * tools/gst-launch.c: (idle_func):
10485           remove commented out function call
10486
10487 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10488
10489         * docs/README:
10490           add some error fixing notes
10491         * docs/gst/gstreamer-sections.txt:
10492           remove double entries
10493         * docs/gst/tmpl/gstbin.sgml:
10494         * docs/gst/tmpl/gstclock.sgml:
10495           remove override
10496         * docs/gst/tmpl/gstelement.sgml:
10497         * docs/gst/tmpl/gstindex.sgml:
10498         * docs/gst/tmpl/gstobject.sgml:
10499         * docs/gst/tmpl/gstpadtemplate.sgml:
10500         * docs/gst/tmpl/gstreamer-unused.sgml:
10501         * docs/gst/tmpl/gsttag.sgml:
10502         * docs/gst/tmpl/gstthread.sgml:
10503         * docs/gst/tmpl/gstxml.sgml:
10504         * gst/gsttag.h:
10505           sync header prototypes with c decls
10506         * gst/gsttaginterface.c:
10507           fix doc headers
10508
10509 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10510
10511         * gst/parse/Makefile.am:
10512         * gst/gstobject.h:
10513           get rid of gstmarshal.h dependency. It's not needed.
10514         * gst/gst.h:
10515         * gst/elements/gstfakesink.c:
10516         * gst/elements/gstfakesrc.c:
10517         * gst/elements/gstidentity.c:
10518         * gst/gstbin.c:
10519         * gst/gstelement.c:
10520         * gst/gstindex.c:
10521         * gst/gstobject.c:
10522         * gst/gstpad.c:
10523         * gst/gstthread.c:
10524         * gst/gstxml.c:
10525         * libs/gst/control/dparam.c:
10526         * libs/gst/control/dparammanager.c:
10527           include gstmarshal.h.
10528         Fixes #132045
10529
10530 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10531
10532         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10533         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
10534         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
10535         * gst/elements/gstfilesrc.h:
10536           don't ref the filesrc when creating mmaped buffers. Don't keep a
10537           list of not-yet-destroyed buffers.
10538         * gst/gstbuffer.h:
10539           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
10540
10541 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10542
10543         * gst/gst.c: (init_pre):
10544           remove textdomain
10545
10546 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10547
10548         * docs/pwg/advanced-events.xml:
10549         * docs/pwg/advanced-scheduling.xml:
10550         * docs/pwg/intro-basics.xml:
10551         * docs/pwg/other-manager.xml:
10552         * docs/pwg/other-nton.xml:
10553         * docs/pwg/other-ntoone.xml:
10554         * docs/pwg/other-oneton.xml:
10555         * docs/pwg/pwg.xml:
10556           All sort of documentation... Forgot what. Point is that I want this
10557           in before I leave. The 'other-*' will be the last section and will
10558           explain issues specific to these type of elements.
10559
10560 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10561
10562         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10563         (gst_filesrc_get_read):
10564           set all the values on buffers that we can
10565
10566 2004-02-02  David Schleef  <ds@schleef.org>
10567
10568         Change usage of isblah() to g_ascii_isblah() to be more locale
10569         independent.  (#133076)
10570         * gst/gsturi.c: (gst_uri_protocol_check_internal):
10571         * gst/gstutils.c:
10572         * gst/parse/parse.l:
10573
10574 2004-02-02  Jon Trowbridge  <trow@gnu.org>
10575
10576         reviewed by: David Schleef  <ds@schleef.org>
10577
10578         Fix memory leaks:
10579         * gst/gstcaps.c: (gst_caps_to_string):
10580         * gst/registries/gstxmlregistry.c:
10581         (gst_xml_registry_add_path_list_func),
10582         (gst_xml_registry_parse_padtemplate):
10583
10584 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10585
10586         * gst/gstelement.c: (gst_element_default_error):
10587           suffix error messages with period
10588
10589 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10590
10591         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10592         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10593         * gst/gsterror.c: (gst_error_get_message):
10594           Suffix with dots
10595         * po/fr.po:
10596         * po/nl.po:
10597           Update translation files
10598
10599 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10600
10601         * gst/autoplug/gstspideridentity.c:
10602         (gst_spider_identity_sink_loop_type_finding):
10603         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10604         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10605         (gst_filesink_close_file), (gst_filesink_handle_event),
10606         (gst_filesink_chain):
10607         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10608         (gst_filesrc_get_read), (gst_filesrc_open_file):
10609         * gst/elements/gstidentity.c: (gst_identity_chain):
10610         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10611         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10612         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10613         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10614         * gst/gsterror.c: (_gst_core_errors_init),
10615         (_gst_library_errors_init), (_gst_resource_errors_init),
10616         (_gst_stream_errors_init), (gst_error_get_message):
10617         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10618         (gst_pad_recover_caps_error), (gst_pad_pull):
10619         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10620         * gst/schedulers/gstbasicscheduler.c:
10621         (gst_basic_scheduler_chainhandler_proxy),
10622         (gst_basic_scheduler_gethandler_proxy),
10623         (gst_basic_scheduler_cothreaded_chain):
10624           Suffix error messages with period.
10625           Use (NULL) instead of NULL
10626
10627 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10628
10629         * docs/gst/tmpl/gstelement.sgml:
10630         * docs/gst/tmpl/gstxml.sgml:
10631         * gst/gstelement.c: (gst_element_error_full):
10632           add element path to error
10633
10634 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10635
10636         * docs/random/mimetypes:
10637           update raw int/float info
10638         * gst/gsttag.c: (_gst_tag_initialize):
10639         * gst/gsttag.h:
10640           add GST_TAG_ENCODER
10641
10642 2004-01-30  David Schleef  <ds@schleef.org>
10643
10644         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
10645           missing (#132991)
10646
10647 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
10648
10649         reviewed by Benjamin Otte 
10650           parts of the patch submitted in bug #113913
10651
10652         * configure.ac:
10653           use AC_C_INLINE. Use = instead of == with test
10654         * examples/plugins/example.c:
10655         * gst/autoplug/gstspideridentity.c:
10656         * gst/elements/gstfdsrc.c:
10657         * gst/elements/gstfilesrc.c:
10658         * gst/elements/gstidentity.c:
10659         * gst/elements/gstmultidisksrc.c:
10660         * gst/elements/gststatistics.c:
10661         * gst/gstelement.c:
10662         * gst/gstobject.c:
10663         * gst/gstpad.c:
10664         * gst/gstpipeline.c:
10665         * gst/gstthread.c:
10666           don't end enums with a comma
10667         * gst/gstindex.c: (gst_index_compare_func):
10668           do explicit casting to gint
10669         * gst/gsttrace.c: (gst_trace_text_flush):
10670           #define strsize as a macro
10671
10672 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10673
10674         * docs/README:
10675         * docs/gst/gstreamer-docs.sgml:
10676         * docs/gst/gstreamer-sections.txt:
10677         * docs/gst/tmpl/gstelement.sgml:
10678         * docs/gst/tmpl/gsterror.sgml:
10679         * docs/gst/tmpl/gstinterface.sgml:
10680         * docs/gst/tmpl/gstreamer-unused.sgml:
10681         * docs/gst/tmpl/gststructure.sgml:
10682         * docs/gst/tmpl/gsttag.sgml:
10683         * docs/gst/tmpl/gsttaginterface.sgml:
10684         * docs/gst/tmpl/gstvalue.sgml:
10685         make sure all API ends up in the built docs
10686         * gst/gstinterface.c:
10687         * gst/gststructure.c: (gst_structure_id_set_value),
10688         (gst_structure_set_value), (gst_structure_id_get_value):
10689         * gst/gststructure.h:
10690         * gst/gstvalue.h:
10691         sync .h with .c declarations
10692
10693 2004-01-30  Julien Moutte  <julien@moutte.net>
10694
10695         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
10696         Ronald will fix riffread.
10697
10698 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10699
10700         * docs/pwg/advanced-interfaces.xml:
10701           Added tuner interface docs.
10702
10703 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10704
10705         * docs/random/mimetypes:
10706           correct Theora information
10707         * gst/gstelement.h:
10708           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
10709
10710 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10711
10712         * gst/gstelement.c: (gst_element_error_full):
10713         * gst/gstelement.h:
10714           GST_ELEMENT_ERROR in enum -> _IN_ERROR
10715
10716 2004-01-29  Julien MOUTTE  <julien@moutte.net>
10717
10718         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10719         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
10720         again and even before DISCONT.
10721         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
10722         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
10723         bytestream so that it's not stopping to fill the bytestream if events
10724         different than EOS or DISCONT are received. Instead it process them so
10725         that they go downstream.
10726
10727 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10728
10729         * docs/gst/tmpl/gstelement.sgml:
10730         * docs/gst/tmpl/gstreamer-unused.sgml:
10731         * docs/gst/tmpl/gstxml.sgml:
10732         * gst/autoplug/gstspideridentity.c:
10733         (gst_spider_identity_sink_loop_type_finding):
10734         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10735         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10736         (gst_filesink_close_file), (gst_filesink_handle_event),
10737         (gst_filesink_chain):
10738         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10739         (gst_filesrc_get_read), (gst_filesrc_open_file):
10740         * gst/elements/gstidentity.c: (gst_identity_chain):
10741         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10742         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10743         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10744         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10745         * gst/gstelement.h:
10746         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10747         (gst_pad_recover_caps_error), (gst_pad_pull):
10748         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10749         * gst/schedulers/gstbasicscheduler.c:
10750         (gst_basic_scheduler_chainhandler_proxy),
10751         (gst_basic_scheduler_gethandler_proxy),
10752         (gst_basic_scheduler_cothreaded_chain):
10753           gst_element_error -> GST_ELEMENT_ERROR
10754
10755 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10756
10757         * docs/Makefile.am:
10758         * docs/gst/tmpl/gstelement.sgml:
10759         * docs/gst/tmpl/gstxml.sgml:
10760         * docs/manuals.mak:
10761         * docs/pwg/advanced-request.xml:
10762         * docs/pwg/advanced-scheduling.xml:
10763         * docs/pwg/advanced-tagging.xml:
10764           fix non-validating docbook using CDATA
10765           make sure make check-local gets run first to check if it validates
10766
10767 2004-01-29  Julien MOUTTE <julien@moutte.net>
10768
10769         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
10770         handling (up and downstream).
10771         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
10772         my_filter thing.
10773
10774 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10775
10776         * docs/pwg/advanced-tagging.xml:
10777           Add docs about tag writing.
10778
10779 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10780
10781         * docs/pwg/advanced-tagging.xml:
10782           Add a part about tag reading and application signalling... Tag
10783           writing still needs to be documented.
10784         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10785           We can set file locations in READY, too.
10786
10787 2004-01-29  Julien MOUTTE <julien@moutte.net>
10788
10789         * docs/random/ds/element-checklist: Adding some notes about src
10790         events.
10791
10792 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10793
10794         * docs/random/mimetypes:
10795           Update docs to point to correct elements for various mimetypes, and
10796           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
10797           <stephane.loeuillet@tiscali.fr>.
10798
10799 2004-01-28  David Schleef  <ds@schleef.org>
10800
10801         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
10802
10803 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10804
10805         * docs/random/mimetypes:
10806           update docs for audio/x-raw-float. Add "buffer-frames=0 means
10807           undefined"
10808         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10809           make it only work in NULL.
10810         * gst/gstcaps.c:
10811           don't posion NULL caps
10812         * gst/gstelement.c: (gst_element_set_time):
10813           add debugging statement
10814         * gst/gstelement.c: (gst_element_emit_found_tag),
10815         (gst_element_found_tag_func), (gst_element_found_tags):
10816         * gst/gstelement.h:
10817           These functions take const taglists
10818         * gst/gstpad.c: (gst_pad_proxy_getcaps):
10819           fix memleak
10820         * gst/gstpad.c: (gst_pad_event_default):
10821           make more effort on handling discont and clocks, g_warn if everything
10822           fails
10823         * gst/gststructure.c: (gst_structure_remove_fields),
10824         (gst_structure_remove_fields_valist):
10825         * gst/gststructure.h:
10826           add gst_structure_remove_fields(_valist)
10827         * gst/gsttag.c:
10828           fix doc glitch
10829
10830 2004-01-28  David Schleef  <ds@schleef.org>
10831
10832         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
10833         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
10834         Fix memory leakage of gst_caps_to_string().
10835
10836         Use GST_PTR_FORMAT instead of gst_caps_to_string():
10837         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
10838         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
10839         (gst_spider_identity_sink_loop_type_finding):
10840         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
10841         (find_suggest):
10842         * gst/gstpad.c: (gst_pad_try_relink_filtered),
10843         (gst_pad_set_explicit_caps):
10844         * gst/parse/grammar.y:
10845
10846 2004-01-28  David Schleef  <ds@schleef.org>
10847
10848         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
10849         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
10850         * docs/random/ds/0.9-suggested-changes: Notes from Company.
10851         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
10852         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
10853         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
10854         (gst_debug_log_default), (_gst_info_printf_extension),
10855         (_gst_info_printf_extension_arginfo):  Add printf extension.
10856         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
10857         * gst/gststructure.c: (gst_structure_to_string),
10858         (_gst_structure_parse_value): Use gst_value_deserialize() and
10859         remove old code.
10860         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
10861         (gst_value_deserialize_boolean), (gst_strtoi),
10862         (gst_value_deserialize_int), (gst_value_deserialize_double),
10863         (gst_value_deserialize_string), (gst_value_deserialize): Implement
10864         a bunch of deserialize functions and gst_value_deserialize.
10865         * gst/gstvalue.h: er, _de_serialize, not unserialize
10866         * testsuite/caps/string-conversions.c: (main): We don't currently
10867         handle (float) in caps, so convert these to (double).
10868         * testsuite/debug/Makefile.am: Add new test for the printf extension
10869         * testsuite/debug/printf_extension.c: (main): same
10870
10871 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10872
10873         * docs/random/company/time:
10874           Add some docs about clocking and time
10875
10876 2004-01-28  Julien MOUTTE <julien@moutte.net>
10877
10878         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
10879
10880 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10881
10882         * docs/pwg/advanced-clock.xml:
10883         * docs/pwg/advanced-dparams.xml:
10884         * docs/pwg/advanced-events.xml:
10885         * docs/pwg/advanced-interfaces.xml:
10886         * docs/pwg/advanced-midi.xml:
10887         * docs/pwg/advanced-request.xml:
10888         * docs/pwg/advanced-scheduling.xml:
10889         * docs/pwg/advanced-tagging.xml:
10890         * docs/pwg/advanced-types.xml:
10891         * docs/pwg/appendix-checklist.xml:
10892         * docs/pwg/building-boiler.xml:
10893         * docs/pwg/building-chainfn.xml:
10894         * docs/pwg/building-filterfactory.xml:
10895         * docs/pwg/building-pads.xml:
10896         * docs/pwg/building-props.xml:
10897         * docs/pwg/building-signals.xml:
10898         * docs/pwg/building-state.xml:
10899         * docs/pwg/building-testapp.xml:
10900         * docs/pwg/intro-basics.xml:
10901         * docs/pwg/intro-preface.xml:
10902         * docs/pwg/other-autoplugger.xml:
10903         * docs/pwg/other-sink.xml:
10904         * docs/pwg/other-source.xml:
10905         * docs/pwg/titlepage.xml:
10906           fix up id's
10907
10908 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10909
10910         * docs/95NonPath:
10911         * docs/HACKING:
10912         * docs/README:
10913         * docs/building-the-docs-on-debian:
10914           collect relevant bits of doc info
10915
10916 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10917
10918         * docs/pwg/advanced_tagging.xml:
10919           Half-assed commit so Thomas can re-arrange document IDs here to be
10920           consistent, too.
10921
10922 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10923
10924         * docs/manual/autoplugging.xml:
10925         * docs/manual/bins-api.xml:
10926         * docs/manual/bins.xml:
10927         * docs/manual/buffers-api.xml:
10928         * docs/manual/buffers.xml:
10929         * docs/manual/clocks.xml:
10930         * docs/manual/components.xml:
10931         * docs/manual/cothreads.xml:
10932         * docs/manual/debugging.xml:
10933         * docs/manual/dparams-app.xml:
10934         * docs/manual/dynamic.xml:
10935         * docs/manual/elements-api.xml:
10936         * docs/manual/elements.xml:
10937         * docs/manual/factories.xml:
10938         * docs/manual/gnome.xml:
10939         * docs/manual/goals.xml:
10940         * docs/manual/helloworld.xml:
10941         * docs/manual/helloworld2.xml:
10942         * docs/manual/init-api.xml:
10943         * docs/manual/intro.xml:
10944         * docs/manual/links-api.xml:
10945         * docs/manual/links.xml:
10946         * docs/manual/manual.xml:
10947         * docs/manual/motivation.xml:
10948         * docs/manual/pads-api.xml:
10949         * docs/manual/pads.xml:
10950         * docs/manual/plugins-api.xml:
10951         * docs/manual/plugins.xml:
10952         * docs/manual/programs.xml:
10953         * docs/manual/queues.xml:
10954         * docs/manual/quotes.xml:
10955         * docs/manual/schedulers.xml:
10956         * docs/manual/states-api.xml:
10957         * docs/manual/states.xml:
10958         * docs/manual/threads.xml:
10959         * docs/manual/typedetection.xml:
10960         * docs/manual/xml.xml:
10961           use chapter, part, section or misc as id starts for all bits
10962
10963 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10964
10965         * docs/gst/gstreamer-sections.txt:
10966           Fix up TITLE of the sections
10967
10968 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10969
10970         * docs/pwg/advanced_interfaces.xml:
10971           Add documentation on propertyprobing.
10972         * docs/pwg/advanced_events.xml:
10973         * docs/pwg/advanced_tagging.xml:
10974         * docs/pwg/building_boiler.xml:
10975         * docs/pwg/building_filterfactory.xml:
10976         * docs/pwg/pwg.xml:
10977           Move filterfactory and tagging into their own chapter, add a chapter
10978           on events. all these are empty placeholders that will be filled in
10979           some day.
10980
10981 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10982
10983         * docs/pwg/advanced_interfaces.xml:
10984           Docs for mixer interface. Also a check for website uploading.
10985
10986 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10987
10988         * docs/HACKING:
10989         * docs/Makefile.am:
10990         * docs/faq/Makefile.am:
10991         * docs/gst/Makefile.am:
10992         * docs/gst/tmpl/gstelement.sgml:
10993         * docs/gst/tmpl/gstplugin.sgml:
10994         * docs/gst/tmpl/gstreamer-unused.sgml:
10995         * docs/libs/Makefile.am:
10996         * docs/manual/Makefile.am:
10997         * docs/manuals.mak:
10998         * docs/pwg/Makefile.am:
10999         * docs/upload.mak:
11000           Separate out upload target and make it similar for
11001           both docbook and gtk-doc docs
11002
11003 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11004
11005         * docs/manuals.mak:
11006           Fix upload target to work with freedesktop
11007
11008 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11009
11010         * docs/pwg/advanced_types.xml:
11011           Add notes on creating your own types.
11012         * docs/pwg/building_boiler.xml:
11013         * docs/pwg/building_pads.xml:
11014         * docs/pwg/building_state.xml:
11015           Add some stuff about how to retrieve values from structures, how
11016           that relates to types and change layout slightly again to be almost
11017           perfect.
11018
11019 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11020
11021         * docs/pwg/advanced_dparams.xml:
11022         * docs/pwg/advanced_scheduling.xml:
11023           Change index layout slightly.
11024
11025 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11026
11027         * docs/pwg/advanced_clock.xml:
11028         * docs/pwg/advanced_interfaces.xml:
11029         * docs/pwg/advanced_midi.xml:
11030           General placeholders for now.
11031         * docs/pwg/advanced_request.xml:
11032           Explanation about sometimes and request pads.
11033         * docs/pwg/advanced_scheduling.xml:
11034           Concept of bytestream, loopfunctions and schedulers.
11035         * docs/pwg/building_boiler.xml:
11036           Add something about plugin-init.
11037
11038 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11039
11040         * docs/pwg/building_pads.xml:
11041           Fix broken docbook
11042
11043 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11044
11045         * docs/pwg/advanced_interfaces.xml:
11046         * docs/pwg/pwg.xml:
11047           Add as a placeholder for future filling-in.
11048         * docs/pwg/basics_autoplugging.xml:
11049         * docs/pwg/basics_buffers.xml:
11050         * docs/pwg/basics_elements.xml:
11051         * docs/pwg/basics_events.xml:
11052         * docs/pwg/basics_plugins.xml:
11053         * docs/pwg/basics_types.xml:
11054           Remove, because unused (this is all in intro_basics.xml).
11055         * docs/pwg/building_signals.xml:
11056           Short intro to signals + reference to GObject docs - we really
11057           shouldn't go into these sort of things to deply because we don't
11058           use them that extensively anyway.
11059         * docs/pwg/building_state.xml:
11060           Explanation of states. Benjamin, please check.
11061         * docs/pwg/building_testapp.xml:
11062           Put everything in one page - putting only a few lines of content
11063           per page doesn't really make sense.
11064
11065           Time to get into the advanced topics. ;).
11066
11067 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11068
11069         * docs/pwg/advanced_types.xml:
11070           Finish documenting the current state of mimetypes.
11071         * docs/pwg/building_boiler.xml:
11072         * docs/pwg/building_chainfn.xml:
11073         * docs/pwg/building_pads.xml:
11074         * docs/pwg/building_props.xml:
11075         * docs/pwg/building_testapp.xml:
11076           Start documenting the "how to build a simple audio filter" part
11077           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
11078           states and (maybe?) a short introduction to capsnego in the chapter
11079           on pads (building_pads.xml). Capsnego should probably be explained
11080           fully in advanced_capsnego.xml or so.
11081
11082 2004-01-26  David Schleef  <ds@schleef.org>
11083
11084         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
11085         * gst/gstpad.h: Add new function to allow element to (somewhat)
11086         specify non-fixed caps on a pad.
11087         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
11088         that I added a few weeks ago.
11089
11090 2004-01-26  David Schleef  <ds@schleef.org>
11091
11092         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
11093           making try_set_caps() work with non-fixed caps.
11094
11095 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11096
11097         * docs/pwg/advanced_types.xml:
11098         * docs/pwg/intro_basics.xml:
11099         * docs/pwg/intro_preface.xml:
11100         * docs/pwg/pwg.xml:
11101         * docs/pwg/titlepage.xml:
11102           First try to resurrect the PWG. I'm halfway integrating the mimetypes
11103           in here (docs/random/mimetypes), and will from there on work on both
11104           updating outdated parts and adding missing parts.
11105           That doesn't mean I'll fix it completely, but I'll try at least. ;).
11106
11107 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11108
11109         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
11110           policy is set
11111
11112 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11113
11114         * gst/gstelement.h:
11115           remove gst_element_factory_get_version. It doesn't exist anymore.
11116         * gst/gstplugin.c:
11117         * gst/gstplugin.h:
11118           remove gst_plugin_set_name and change gst_plugin_get_longname to
11119           gst_plugin_get_description to match code.
11120         * gst/gsterror.h:
11121           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
11122         * gst/gstpad.c: (gst_pad_try_set_caps):
11123           make it work with nonfixed caps.
11124           Note that even in the nonfixed case the link function of the pad
11125           that tries to set caps isn't called.
11126
11127 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11128
11129         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
11130           fix bug where buffer was not assembled correctly
11131         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
11132           silence by default
11133         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11134           only seek if there's no more buffers that could work without seeking
11135
11136 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11137
11138         * gst/gsttag.c: (_gst_tag_initialize):
11139         * gst/gsttag.h:
11140           Add application tag (for encoding/muxing app).
11141
11142 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11143
11144         * autogen.sh:
11145           make autopoint force, and libtoolize not copy
11146         * common/m4/as-docbook.m4:
11147           added docbook xml catalog setup check
11148         * common/m4/gst-doc.m4:
11149           use docbook check
11150
11151 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11152
11153         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
11154         * gst/gsttag.h:
11155           add GstTagFlag
11156
11157 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11158
11159         * docs/gst/gstreamer-sections.txt:
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           sync latest API changes to docs
11167
11168 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11169
11170         * gst/gstpluginfeature.c:
11171           fix doc snippet
11172         * tools/gst-inspect.c: (print_element_list):
11173           fix output of typefind
11174           add GPL header
11175         * tools/gst-launch.c:
11176           add GPL header
11177
11178 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11179
11180         * gst/elements/Makefile.am:
11181         * gst/elements/gstelements.c:
11182         * gst/elements/gsttypefindelement.c:
11183         * gst/elements/gsttypefindelement.h:
11184         * po/POTFILES.in:
11185         * po/fr.po:
11186         * po/nl.po:
11187           renamed gsttypefindelement to gsttypefind, conserving CVS history
11188
11189 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11190
11191         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
11192         * gst/gsttag.h:
11193           add some tags used in ogg as well
11194           fix _ in replaygain tags
11195
11196 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11197
11198         * gst/gsterror.h:
11199           fix wrong GST_LIBRARY_ERROR_ENCODE addition
11200
11201 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11202
11203         * gst/gstelement.c: (gst_element_error_full):
11204         * gst/gstelement.h:
11205           change _extended to _full
11206
11207 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11208
11209         reviewed by: <delete if not using a buddy>
11210
11211         * docs/gst/tmpl/gst.sgml:
11212         * docs/gst/tmpl/gstbuffer.sgml:
11213         * docs/gst/tmpl/gstclock.sgml:
11214         * docs/gst/tmpl/gstelement.sgml:
11215         * docs/gst/tmpl/gstreamer-unused.sgml:
11216         * docs/gst/tmpl/gstxml.sgml:
11217         * gst/gstelement.c: (gst_element_error_full):
11218         * gst/gstelement.h:
11219
11220 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11221
11222         * gst/gstelement.h: fix _gst_element_error_printf prototype
11223
11224 2004-01-20  David Schleef  <ds@schleef.org>
11225
11226         * gst/gststructure.c: (gst_structure_to_string):
11227         Convert function to use gst_value_serialize().
11228         * gst/gstvalue.c: (gst_value_serialize_list),
11229         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
11230         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
11231         (gst_value_serialize_int), (gst_value_serialize_double),
11232         (gst_string_wrap), (gst_value_serialize_string),
11233         (gst_value_serialize), (gst_value_deserialize):
11234         * gst/gstvalue.h:
11235         Add implementations for serialize.
11236
11237 2004-01-20  Julien MOUTTE  <julien@moutte.net>
11238
11239         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
11240         we want to keep that one in the future or change xvidenc.c to use 
11241         another error.
11242
11243 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11244
11245         * gst/gstelement.c: (_gst_element_error_printf):
11246         * gst/gstelement.h:
11247           privatise function
11248
11249 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11250
11251         * docs/random/error:
11252           doc explaining error system
11253         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11254           cleanup
11255
11256 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11257
11258         * gst/gst-i18n-app.h:
11259         * gst/gst-i18n-lib.h:
11260           remove inclusion of config.h
11261         * po/POTFILES.in:
11262         * po/nl.po:
11263           add gst/gstelement.c
11264
11265 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11266
11267         * po/nl.po: updated Dutch translation
11268
11269 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11270
11271         * gst/gsterror.c: (_gst_core_errors_init),
11272         (_gst_library_errors_init), (_gst_resource_errors_init),
11273         (_gst_stream_errors_init):
11274         remove ending punctuation dots
11275
11276 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11277
11278         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11279         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
11280         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11281         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11282         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11283         use GST_ERROR_SYSTEM
11284
11285 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11286
11287         * gst/gstelement.c: (gst_element_error_printf),
11288         (gst_element_error_extended):
11289         * gst/gstelement.h:
11290           add a helper printf function so we can have NULL values passed.
11291
11292 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11293
11294         * gst/gstelement.h:
11295           add G_STMT macros to gst_element_error, which isn't strictly
11296           necessary but people tell me to anyway.
11297
11298 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11299
11300         * gst/Makefile.am:
11301         * gst/autoplug/gstspideridentity.c:
11302         (gst_spider_identity_sink_loop_type_finding):
11303         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11304         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11305         (gst_filesink_close_file), (gst_filesink_handle_event),
11306         (gst_filesink_chain):
11307         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
11308         (gst_filesrc_map_region), (gst_filesrc_get_read),
11309         (gst_filesrc_open_file):
11310         * gst/elements/gstidentity.c: (gst_identity_chain):
11311         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11312         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11313         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11314         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
11315         * gst/gst.h:
11316         * gst/gst_private.h:
11317         * gst/gstelement.c: (gst_element_class_init),
11318         (gst_element_default_error), (gst_element_error_func),
11319         (gst_element_error_extended):
11320         * gst/gstelement.h:
11321         * gst/gsterror.c: (_gst_core_errors_init),
11322         (_gst_library_errors_init), (_gst_resource_errors_init),
11323         (_gst_stream_errors_init), (gst_error_get_message):
11324         * gst/gsterror.h:
11325         * gst/gstinfo.c: (_gst_debug_init):
11326         * gst/gstmarshal.list:
11327         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11328         (gst_pad_recover_caps_error), (gst_pad_pull):
11329         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11330         * gst/schedulers/gstbasicscheduler.c:
11331         (gst_basic_scheduler_chainhandler_proxy),
11332         (gst_basic_scheduler_gethandler_proxy),
11333         (gst_basic_scheduler_cothreaded_chain):
11334         * po/POTFILES.in:
11335         * po/fr.po:
11336         * po/nl.po:
11337           change error signal
11338           add error categories
11339
11340 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
11341
11342         * gst/gsttag.c: (_gst_tag_initialize):
11343         * gst/gsttag.h:
11344         Add replaygain tag
11345
11346 2004-01-18  Colin Walters  <walters@verbum.org>
11347
11348         * examples/retag/retag.c: Call gst_init before processing
11349         program args.  Add g_assert to _link_many call.
11350
11351 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11352
11353         * gst/gstpad.c: (gst_pad_alloc_buffer):
11354           Return a newly allocated buffer when the pad has no peer.
11355
11356 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11357
11358         * gst/gstclock.c: (gst_clock_get_time):
11359           make it compile with gcc 2.95 again.
11360           Patch by Scott Wheeler
11361
11362 2004-01-15  David Schleef  <ds@schleef.org>
11363
11364         * gst/gstcaps.h:
11365         Added gst_caps_is_simple() macro.
11366         * testsuite/caps/caps.c: (test1):
11367         * testsuite/caps/intersect2.c: (main):
11368         * testsuite/caps/intersection.c: (main):
11369         Fixes to make 'make check' work again after removing
11370         gst_caps_is_chained().
11371
11372 2004-01-15  Leif Johnson <leif@ambient.2y.net>
11373
11374         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
11375         and additions to the MIDI document.
11376
11377 2004-01-15  David Schleef  <ds@schleef.org>
11378
11379         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
11380         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
11381         of GST_RPAD_, since we don't know if it's a real or ghost pad.
11382
11383 2004-01-15  David Schleef  <ds@schleef.org>
11384
11385         * gst/gstqueue.c:
11386         * gst/gstqueue.h:
11387         Fix the spelling of "treshold" and make min_threshold actually
11388         affect the queue.
11389
11390 2004-01-15  David Schleef  <ds@schleef.org>
11391
11392         * gst/gstcaps.c:
11393         Add lots of documentation.
11394         * gst/gstcaps.h:
11395         Deprecate a few functions.
11396         * gst/gstpad.c:
11397         Removed use of deprecated functions.
11398
11399 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11400
11401         * gst/gstpad.c: (gst_pad_is_linked):
11402         * gst/gstpad.h:
11403           implement gst_pad_is_linked
11404         * gst/gstelement.h:
11405           reserve space for initiate_state_change
11406
11407 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11408
11409         * gst/autoplug/gstspideridentity.c:
11410         (gst_spider_identity_sink_loop_type_finding):
11411           break infinite loop by just returning instead of looping
11412         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
11413           set event time difference correctly. Set it to 1 second instead
11414           of 100ms to be more tolerant
11415         * gst/gstelement.c: (gst_element_set_time):
11416           add debugging output
11417
11418 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11419
11420         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
11421           query if buffers are inside the pool, ignore events
11422
11423 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11424
11425         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
11426         (gst_clock_set_speed), (gst_clock_set_active),
11427         (gst_clock_is_active), (gst_clock_reset),
11428         (gst_clock_handle_discont):
11429         * gst/gstclock.h:
11430           deprecate old interface and disable functions that aren't in use
11431           anymore.
11432         * gst/gstelement.h:
11433         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
11434         (gst_element_set_time), (gst_element_adjust_time):
11435           add concept of "element time" and functions to get/set this time.
11436         * gst/gstelement.c: (gst_element_change_state):
11437           update element time correctly.
11438         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
11439           This is a debug message, not a g_critical.
11440         * gst/gstpad.c: (gst_pad_event_default):
11441           handle discontinuous events right with element time.
11442         * gst/gstscheduler.c: (gst_scheduler_state_transition):
11443           update to clocking fixes.
11444           set clocks on elements in READY=>PAUSED. The old behaviour caused
11445           a wrong element time on the first element that started playing.
11446         * gst/schedulers/gstbasicscheduler.c:
11447         (gst_basic_scheduler_class_init):
11448         * gst/schedulers/gstoptimalscheduler.c:
11449         (gst_opt_scheduler_class_init):
11450           remove code that just implements the default behaviour.
11451         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
11452           update to use new clocking functions
11453         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
11454         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
11455           update to test new element time.
11456         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
11457           use _get_allowed_caps instead of _get_caps. This catches filtered
11458           caps correctly.
11459         * testsuite/debug/commandline.c:
11460           update for new GST_DEBUG syntax.
11461         * testsuite/threads/Makefile.am:
11462           disable a test that only works sometimes.
11463
11464 2004-01-13  Julien MOUTTE <julien@moutte.net>
11465
11466         * po/LINGUAS: Adding fr.
11467         * po/fr.po: Adding french translation.
11468
11469 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11470
11471         * gst/parse/grammar.y:
11472         * po/POTFILES.in:
11473         * po/nl.po:
11474         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
11475           translate parsing error messages
11476
11477 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11478
11479         * po/POTFILES.in: adding gst-launch
11480         * po/nl.po: updated translation, all 99 strings translated
11481         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
11482         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
11483           fix strings for translation
11484
11485 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11486
11487         * gst/gst.c:
11488           - capitalize beginnings of popt options
11489           - fix strings for translation
11490           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
11491
11492 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11493
11494         * po/README: add some notes on how to update translations
11495
11496 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11497
11498         * ABOUT-NLS: removed, is autogenerated from autopoint
11499         * autogen.sh: add autopoint stuff
11500         * configure.ac: fix up gettext stuff
11501         * gst/Makefile.am: add i18n headers to noinst_HEADERS
11502         * gst/elements/gsttypefindelement.c: add header include
11503         * gst/gettext.h: add header, copy from system-installed header
11504         * gst/gst-i18n-app.h: to be included by each app having translations
11505         * gst/gst-i18n-lib.h: to be included by each lib having translations
11506         * gst/gst.c: (init_pre): fix up gettext calls
11507         * gst/gst_private.h: remove i18n stuff, moving to separate headers
11508         * po/LINGUAS: the new way to specify translations present
11509         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
11510         * po/Makevars: the variables filled in for GStreamer
11511         * po/POTFILES.in: added new files with translations
11512         * po/de.po: has new strings
11513         * po/nl.po: readded, has new strings
11514
11515 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11516
11517         * gst/gsttag.c: fix some strings marked for translation
11518
11519 2004-01-13  Iain <iain@prettypeople.org>
11520
11521         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
11522         group when we add an element to it, cos we unref it when we remove one
11523
11524 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11525
11526         * testsuite/debug/commandline.c: (debug_not_reached):
11527         * testsuite/debug/output.c: (check_message):
11528           fix testsuite
11529
11530 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11531
11532         * examples/cutter/.cvsignore:
11533         * examples/helloworld/.cvsignore:
11534         * examples/launch/.cvsignore:
11535         * examples/manual/.cvsignore:
11536         * examples/mixer/.cvsignore:
11537         * examples/pingpong/.cvsignore:
11538         * examples/plugins/.cvsignore:
11539         * examples/queue/.cvsignore:
11540         * examples/queue2/.cvsignore:
11541         * examples/queue3/.cvsignore:
11542         * examples/queue4/.cvsignore:
11543         * examples/retag/.cvsignore:
11544         * examples/thread/.cvsignore:
11545         * examples/typefind/.cvsignore:
11546         * examples/xml/.cvsignore:
11547         * gst/.cvsignore:
11548         * gst/autoplug/.cvsignore:
11549         * gst/elements/.cvsignore:
11550         * gst/indexers/.cvsignore:
11551         * gst/parse/.cvsignore:
11552         * gst/registries/.cvsignore:
11553         * gst/schedulers/.cvsignore:
11554         * libs/gst/bytestream/.cvsignore:
11555         * libs/gst/control/.cvsignore:
11556         * libs/gst/getbits/.cvsignore:
11557         * tests/.cvsignore:
11558         * tests/bufspeed/.cvsignore:
11559         * tests/instantiate/.cvsignore:
11560         * tests/memchunk/.cvsignore:
11561         * tests/muxing/.cvsignore:
11562         * tests/sched/.cvsignore:
11563         * tests/seeking/.cvsignore:
11564         * tests/threadstate/.cvsignore:
11565         * testsuite/.cvsignore:
11566         * testsuite/caps/.cvsignore:
11567         * testsuite/cleanup/.cvsignore:
11568         * testsuite/dynparams/.cvsignore:
11569         * testsuite/plugin/.cvsignore:
11570         * tools/.cvsignore:
11571           update - this is huge, because it includes *.bb, *.bbg and *.da files
11572           which are generated for gcov.
11573
11574 2004-01-11  David Schleef  <ds@schleef.org>
11575
11576         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
11577         a function to parse integers in ways that strto[u]l() does not.
11578
11579 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11580
11581         * tools/gst-inspect.c: (print_caps):
11582           improve output of caps a bit
11583
11584 2004-01-11  David Schleef  <ds@schleef.org>
11585
11586         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
11587         inherit correct flags (READONLY and DONTKEEP).
11588
11589 2004-01-11  David Schleef  <ds@schleef.org>
11590
11591         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
11592         (gst_filesrc_map_region):
11593         * gst/gstbuffer.c: (_gst_buffer_initialize),
11594         (_gst_buffer_sub_free), (gst_buffer_default_copy),
11595         (gst_buffer_new), (gst_buffer_create_sub),
11596         (gst_buffer_is_span_fast), (gst_buffer_span):
11597         * gst/gstbuffer.h:
11598         Change GstBuffer private structure element names. (all files)
11599         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
11600         (gst_queue_link):
11601         * gst/gstqueue.h:
11602         Implement getcaps/pad_link functions that handle the case where
11603         there are data in the queue.
11604
11605 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11606
11607         * gst/elements/gstbufferstore.c:
11608           initialize debugging structure correctly
11609         * gst/elements/gsttee.c: (gst_tee_set_property):
11610           g_object_notify when property was changed
11611         * gst/elements/gsttypefindelement.c:
11612         (gst_type_find_element_change_state):
11613           clear caps correctly
11614
11615 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11616
11617         * gst/gstqueue.c: (gst_queue_init):
11618           Use better defaults for when a queue should block. This
11619           gets rid of jerky playback for quite a few files.
11620           It takes more memory.
11621
11622 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11623
11624         (gst_xml_registry_parse_padtemplate):
11625           make critical message slightly more useful
11626
11627 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11628
11629         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
11630         (gst_debug_message_get), (gst_debug_log_default):
11631         * gst/gstinfo.h:
11632           Change gst_debug_log(_valist) to take a const format string.
11633           Change prototype of log function and functions using those to 
11634           take a GstDebugMessage instead of a string that requires using
11635           gst_debug_message_get.
11636
11637 2004-01-08  David Schleef  <ds@schleef.org>
11638
11639         * Makefile.am:
11640         * configure.ac:
11641         Add option --enable-gcov to build GStreamer with -fprofile-arcs
11642         and -ftest-coverage, which allows gcov to show information about
11643         testsuite coverage.
11644
11645 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11646
11647         * gst/gstutils.h:
11648           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
11649           GST_PARENT_CALL_WITH_DEFAULT
11650         * gst/elements/gstaggregator.c: 
11651         * gst/elements/gstbufferstore.c: 
11652         * gst/elements/gstfakesink.c: 
11653         * gst/elements/gstfakesrc.c: 
11654         * gst/elements/gstfdsink.c: 
11655         * gst/elements/gstfdsrc.c: 
11656         * gst/elements/gstfilesink.c: 
11657         * gst/elements/gstfilesrc.c: 
11658         * gst/elements/gstidentity.c: 
11659         * gst/elements/gstmd5sink.c: 
11660         * gst/elements/gstmultidisksrc.c:
11661         * gst/elements/gstpipefilter.c: 
11662         * gst/elements/gstshaper.c:
11663         * gst/elements/gststatistics.c:
11664         * gst/elements/gsttee.c:
11665         * gst/elements/gsttypefindelement.c:
11666           use them.
11667
11668 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
11669
11670         * docs/gst/gstreamer-docs.sgml: remove props
11671         * docs/gst/gstreamer-sections.txt: remove props
11672         * docs/gst/tmpl/gst.sgml:
11673         * docs/gst/tmpl/gstbin.sgml:
11674         * docs/gst/tmpl/gstbuffer.sgml:
11675         * docs/gst/tmpl/gstcaps.sgml:
11676         * docs/gst/tmpl/gstclock.sgml:
11677         * docs/gst/tmpl/gstelement.sgml:
11678         * docs/gst/tmpl/gstindex.sgml:
11679         * docs/gst/tmpl/gstobject.sgml:
11680         * docs/gst/tmpl/gstpad.sgml:
11681         * docs/gst/tmpl/gstpadtemplate.sgml:
11682         * docs/gst/tmpl/gstreamer-unused.sgml:
11683         * docs/gst/tmpl/gstthread.sgml:
11684         * docs/gst/tmpl/gstxml.sgml:
11685           sync with code reorganization
11686
11687 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
11688
11689         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
11690         Make the 'Could not find compatible pad' message more informative.
11691
11692 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11693                                                                                 
11694         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
11695           Fix for if we pass NULL as property to location.
11696         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
11697         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
11698           Fix for instantiate-test (see below).
11699         * gst/gststructure.c: (_gst_structure_parse_value):
11700           Fix compile error on gcc-2.96.
11701         * configure.ac:
11702         * tests/Makefile.am:
11703         * tests/instantiate/Makefile.am:
11704         * tests/instantiate/create.c: (create_all_elements), (main):
11705           Add a test that instantiates all elements. This makes it easy to
11706           track dead code for old API/design (like setting event functions
11707           on sink pads and so on).
11708
11709 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
11710
11711         * gst/gstcaps.c: (gst_caps_append_structure):
11712           Move the poisoning to allow a NULL structure
11713         * gst/gstevent.c: (_gst_event_free):
11714           When freeing a navigation event, free the structure
11715           also
11716
11717 2004-01-04  David Schleef  <ds@schleef.org>
11718
11719         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11720         Remove usage of gst_pad_proxy_fixate.
11721         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
11722         (gst_caps_split_one), (gst_caps_replace):
11723         Add poisoning code.
11724         * gst/gstmarshal.list:
11725         Add pointer__pointer for fixate signal
11726         * gst/gstpad.c: (gst_real_pad_class_init),
11727         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11728         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
11729         (gst_pad_set_explicit_caps), (gst_pad_template_new):
11730         Add poisoning code. Add fixate signal on RealPad. Change
11731         set_explicit_caps() to take const GstCaps, like try_set_caps().
11732         * gst/gstpad.h:
11733         * testsuite/caps/Makefile.am:
11734         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
11735
11736 2004-01-03  David Schleef  <ds@schleef.org>
11737
11738         * gst/elements/gsttypefindelement.c:
11739         (gst_type_find_element_have_type), (gst_type_find_element_init):
11740         Use gst_pad_use_explicit_caps for src pad.
11741         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
11742         before using it.
11743
11744 2004-01-03  David Schleef  <ds@schleef.org>
11745
11746         * gst/gstelement.c: (gst_element_link_pads_filtered),
11747         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
11748         that linking was successful.
11749         * gst/gstpad.c: (gst_pad_link_free),
11750         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
11751         (gst_pad_link_try), (gst_pad_link_unnegotiate),
11752         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
11753         GstPadLinkReturn correctly between functions, and don't fail
11754         when DELAYED is used (DELAYED is very important).  Better
11755         cleanup on unlinking and unnegotiation.  Should fix some spider
11756         bugs.
11757
11758 2004-01-02  David Schleef  <ds@schleef.org>
11759
11760         * gst/gstelement.c: (gst_element_class_init),
11761         (gst_element_base_class_init): ->padtemplates should be cleared
11762         in base_init, since we need to have a fresh list for every
11763         class.  (Alternately, we chould copy the list and share the
11764         actual pad templates (not the list), but that would require
11765         changing every plugin to move pad template registration from
11766         base_init to class_init.)
11767
11768 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11769
11770         * gst/gstelement.c: (gst_element_class_add_pad_template):
11771           Refuse registering a pad template if another pad template
11772           with the same name already exists (#114715).
11773
11774 2004-01-02  David Schleef  <ds@schleef.org>
11775
11776         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
11777         (gst_caps_is_equal_fixed): Add new function.
11778         * gst/gstcaps.h: ditto.
11779         * gst/gstpad.c: (gst_real_pad_class_init),
11780         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
11781         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
11782         check new caps against existing caps -- if they're the same, return
11783         OK without renegotiating.  caps-nego-failed signal fixed so that
11784         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
11785         to save an extra caps copy.  Don't complete negotiation if a pad
11786         link function returns DELAYED.
11787
11788 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11789
11790         * gst/gstpad.c: (gst_pad_try_relink_filtered):
11791           Fix wrong g_return_if_fail
11792
11793 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
11794
11795         * gst/gstbin.c: (gst_bin_class_init):
11796         Change the marshalling of element_added/element_removed
11797         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
11798         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
11799
11800 2004-01-01  David Schleef  <ds@schleef.org>
11801
11802         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11803         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
11804         (gst_pad_use_explicit_caps):
11805         * gst/gstpad.h:
11806         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
11807         to use an internal getcaps and link fuction so that negotiation
11808         always results in the explicitly set caps.
11809         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
11810         are particularly useful for decoders.
11811
11812 2003-12-31  David Schleef  <ds@schleef.org>
11813
11814         * gst/elements/gstidentity.c: (gst_identity_class_init),
11815         (gst_identity_init), (gst_identity_chain),
11816         (gst_identity_set_property), (gst_identity_get_property):
11817         * gst/elements/gstidentity.h:
11818         * gst/gstqueue.c: (gst_queue_init):
11819           Negotiation fixes.
11820
11821 2003-12-31  David Schleef  <ds@schleef.org>
11822
11823         * gst/gstcaps.c: (gst_caps_intersect),
11824         (_gst_caps_normalize_foreach), (gst_caps_normalize):
11825           Implement gst_caps_normalize().
11826         * testsuite/caps/normalisation.c: (main):
11827           Add an additional test
11828
11829 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11830
11831         * gst/gstqueue.c: (gst_queue_init):
11832           use gst_pad_proxy_getcaps()
11833
11834 2003-12-31  David Schleef  <ds@schleef.org>
11835
11836         * gst/elements/gstshaper.c: (gst_shaper_link):
11837         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11838         * gst/gstqueue.c: (gst_queue_link):
11839           Negotiation fixes.
11840
11841 2003-12-31  David Schleef  <ds@schleef.org>
11842
11843         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
11844         * gst/gstpad.h: Add functions that are useful as default pad
11845         link and fixate functions for elements.
11846
11847 2003-12-30  David Schleef  <ds@schleef.org>
11848
11849         * gst/gstpad.c: (gst_pad_link_try):
11850           Fix segfault when attempting to return to old caps
11851
11852 2003-12-29  David Schleef  <ds@schleef.org>
11853
11854         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
11855         (gst_caps_structure_simplify), (gst_caps_simplify):
11856         * gst/gstcaps.h:
11857           Add simplify function
11858         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
11859         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
11860         * gst/gstpad.h:
11861           Copy over srcnotify, sinknotify when calling old pad_link
11862           functions.  Add new is_negotiated() function.
11863         * gst/gststructure.c: (gst_structure_copy):
11864           Fix an incredibly stupid bug that should have been noticed
11865           weeks ago.  _copy() returned the argument, not the new copy.
11866
11867 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11868
11869         * gst/gstcaps.c: (gst_caps_append):
11870           add sanity checks
11871         * gst/gstcaps.h: (gst_caps_debug):
11872           remove, it doesn't exist anymore.
11873         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
11874         (gst_element_threadsafe_properties_post_run):
11875           make debugging messages not clutter up THREAD debug category
11876         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
11877         (gst_element_change_state):
11878           update to new caps API
11879         * gst/gstinterface.c: (gst_implements_interface_cast):
11880           don't put vital code in g_return_if_fail
11881         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
11882         (gst_pad_link_filtered):
11883           add pst_pad_try_link and use it.
11884         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
11885           implement correctly, deprecate first one.
11886         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
11887           add and implement.
11888         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
11889           implement.
11890         (gst_pad_get_negotiated_caps):
11891           add and implement. Make GST_PAD_CAPS call this function.
11892         (gst_pad_get_caps):
11893           remove unneeded check..
11894         (gst_pad_recover_caps_error):
11895           disable, always return FALSE.
11896         (gst_real_pad_dispose):
11897           don't free caps and appfilter anymore, they're unused.
11898         * gst/gstpad.h:
11899           Reflect changes mentioned above.
11900         * gst/gstsystemclock.c: (gst_system_clock_wait):
11901           Make 'clock is way behind' a debugging message.
11902         * gst/gstthread.c: (gst_thread_change_state):
11903           Fix debugging message
11904
11905 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11906
11907         * gst/gstinfo.h:
11908           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
11909         * docs/gst/tmpl/gstreamer-unused.sgml:
11910           removed all traces of cvs conflicts
11911
11912 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11913
11914         * configure.ac:
11915         * gst/schedulers/cothreads_compat.h:
11916         * libs/Makefile.am:
11917           remove last instances of wingo cothread usage
11918
11919 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11920
11921         * gst/gstplugin.c:
11922         * gst/gstversion.h.in:
11923         * gst/parse/grammar.y:
11924           change comment block from /** to /* when not gtk-doc comments
11925
11926 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11927
11928         * gst/gst.c: whitespace and doc style fixes
11929
11930 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11931
11932         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
11933
11934 2003-12-24  Colin Walters  <walters@verbum.org>
11935
11936         * gst/elements/gsttypefindelement.c:
11937           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
11938           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
11939           Don't double-free caps.
11940
11941 2003-12-23  David Schleef  <ds@schleef.org>
11942
11943         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
11944           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
11945           Many little fixes and additions of debug statements to
11946           get rhythmbox working.
11947
11948 2003-12-23  Colin Walters  <walters@verbum.org>
11949
11950         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
11951         Use GST_PAD_LINK_SUCCESSFUL.
11952
11953 2003-12-23  David Schleef  <ds@schleef.org>
11954
11955         * gst/elements/gstaggregator.c:
11956         * gst/elements/gsttee.c:
11957           Use gst_pad_proxy_getcaps().
11958         * gst/gstpad.c:
11959         * gst/gstpad.h:
11960           Add gst_pad_proxy_getcaps(), which filter elements can use
11961           as a generic getcaps implementation.
11962           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
11963           was advertised.
11964
11965 2003-12-23  David Schleef  <ds@schleef.org>
11966
11967         * gst/gstpad.c:
11968           Rearrange/rewrite much of the pad negotiation code, since it
11969           resembled pasta.  This actually changes the way some
11970           negotiation works, since the previous code was inconsistent
11971           depending on how it was invoked.  Add (internal) structure
11972           GstPadLink, which is used to hold some information (more in
11973           the future) about the link between two pads.  Fixes a number
11974           of bugs, including random lossage of filter caps when the
11975           initial negotiation is delayed.  A few functions are still
11976           unimplemented.
11977         * gst/gstpad.h:
11978           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
11979           these when testing GstPadLinkReturn values instead of comparing
11980           directly.
11981
11982 2003-12-23  David Schleef  <ds@schleef.org>
11983
11984         * gst/gstvalue.c: 
11985         * gst/gstvalue.h:
11986           Rearrange lots of code.  Change registration of compare function
11987           into registration of compare/serialize/deserialize functions.
11988           Doesn't include implementation of gst_value_[de]serialize(),
11989           but that should be easy.
11990
11991 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11992
11993         * docs/gst/gstreamer-sections.txt:
11994         * docs/gst/tmpl/gstprops.sgml: removed
11995         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
11996           David removed props and caps code, so let's remove their docs as well.
11997           Removed all no longer existing symbols from gstreamer-sections.txt
11998           
11999 2003-12-22  Colin Walters  <walters@verbum.org>
12000
12001         * gst/gsttaginterface.c, gst/gsttaginterface.h,
12002           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
12003           of tags directly.
12004
12005 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12006
12007         * gst/elements/gstelements.c:
12008           Set ranks of elements to NONE, so the autoplugger doesn't use them.
12009         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
12010           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
12011           gst_caps (peer).
12012
12013 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12014
12015         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
12016         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
12017         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
12018         (gst_spider_identity_sink_loop_type_finding):
12019         * gst/autoplug/gstspideridentity.h:
12020           Fix autoplugging in spider element, so it works with new caps.
12021           This was mainly caused by identifying empty caps incorrectly.
12022
12023 2003-12-22  David Schleef  <ds@schleef.org>
12024
12025         * gststructure.c, gstvalue.c, gstvalue.h: Add
12026           gst_value_init_and_copy() and use it, to avoid silly mistakes in
12027           using g_value_copy()
12028
12029 2003-12-21  David Schleef  <ds@schleef.org>
12030
12031         * many, many files: Merge CAPS branch.  This includes:
12032           - implemention of GstValue and several GstValue types
12033           - implemention of GstStructure
12034           - entire rewrite of GstCaps
12035           - removal of GstProps
12036           - many changes to GstPad to compensate for new caps paradigm
12037           - removal of GstBufferpool
12038         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
12039         gstvalue.h, gst/gstcaps[2]*.[ch]:
12040           - rename gstcaps2.[ch] to gstcaps.[ch]
12041
12042 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12043
12044         * gst/gstqueue.c: (gst_queue_handle_pending_events),
12045         (gst_queue_chain), (gst_queue_handle_src_event):
12046           implement timeout for sending events. Workaround for if the
12047           pipeline on this queue is not passing any data.
12048
12049 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
12050                                                                                 
12051         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
12052         * moved CVS to freedesktop.org
12053