docs/design/part-events.txt: Small update.
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-07-22  Wim Taymans  <wim@fluendo.com>
2
3         * docs/design/part-events.txt:
4         Small update.
5
6         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
7         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
8         (gst_base_sink_activate_pull):
9         Some more comments.
10
11         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
12         (gst_fake_src_create):
13         Fix handoff marshall.
14
15         * gst/elements/gstidentity.c: (gst_identity_class_init),
16         (gst_identity_transform_ip):
17         We're a real inplace element.
18
19         * gst/gstbus.c: (gst_bus_post):
20         Added some comments.
21
22         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
23         * tests/muxing/case1.c: (main):
24         * tests/sched/dynamic-pipeline.c: (main):
25         * tests/sched/interrupt1.c: (main):
26         * tests/sched/interrupt2.c: (main):
27         * tests/sched/interrupt3.c: (main):
28         * tests/sched/runxml.c: (main):
29         * tests/sched/sched-stress.c: (main):
30         * tests/seeking/seeking1.c: (event_received), (main):
31         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
32         (main):
33         * tests/threadstate/threadstate3.c: (main):
34         * tests/threadstate/threadstate4.c: (main):
35         * tests/threadstate/threadstate5.c: (main):
36         Fix the tests.
37
38 2005-07-21  Wim Taymans  <wim@fluendo.com>
39
40         * docs/design/part-seeking.txt:
41         Some small additions.
42
43         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
44         (gst_base_sink_get_times), (gst_base_sink_do_sync),
45         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
46         * gst/base/gstbasesink.h:
47         discont values are gint64, handle the math correctly.
48
49         * gst/base/gstbasesrc.c: (gst_base_src_loop):
50         Make the basesrc report error if the source pad is not linked.
51
52         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
53         (gst_queue_loop), (gst_queue_handle_src_query),
54         (gst_queue_src_activate_push):
55         Make queue collect data even if the srcpad is not linked.
56         Start pushing out data as soon as it is linked.
57
58         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
59         * gst/gstutils.h:
60         Added gst_flow_get_name() to ease error reporting.
61
62 2005-07-20  Wim Taymans  <wim@fluendo.com>
63
64         * gst/gstmessage.c: (gst_message_new_segment_start),
65         (gst_message_new_segment_done), (gst_message_parse_segment_start),
66         (gst_message_parse_segment_done):
67         * gst/gstmessage.h:
68         Added a bunch of messages for advanced seeking.
69
70         * gst/parse/grammar.y:
71         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
72         (gst_dpman_state_changed):
73         Fix some new-pad -> pad-added signals
74
75 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
76
77         * docs/manual/appendix-porting.xml:
78         * docs/pwg/appendix-porting.xml:
79           Document new-pad/state-change signal renames and the FixedList
80           type rename.
81
82 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
83
84         * docs/manual/advanced-autoplugging.xml:
85         * docs/manual/basics-helloworld.xml:
86         * docs/manual/basics-pads.xml:
87         * docs/random/ds/0.9-suggested-changes:
88         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
89         * gst/gstelement.h:
90         * gst/gstevent.h:
91         * gst/gstformat.h:
92         * gst/gstquery.h:
93         * gst/gststructure.c: (gst_structure_value_get_generic_type),
94         (gst_structure_parse_array), (gst_structure_parse_value):
95         * gst/gstvalue.c: (gst_type_is_fixed),
96         (gst_value_list_prepend_value), (gst_value_list_append_value),
97         (gst_value_list_get_size), (gst_value_list_get_value),
98         (gst_value_transform_array_string), (gst_value_serialize_array),
99         (gst_value_deserialize_array), (gst_value_intersect_array),
100         (gst_value_is_fixed), (_gst_value_initialize):
101         * gst/gstvalue.h:
102           GstElement::new-pad -> pad-added, GstElement::state-change ->
103           state-changed, GstValueFixedList -> GstValueArray, add format and
104           flags as their own arguments in gst_element_seek() (should improve
105           "bindeability"), remove function generators since they don't work
106           under a whole bunch of compilers (they were deprecated already
107           anyway).
108
109 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
110
111         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
112         (_gst_debug_register_funcptr):
113         * gst/gstinfo.h:
114           Fix illegal cast on some platforms (#309253).
115
116 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
117
118         * gst/gstmessage.c: (gst_message_new_custom):
119         * gst/gstmessage.h:
120           Add _new_custom, make _new_application a macro to _new_custom.
121
122 2005-07-20  Wim Taymans  <wim@fluendo.com>
123
124         * gst/base/gstbasesrc.c: (gst_base_src_init),
125         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
126         * gst/base/gstbasesrc.h:
127         Add a gboolean to decide when to push out a discont.
128
129         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
130         (gst_queue_loop), (gst_queue_handle_src_query),
131         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
132         (gst_queue_set_property), (gst_queue_get_property):
133         Some cleanups.
134
135         * tests/threadstate/threadstate1.c: (main):
136         Make a thread test compile and run... very silly..
137
138
139 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
140
141         * docs/manual/appendix-porting.xml:
142           Mention removal of libgstgconf-0.9.la and existence of gconf
143           elements.
144
145 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
146
147         * docs/pwg/advanced-clock.xml:
148         * docs/pwg/appendix-porting.xml:
149         * docs/pwg/intro-preface.xml:
150         * docs/pwg/other-base.xml:
151         * docs/pwg/other-manager.xml:
152         * docs/pwg/other-nton.xml:
153         * docs/pwg/other-ntoone.xml:
154         * docs/pwg/other-oneton.xml:
155         * docs/pwg/pwg.xml:
156           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
157           demuxer), remove n-to-n (was never written), fix some code examples
158           and links and update the porting section to include all this.
159
160 2005-07-19  Wim Taymans  <wim@fluendo.com>
161
162         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
163         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
164         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
165         (gst_queue_src_activate_push), (gst_queue_change_state),
166         (gst_queue_get_property):
167         * gst/gstqueue.h:
168         Propagate GstFlowReturn more intelligently upstream and output
169         an ERROR/EOS when streaming stopped due to fatal error.
170
171 2005-07-19  Wim Taymans  <wim@fluendo.com>
172
173         * tools/gst-launch.c: (check_intr), (event_loop), (main):
174         Don't block forever for the state change to complete, the
175         pipeline already did with a sensible timeout.
176
177 2005-07-19  Wim Taymans  <wim@fluendo.com>
178
179         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
180         Make sure we never call the create function is we
181         got deactivated.
182
183 2005-07-19  Andy Wingo  <wingo@pobox.com>
184
185         * gst/parse/parse.l: Attempt to solve bug #172815.
186
187 2005-07-19  Wim Taymans  <wim@fluendo.com>
188
189         * docs/design/part-clocks.txt:
190         * docs/design/part-events.txt:
191         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
192         Small docs updates.
193         Only update the seeking values when we are not
194         busy streaming.
195
196 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
197
198         * gst/base/gstbasesrc.c: (gst_base_src_loop):
199           Oops, ignore the result of gst_pad_push_event here.
200
201 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
202
203         * gst/base/gstbasesrc.c: (gst_base_src_loop),
204         (gst_base_src_activate_push):
205           Send discont event from the loop function, as pads
206           aren't activated yet in the activate_push handler.
207
208         * gst/gstbin.c: (bin_bus_handler):
209           Don't leak element name.
210
211 2005-07-18  Andy Wingo  <wingo@pobox.com>
212
213         * configure.ac: Use AS_LIBTOOL_TAGS.
214
215 2005-07-18  Wim Taymans  <wim@fluendo.com>
216
217         * docs/gst/gstreamer.types:
218         Remove deleted types.
219
220 2005-07-18  Wim Taymans  <wim@fluendo.com>
221
222         * check/elements/gstfakesrc.c: (GST_START_TEST):
223         * configure.ac:
224         * gst/Makefile.am:
225         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
226         (init_popt_callback):
227         * gst/gst.h:
228         * gst/gst_private.h:
229         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
230         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
231         * gst/gstbin.h:
232         * gst/gstbus.h:
233         * gst/gstconfig.h.in:
234         * gst/gstelement.c: (gst_element_class_init),
235         (gst_element_set_base_time), (gst_element_get_base_time),
236         (iterator_fold_with_resync), (gst_element_change_state),
237         (gst_element_dispose), (gst_element_get_bus):
238         * gst/gstelement.h:
239         * gst/gstelementfactory.h:
240         * gst/gsterror.c: (_gst_core_errors_init):
241         * gst/gsterror.h:
242         * gst/gstevent.h:
243         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
244         * gst/gstindex.c:
245         * gst/gstinfo.c: (_gst_debug_init):
246         * gst/gstmessage.c: (_gst_message_copy):
247         * gst/gstmessage.h:
248         * gst/gstminiobject.h:
249         * gst/gstobject.c:
250         * gst/gstobject.h:
251         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
252         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
253         * gst/gstpad.h:
254         * gst/gstparse.h:
255         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
256         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
257         (gst_pipeline_get_last_stream_time):
258         * gst/gstpipeline.h:
259         * gst/gstpluginfeature.h:
260         * gst/gstquery.h:
261         * gst/gstscheduler.c:
262         * gst/gstscheduler.h:
263         * gst/gststructure.h:
264         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
265         (gst_task_finalize), (gst_task_func), (gst_task_create),
266         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
267         (gst_task_stop), (gst_task_pause):
268         * gst/gsttask.h:
269         * gst/gsttypefind.h:
270         * gst/gsttypes.h:
271         * gst/registries/gstlibxmlregistry.c: (load_feature),
272         (gst_xml_registry_load), (gst_xml_registry_save_feature):
273         * gst/registries/gstxmlregistry.c:
274         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
275         * gst/schedulers/threadscheduler.c:
276         * libs/gst/control/dparammanager.h:
277         * tools/gst-inspect.c: (print_element_list),
278         (print_plugin_features), (print_element_features):
279         * tools/gst-xmlinspect.c: (print_element_list),
280         (print_plugin_info), (main):
281         Removed plugable schedulers.
282         Removed Scheduler/Manager from elements.
283         Removed gsttypes.h, rearranged includes.
284         Removed dependency pad<->element, element<>pipeline, and
285         various others,  fix includes.
286         implement gst_pad_get_parent() with gst_object_get_parent()
287         Make GstTask sefcontained.
288         Fix _get_state() on GstBin, it did not return ASYNC with a 0
289         timeout.
290         Fix endless loop in iterator_fold_with_resync.
291
292
293 2005-07-18  Wim Taymans  <wim@fluendo.com>
294
295         * gst/Makefile.am:
296         * gst/gstarch.h:
297         Remove old file.
298
299 2005-07-18  Wim Taymans  <wim@fluendo.com>
300
301         * gst/Makefile.am:
302         No more cothreads.h
303
304 2005-07-18  Wim Taymans  <wim@fluendo.com>
305
306         * gst/cothreads.c:
307         * gst/cothreads.h:
308         Let's remove these.
309
310 2005-07-18  Wim Taymans  <wim@fluendo.com>
311
312         * docs/design/part-dynamic.txt:
313         * docs/design/part-events.txt:
314         * docs/design/part-seeking.txt:
315         Some more docs in the works.
316
317         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
318         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
319         (gst_base_transform_setcaps), (gst_base_transform_get_size),
320         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
321         (gst_base_transform_handle_buffer),
322         (gst_base_transform_sink_activate_push),
323         (gst_base_transform_src_activate_pull),
324         (gst_base_transform_set_passthrough),
325         (gst_base_transform_is_passthrough):
326         Refcounting fixes.
327
328         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
329         Cleanups.
330
331         * gst/gstevent.c: (gst_event_finalize):
332         Set SRC to NULL.
333
334         * gst/gstutils.c: (gst_element_unlink),
335         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
336         (gst_pad_proxy_setcaps):
337         * gst/gstutils.h:
338         Add _get_parent_element() to get a pads parent as an element.
339
340 2005-07-18  Wim Taymans  <wim@fluendo.com>
341
342         * check/gst/gstbin.c: (GST_START_TEST):
343         Remove bogus test.
344
345 2005-07-18  Wim Taymans  <wim@fluendo.com>
346
347         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
348         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
349         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
350         (gst_base_sink_event), (gst_base_sink_do_sync),
351         (gst_base_sink_chain), (gst_base_sink_loop),
352         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
353         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
354         Refcounting fixes.
355         Fix logic for returning ASYNC when not prerolled.
356
357 2005-07-18  Wim Taymans  <wim@fluendo.com>
358
359         * gst/gstqueue.c: (gst_queue_handle_sink_event):
360         Fix nasty refcount bug.
361
362 2005-07-16 Philippe Khalaf <burger@speedy.org>
363         * gst/elements/gstfdsrc.c:
364         * gst/elements/gstfdsrc.h:
365         * gst/elements/gstelements.c:
366         * gst/elements/Makefile.am:
367         Ported fdsrc to 0.9.
368
369 2005-07-16  Wim Taymans  <wim@fluendo.com>
370
371         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
372         (gst_base_sink_do_sync):
373         Fix compile error.
374
375 2005-07-16  Wim Taymans  <wim@fluendo.com>
376
377         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
378         (gst_base_sink_event), (gst_base_sink_get_times),
379         (gst_base_sink_do_sync), (gst_base_sink_change_state):
380         * gst/base/gstbasesink.h:
381         Store and use discont values when syncing buffers as described
382         in design docs.
383         
384         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
385         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
386         (gst_base_src_activate_push):
387         Push discont event when starting.
388
389         * gst/elements/gstidentity.c: (gst_identity_transform):
390         Small cleanups.
391
392         * gst/gstbin.c: (gst_bin_change_state):
393         Small cleanups in base_time  distribution.
394
395         * gst/gstelement.c: (gst_element_set_base_time),
396         (gst_element_get_base_time), (gst_element_change_state):
397         * gst/gstelement.h:
398         Added methods for the base_time of the element.
399         Some MT fixes.
400
401         * gst/gstpipeline.c: (gst_pipeline_send_event),
402         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
403         (gst_pipeline_get_last_stream_time):
404         * gst/gstpipeline.h:
405         MT fixes.
406         Handle seeking as described in design doc, remove stream_time
407         hack.
408         Cleanups clock and stream_time selection code. Added accessors
409         for the stream_time.
410         
411
412 2005-07-16  Andy Wingo  <wingo@pobox.com>
413
414         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
415         (#305291).
416
417 2005-07-16  Wim Taymans  <wim@fluendo.com>
418
419         * check/gst/gstbin.c: (GST_START_TEST):
420         Make elements silent as the deep_notify refs the
421         parent, which might make the test fail.
422
423         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
424         Don't hold the lock for too long.
425
426 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
427
428         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
429           Don't unref the caps we passed to gst_caps_make_writable() after
430           passing them. gst_caps_make_writable() will do that for us.
431
432 2005-07-15  Andy Wingo  <wingo@pobox.com>
433
434         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
435         (#157311).
436
437         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
438         own marshalling function for the handoff signal. Properly type the
439         buffer as a buffer. Fixes some warnings. Should do a more general
440         solution.
441         (gst_identity_class_init): Plug into the right marshaller.
442
443 2005-07-15  Wim Taymans  <wim@fluendo.com>
444
445         * docs/design/part-TODO.txt:
446         * docs/design/part-clocks.txt:
447         * docs/design/part-element-sink.txt:
448         * docs/design/part-events.txt:
449         * docs/design/part-gstpipeline.txt:
450         Updated docs, mostly DISCONT related.
451
452 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
453
454         * docs/pwg/building-pads.xml:
455           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
456
457 2005-07-15  Andy Wingo  <wingo@pobox.com>
458
459         * tools/gst-typefind.c: Update, add copyright block.
460
461         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
462         Normalize and truncate caps before fixation.
463
464         * gst/gstcaps.h:
465         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
466         discards all but the first structure from its argument.
467
468 2005-07-15  Wim Taymans  <wim@fluendo.com>
469
470         * gst/base/gstbasetransform.c: (gst_base_transform_init),
471         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
472         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
473         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
474         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
475         (gst_base_transform_chain), (gst_base_transform_change_state),
476         (gst_base_transform_set_passthrough),
477         (gst_base_transform_is_passthrough):
478         * gst/base/gstbasetransform.h:
479         Make passthrough work using the bufferpools.
480         Changed API a bit, subclasses have to write into a buffer
481         provided by the base class.
482         More debug info in nego functions.
483         
484         * gst/elements/gstidentity.c: (gst_identity_init),
485         (gst_identity_transform):
486         Port to new base class.
487
488 2005-07-15  Wim Taymans  <wim@fluendo.com>
489
490         * gst/gstmessage.c: (gst_message_new_state_changed):
491         * tools/gst-launch.c: (event_loop), (main):
492         Totally dump messages in -launch with the -m option.
493         Fix message name for State messages,
494
495 2005-07-14  Wim Taymans  <wim@fluendo.com>
496
497         * gst/base/gstbasesrc.c: (gst_base_src_loop):
498         Post error messages on errors.
499
500 2005-07-14  Wim Taymans  <wim@fluendo.com>
501
502         * gst/gstcaps.c: (gst_caps_do_simplify):
503         Remove debug info.
504
505         * gst/gsterror.h:
506         Define error for stream stopped.
507
508         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
509         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
510         Do proper return values.
511
512         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
513         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
514         (gst_pad_get_range):
515         Better return values.
516
517         * gst/gstpad.h:
518         Reorganise return values, add macro to check for fatal errors.
519
520         * gst/gstqueue.c: (gst_queue_chain):
521         Return proper GstFlowReturn values,
522
523 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
524
525         * docs/gst/gstreamer-sections.txt:
526         * docs/gst/gstreamer.types:
527         * docs/gst/tmpl/gst.sgml:
528         * docs/gst/tmpl/gstbasesink.sgml:
529         * docs/gst/tmpl/gstbasesrc.sgml:
530         * docs/gst/tmpl/gstbasetransform.sgml:
531         * docs/gst/tmpl/gstbin.sgml:
532         * docs/gst/tmpl/gstbuffer.sgml:
533         * docs/gst/tmpl/gstcaps.sgml:
534         * docs/gst/tmpl/gstclock.sgml:
535         * docs/gst/tmpl/gstcompat.sgml:
536         * docs/gst/tmpl/gstconfig.sgml:
537         * docs/gst/tmpl/gstelement.sgml:
538         * docs/gst/tmpl/gstelementdetails.sgml:
539         * docs/gst/tmpl/gstelementfactory.sgml:
540         * docs/gst/tmpl/gstenumtypes.sgml:
541         * docs/gst/tmpl/gsterror.sgml:
542         * docs/gst/tmpl/gstevent.sgml:
543         * docs/gst/tmpl/gstfakesink.sgml:
544         * docs/gst/tmpl/gstfakesrc.sgml:
545         * docs/gst/tmpl/gstfilesink.sgml:
546         * docs/gst/tmpl/gstfilesrc.sgml:
547         * docs/gst/tmpl/gstfilter.sgml:
548         * docs/gst/tmpl/gstformat.sgml:
549         * docs/gst/tmpl/gstghostpad.sgml:
550         * docs/gst/tmpl/gstimplementsinterface.sgml:
551         * docs/gst/tmpl/gstindex.sgml:
552         * docs/gst/tmpl/gstindexfactory.sgml:
553         * docs/gst/tmpl/gstinfo.sgml:
554         * docs/gst/tmpl/gstiterator.sgml:
555         * docs/gst/tmpl/gstmacros.sgml:
556         * docs/gst/tmpl/gstmemchunk.sgml:
557         * docs/gst/tmpl/gstminiobject.sgml:
558         * docs/gst/tmpl/gstobject.sgml:
559         * docs/gst/tmpl/gstpad.sgml:
560         * docs/gst/tmpl/gstpadtemplate.sgml:
561         * docs/gst/tmpl/gstparse.sgml:
562         * docs/gst/tmpl/gstpipeline.sgml:
563         * docs/gst/tmpl/gstplugin.sgml:
564         * docs/gst/tmpl/gstpluginfeature.sgml:
565         * docs/gst/tmpl/gstquery.sgml:
566         * docs/gst/tmpl/gstqueue.sgml:
567         * docs/gst/tmpl/gstregistry.sgml:
568         * docs/gst/tmpl/gstregistrypool.sgml:
569         * docs/gst/tmpl/gstscheduler.sgml:
570         * docs/gst/tmpl/gstschedulerfactory.sgml:
571         * docs/gst/tmpl/gststructure.sgml:
572         * docs/gst/tmpl/gstsystemclock.sgml:
573         * docs/gst/tmpl/gsttaglist.sgml:
574         * docs/gst/tmpl/gsttagsetter.sgml:
575         * docs/gst/tmpl/gsttrace.sgml:
576         * docs/gst/tmpl/gsttrashstack.sgml:
577         * docs/gst/tmpl/gsttypefind.sgml:
578         * docs/gst/tmpl/gsttypefindfactory.sgml:
579         * docs/gst/tmpl/gsttypes.sgml:
580         * docs/gst/tmpl/gsturihandler.sgml:
581         * docs/gst/tmpl/gsturitype.sgml:
582         * docs/gst/tmpl/gstutils.sgml:
583         * docs/gst/tmpl/gstvalue.sgml:
584         * docs/gst/tmpl/gstversion.sgml:
585         * docs/gst/tmpl/gstxml.sgml:
586         * docs/libs/tmpl/gstcontrol.sgml:
587         * docs/libs/tmpl/gstdataprotocol.sgml:
588         * docs/libs/tmpl/gstdparam.sgml:
589         * docs/libs/tmpl/gstdplinint.sgml:
590         * docs/libs/tmpl/gstdpman.sgml:
591         * docs/libs/tmpl/gstdpsmooth.sgml:
592         * docs/libs/tmpl/gstgetbits.sgml:
593         * docs/libs/tmpl/gstunitconvert.sgml:
594         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
595         (gst_push_src_base_init), (gst_push_src_class_init),
596         (gst_push_src_init), (gst_push_src_create):
597         * gst/base/gstpushsrc.h:
598         * gst/elements/gstelements.c:
599         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
600         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
601         (gst_fake_sink_init), (gst_fake_sink_set_property),
602         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
603         (gst_fake_sink_event), (gst_fake_sink_preroll),
604         (gst_fake_sink_render), (gst_fake_sink_change_state):
605         * gst/elements/gstfakesink.h:
606         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
607         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
608         (gst_fake_src_base_init), (gst_fake_src_class_init),
609         (gst_fake_src_init), (gst_fake_src_event_handler),
610         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
611         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
612         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
613         (gst_fake_src_create_buffer), (gst_fake_src_create),
614         (gst_fake_src_start), (gst_fake_src_stop):
615         * gst/elements/gstfakesrc.h:
616         * gst/elements/gstfilesink.c: (_do_init),
617         (gst_file_sink_base_init), (gst_file_sink_class_init),
618         (gst_file_sink_init), (gst_file_sink_dispose),
619         (gst_file_sink_set_location), (gst_file_sink_set_property),
620         (gst_file_sink_get_property), (gst_file_sink_open_file),
621         (gst_file_sink_close_file), (gst_file_sink_query),
622         (gst_file_sink_event), (gst_file_sink_render),
623         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
624         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
625         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
626         * gst/elements/gstfilesink.h:
627         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
628         (gst_file_src_class_init), (gst_file_src_init),
629         (gst_file_src_finalize), (gst_file_src_set_location),
630         (gst_file_src_set_property), (gst_file_src_get_property),
631         (gst_file_src_map_region), (gst_file_src_map_small_region),
632         (gst_file_src_create_mmap), (gst_file_src_create_read),
633         (gst_file_src_create), (gst_file_src_is_seekable),
634         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
635         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
636         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
637         (gst_file_src_uri_handler_init):
638         * gst/elements/gstfilesrc.h:
639           more autistic cleanliness in functions/names/defines
640
641 2005-07-13  Andy Wingo  <wingo@pobox.com>
642
643         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
644         source couldn't negotiate.
645
646         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
647         connections again.
648
649         * gst/gstutils.h:
650         * gst/gstutils.c (gst_element_link_pads_filtered): New old
651         function. I am channeling Hades. Put your boots on suckers!!!
652
653 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
654
655         * testsuite/caps/Makefile.am:
656         * testsuite/caps/value_compare.c:
657         * testsuite/caps/value_intersect.c:
658         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
659           move two testsuite apps over to the check dir
660
661 2005-07-12  Wim Taymans  <wim@fluendo.com>
662
663         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
664         Added more debug info in the negotiate process.
665
666         * gst/gstmessage.h:
667         Prepare for segment playback.
668
669         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
670         Better debugging.
671
672         * gst/gstutils.c:
673         Some more docs.
674
675         * tools/gst-launch.c: (main):
676         NULL pipeline on errors.
677
678 2005-07-12  Andy Wingo  <wingo@pobox.com>
679
680         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
681         not it comes from a malloc region. Make sure our copy gets freed.
682
683 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
684
685         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
686         * check/gst/gstmessage.c: (GST_START_TEST):
687         * check/gst/gststructure.c: (GST_START_TEST),
688         (gst_structure_suite), (main):
689           more testing
690         * gst/gstelement.c: (gst_element_message_full):
691           clean up GError and debug string now that they get copied
692         * gst/gstmessage.c: (gst_message_new_error),
693         (gst_message_new_warning), (gst_message_parse_error),
694         (gst_message_parse_warning):
695           use GST_TYPE_G_ERROR for structure_new, and take copies of
696           arguments, so that we don't mess up refcounting
697
698 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
699
700         * check/Makefile.am:
701           add per-test valgrind targets
702         * check/gst-libs/gdp.c: (GST_START_TEST),
703         (gst_data_protocol_suite), (main):
704           clean up
705
706 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
707
708         * check/Makefile.am:
709           instate more valgrindable tests
710         * check/elements/gstfakesrc.c: (chain_func), (event_func),
711         (GST_START_TEST), (fakesrc_suite):
712         * check/gst/gstpad.c: (GST_START_TEST):
713         * check/gst/gststructure.c: (GST_START_TEST):
714           fix test leaks
715         * docs/gst/tmpl/gstminiobject.sgml:
716         * gst/gstpad.c: (gst_pad_finalize):
717           fix the static mutex leak
718
719 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
720
721         * check/Makefile.am:
722           add two more tests for valgrinding
723         * check/gst/gstvalue.c: (GST_START_TEST):
724           test refcount of deserialized buffer, found a leak
725         * docs/gst/gstreamer-docs.sgml:
726         * docs/gst/gstreamer-sections.txt:
727         * docs/gst/gstreamer.types:
728         * docs/gst/tmpl/gstminiobject.sgml:
729           add miniobject to docs
730         * gst/gstminiobject.c:
731           add some docs
732         * gst/gstvalue.c: (gst_value_deserialize_buffer),
733         (gst_string_unwrap):
734           fix a hard-to-find invalid write for one of the tests
735           fix a leak for deserialized buffers
736
737 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
738
739         * docs/pwg/advanced-events.xml:
740         * docs/pwg/advanced-request.xml:
741         * docs/pwg/advanced-scheduling.xml:
742         * docs/pwg/appendix-porting.xml:
743         * docs/pwg/building-boiler.xml:
744         * docs/pwg/intro-preface.xml:
745         * docs/pwg/other-ntoone.xml:
746           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
747           of example code and explanation for pad activation, loop() and
748           getrange() functions and a bit more. Remove old comments pointing
749           to loop-functions.
750         * examples/pwg/Makefile.am:
751           Add loop/getrange examples.
752
753 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
754
755         * configure.ac:
756           check for valgrind binary + some fixes
757         * check/gst.supp:
758           valgrind suppressions for the tests
759         * check/Makefile.am:
760           add a valgrind: target that valgrinds the unit tests
761         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
762         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
763         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
764         * check/gst/gstghostpad.c:
765           added some cleanup
766         * check/gst/gstdata.c:
767           removed
768         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
769         (thread_unref), (gst_mini_object_suite), (main):
770           added
771         * gst/gst.c: (gst_deinit):
772         * gst/gst.h:
773           add a method to clean up.
774         * gst/gstsystemclock.c: (gst_system_clock_dispose),
775         (gst_system_clock_obtain):
776           allow for disposing the system clock.
777         * tools/gst-launch.c: (main):
778           deinit
779
780 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
781
782         * docs/gst/tmpl/gstbasesrc.sgml:
783         * docs/gst/tmpl/gstfakesrc.sgml:
784         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
785         (gst_base_src_init), (gst_base_src_set_property),
786         (gst_base_src_get_property), (gst_base_src_get_range),
787         (gst_base_src_start):
788         * gst/base/gstbasesrc.h:
789           add num-buffers property
790         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
791         (gst_fakesrc_init), (gst_fakesrc_set_property),
792         (gst_fakesrc_get_property), (gst_fakesrc_create),
793         (gst_fakesrc_start):
794           remove num-buffers property
795
796 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
797
798         * docs/gst/gstreamer-sections.txt:
799         * docs/gst/tmpl/gstbasesink.sgml:
800         * docs/gst/tmpl/gstbasesrc.sgml:
801         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
802         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
803         (gst_base_sink_finalize), (gst_base_sink_set_clock),
804         (gst_base_sink_set_property), (gst_base_sink_get_property),
805         (gst_base_sink_handle_object), (gst_base_sink_event),
806         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
807         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
808         (gst_base_sink_loop), (gst_base_sink_deactivate),
809         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
810         (gst_base_sink_change_state):
811         * gst/base/gstbasesink.h:
812         * gst/base/gstbasesrc.h:
813         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
814         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
815         (gst_filesink_init):
816           more macro splitting
817
818 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
819
820         * gst/gstelement.c: (gst_element_get_bus):
821           add debug
822         * tools/gst-launch.c: (check_intr), (event_loop):
823           fix bus leaks
824
825 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
826
827         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
828           fix a caps leak
829
830 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
831
832         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
833         (gst_base_src_finalize):
834           add finalize method and clean up properly
835         * gst/gstpipeline.c: (gst_pipeline_dispose):
836           add debug
837
838 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
839
840         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
841         (gst_bin_suite):
842           add more things to check
843         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
844         * gst/gstelement.c:
845           more debug
846
847 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
848
849         * check/elements/gstfakesrc.c: (chain_func), (event_func),
850         (GST_START_TEST), (fakesrc_suite):
851         * check/gst-libs/gdp.c: (GST_START_TEST):
852         * check/gst/gst.c: (GST_START_TEST):
853         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
854         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
855         * check/gst/gstbus.c: (GST_START_TEST):
856         * check/gst/gstcaps.c: (GST_START_TEST):
857         * check/gst/gstdata.c: (GST_START_TEST):
858         * check/gst/gstelement.c: (GST_START_TEST):
859         * check/gst/gstghostpad.c: (GST_START_TEST):
860         * check/gst/gstiterator.c: (GST_START_TEST):
861         * check/gst/gstmessage.c: (GST_START_TEST):
862         * check/gst/gstobject.c: (GST_START_TEST):
863         * check/gst/gstpad.c: (GST_START_TEST):
864         * check/gst/gststructure.c: (GST_START_TEST):
865         * check/gst/gstsystemclock.c: (GST_START_TEST),
866         (gst_systemclock_suite):
867         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
868         * check/gst/gstvalue.c: (GST_START_TEST):
869         * check/pipelines/cleanup.c: (GST_START_TEST):
870         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
871         * check/states/sinks.c: (GST_START_TEST):
872         * check/gstcheck.c: (gst_check_init):
873         * check/gstcheck.h:
874           add debugging category
875           use GST_START_TEST now, so we add a debug line
876
877 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
878
879         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
880           add test for state change message on a bin
881         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
882           add another test
883         * gst/gstbin.c: (gst_bin_init):
884         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
885         * gst/gstelement.c: (gst_element_post_message),
886         (gst_element_set_state):
887         * gst/gstelementfactory.c: (gst_element_factory_create):
888         * gst/gstmessage.c: (gst_message_new):
889         * gst/gstscheduler.c:
890           various debugging additions and cleanups
891
892 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
893
894         * check/Makefile.am:
895         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
896         (main):
897           adding tests for elements
898         * gst/gstelement.c: (gst_element_dispose):
899
900 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
901
902         * gst/registries/gstlibxmlregistry.c: (load_feature):
903           plug more leaks.  A simple gst_init() now is leakfree, yay.
904
905 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
906
907         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
908         (gst_xml_registry_load):
909           plug another memleak
910
911 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
912
913         * configure.ac:
914           use GST_SET_ERROR_CFLAGS
915         * docs/faq/cvs.xml:
916           change to ERROR_CFLAGS
917
918 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
919
920         * configure.ac:
921           make GST_ERROR_CFLAGS overridable and re-enable Werror
922         * docs/faq/cvs.xml:
923           add a note about error CFLAGS
924         * docs/gst/tmpl/gstfakesrc.sgml:
925         * gst/elements/gstfakesrc.c:
926           comment out some unused code
927         * gst/gst.c: (split_and_iterate):
928         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
929         (load_feature):
930           plug some memleaks
931
932 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
933
934         * common/Makefile.am:
935         * common/gtk-doc.mak:
936         * docs/gst/Makefile.am:
937           factor out gtk-doc.mak
938
939 2005-07-07  Wim Taymans  <wim@fluendo.com>
940
941         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
942         (gst_thread_scheduler_dispose):
943         Unlock the STREAM_LOCK completely.
944
945 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
946
947         * check/Makefile.am:
948         * check/elements/.cvsignore:
949         * check/elements/gstfakesrc.c: (chain_func), (event_func),
950         (START_TEST), (fakesrc_suite), (main):
951         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
952         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
953         (gst_fakesrc_create), (gst_fakesrc_start):
954         * gst/elements/gstfakesrc.h:
955           adding a first element test
956
957 2005-07-07  Andy Wingo  <wingo@pobox.com>
958
959         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
960         debug message.
961
962 2005-07-07  Wim Taymans  <wim@fluendo.com>
963
964         * gst/gstquery.c:
965         * gst/gstquery.h:
966         Remove old types
967
968 2005-07-07  Wim Taymans  <wim@fluendo.com>
969
970         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
971         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
972         Allow subclasses to implement their own negotiation.
973
974 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
975
976         * docs/design/part-gstbin.txt:
977         * docs/design/part-gstpipeline.txt:
978           Update design notes to reflect the movement of
979           responsibility for bus handling from GstPipeline to
980           GstBin
981
982 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
983
984         * configure.ac:
985           Remove unnecessary queue2/3/4 examples.
986
987 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
988
989         * examples/Makefile.am:
990         * examples/helloworld/helloworld.c: (event_loop), (main):
991         * examples/queue/queue.c: (event_loop), (main):
992         * examples/queue2/queue2.c: (main):
993           Update a couple of the examples to work again.
994
995         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
996         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
997          Spelling corrections and extra debug.
998         
999         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1000         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1001         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1002         * gst/gstbin.h:
1003         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1004         (gst_pipeline_change_state):
1005         * gst/gstpipeline.h:
1006           Move the bus handler for children to the GstBin, and create a
1007           separate bus for receiving messages from children to the one the
1008           bus sends 'upwards' on.
1009
1010 2005-07-06  Wim Taymans  <wim@fluendo.com>
1011
1012         * gst/base/README:
1013         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1014         (gst_base_sink_handle_object), (gst_base_sink_loop),
1015         (gst_base_sink_change_state):
1016         * gst/base/gstbasesink.h:
1017         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1018         (gst_base_src_init), (gst_base_src_setcaps),
1019         (gst_base_src_getcaps), (gst_base_src_loop),
1020         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1021         (gst_base_src_start), (gst_base_src_change_state):
1022         * gst/base/gstbasesrc.h:
1023         Make basesrc negotiate.
1024         Handle the case where preroll fails in basesink.
1025         Update README.
1026
1027 2005-07-06  Wim Taymans  <wim@fluendo.com>
1028
1029         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1030         Implement the fixate function.
1031         Clean up acceptcaps.
1032
1033 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1034
1035         * docs/pwg/building-filterfactory.xml:
1036         * docs/pwg/pwg.xml:
1037           Remove never-written filter-factory chapter; I'll add the various
1038           base classes to part 4 ("other element types") later on.
1039
1040 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1041
1042         * docs/pwg/advanced-negotiation.xml:
1043         * docs/pwg/building-boiler.xml:
1044         * docs/pwg/building-pads.xml:
1045         * docs/pwg/pwg.xml:
1046         * examples/pwg/Makefile.am:
1047           Add a chapter on caps negotiation, simplify the original code
1048           samples a bit w.r.t. caps negotiation, add link to the advanced
1049           section. Add a bunch of examples showing different use cases of
1050           different types of caps negotiation. Upstream renegotiation isn't
1051           fully documented yet since nobody knows how that works.
1052
1053 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1054
1055         * check/gst/gstpad.c:
1056         * check/gstcheck.c:
1057         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1058           if pad has no parent, return NULL as list of internal links
1059
1060 2005-07-05  Andy Wingo  <wingo@pobox.com>
1061
1062         * gst/elements/gstfilesrc.c:
1063         * gst/elements/gstfakesrc.c: 
1064         * gst/base/gstpushsrc.c:
1065         * gst/base/gstbasesrc.h: 
1066         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1067         
1068 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1069
1070         * Makefile.am:
1071           better report generation target (lcov needs a patch)
1072
1073 2005-07-05  Andy Wingo  <wingo@pobox.com>
1074
1075         * gst/elements, testsuite: Null if we got it...
1076
1077 2005-07-05  Wim Taymans  <wim@fluendo.com>
1078
1079         * configure.ac:
1080         * libs/gst/dataprotocol/Makefile.am:
1081         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1082         * libs/gst/dataprotocol/dataprotocol.h:
1083         * pkgconfig/Makefile.am:
1084         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1085         * pkgconfig/gstreamer-dataprotocol.pc.in:
1086         Ported dataprotol to 0.9. 
1087         Added pkgconfig files.
1088
1089 2005-07-05  Andy Wingo  <wingo@pobox.com>
1090
1091         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1092         Default to returning TRUE for the case when tranform_caps returns
1093         a fixed caps, like for identity or volume.
1094
1095         * check/gst/gstbus.c (pound_bus_with_messages): 
1096         * check/gst/gstmessage.c (START_TEST): 
1097         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1098         message API change.
1099
1100         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1101         logic weaks here: always run transform_caps, trying passthrough
1102         operation only if the original caps intersects with the transform.
1103
1104         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1105         source and sink caps.
1106
1107         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1108         Intersect the peer caps with the pad template before going into
1109         transform_caps.
1110         (gst_base_transform_transform_caps): More debugging.
1111
1112         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1113         src argument.
1114
1115 2005-07-04  Edward Hervey  <edward@fluendo.com>
1116
1117         * gst/gstutils.c:
1118         * gst/gstutils.h:
1119         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1120         in bindings.
1121
1122 2005-07-04  Andy Wingo  <wingo@pobox.com>
1123
1124         * check/gst/gstpad.c: Only set explicit caps on pads.
1125
1126 2005-07-01  Andy Wingo  <wingo@pobox.com>
1127
1128         * tests/network-clock.scm: Commentary update.
1129
1130         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1131         Didn't really make sense, not implementable with basetransform,
1132         etc.
1133         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1134         attempt at implementing the sync property, needs an unlock method.
1135
1136         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1137         New func, by default returns the same caps (the identity
1138         transformation).
1139         (gst_base_transform_getcaps): Uses transform_caps to return
1140         something sensible.
1141         (gst_base_transform_setcaps): Complicated logic to get caps on
1142         both pads, even if they are different, and to call set_caps once
1143         for every time both pads get their caps set.
1144         (gst_base_transform_handle_buffer): Give the ref to the transform
1145         function. Allows in-place modification of the buffer.
1146
1147         * gst/base/gstbasetransform.h (transform_caps): New class method.
1148         Given caps on one side, what can I do on the other.
1149         (set_caps): Take two caps, one for each side of the element.
1150
1151         * gst/gstpad.h:
1152         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1153         caps in place. This is safe because we can check the mutability of
1154         the caps, and a good idea because fixate functions are just called
1155         as a matter of last resort. (Not actually implemented.)
1156         (gst_pad_set_caps): If the caps we're setting is actually the same
1157         as the existing pad caps, just update the pointer without calling
1158         setcaps. Assert that caps is either NULL or fixed, as per the
1159         docs.
1160
1161         * gst/gstghostpad.c: Update for fixate changes.
1162
1163 2005-07-02  Andy Wingo  <wingo@pobox.com>
1164
1165         * gst/gstcaps.c:
1166         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1167         two refcounts makes it immutable, which is enough. Doc more.
1168
1169 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1170
1171         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1172           Put the mini_object into GValue as a mini_object,
1173           not a gpointer, since that's how we declared
1174           the signal.
1175
1176 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1177
1178         * examples/pwg/Makefile.am:
1179           Fix buildbot again.
1180
1181 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1182
1183         * docs/pwg/building-testapp.xml:
1184           Add extra check.
1185         * examples/pwg/Makefile.am:
1186           Fix buildbot.
1187
1188 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1189
1190         * configure.ac:
1191         * examples/Makefile.am:
1192         * examples/pwg/Makefile.am:
1193         * examples/pwg/extract.pl:
1194           Enable building the PWG examples.
1195         * docs/pwg/advanced-interfaces.xml:
1196           Add URI interface stub.
1197         * docs/pwg/advanced-types.xml:
1198         * docs/pwg/other-autoplugger.xml:
1199         * docs/pwg/appendix-porting.xml:
1200         * docs/pwg/pwg.xml:
1201           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1202         * docs/pwg/building-boiler.xml:
1203         * docs/pwg/building-chainfn.xml:
1204         * docs/pwg/building-pads.xml:
1205         * docs/pwg/building-props.xml:
1206         * docs/pwg/building-state.xml:
1207         * docs/pwg/building-testapp.xml:
1208           Update the building-*.xml parts for 0.9 changes. All examples
1209           code blocks compile in examples/pwg/*.
1210
1211 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1212
1213         * docs/manual/advanced-autoplugging.xml:
1214         * docs/manual/appendix-checklist.xml:
1215         * docs/manual/appendix-integration.xml:
1216         * docs/manual/highlevel-components.xml:
1217           Fix playbin/decodebin examples, update docs a bit, mention bus
1218           instead of signals in various places, mention kmplayer and
1219           kaffeine since they have a working GStreamer backend in the KDE
1220           section.
1221
1222 2005-06-30  Wim Taymans  <wim@fluendo.com>
1223
1224         * CHANGES-0.9:
1225         * docs/design/draft-ghostpads.txt:
1226         * docs/design/draft-push-pull.txt:
1227         * docs/design/draft-query.txt:
1228         * docs/design/part-TODO.txt:
1229         * docs/design/part-query.txt:
1230         Added CHANGES-0.9 doc, updated status of other docs.
1231         
1232         * gst/gstquery.h:
1233         Remove "hmm" macro
1234
1235 2005-06-30  Wim Taymans  <wim@fluendo.com>
1236
1237         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1238         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1239         (gst_base_sink_change_state):
1240         * gst/base/gstbasesink.h:
1241         Some tweaks, only EOS and a buffer complete a preroll.
1242
1243 2005-06-30  Andy Wingo  <wingo@pobox.com>
1244
1245         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1246         activate_push down to the internal pad as well.
1247
1248 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1249
1250         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1251
1252         * gst/gsttaginterface.c:
1253           Some documentation fixes (#307394 and #307397).
1254
1255 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1256
1257         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1258
1259         * gst/gstvalue.c: (gst_value_intersect_list):
1260           Fix memleak (#309125).
1261
1262 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1263
1264         * docs/manual/advanced-dataaccess.xml:
1265           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1266         * docs/manual/basics-pads.xml:
1267           Add reference for filtered caps to above chapter.
1268
1269 2005-06-30  Wim Taymans  <wim@fluendo.com>
1270
1271         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1272         (gst_bin_change_state):
1273         Probes are gone.
1274         Lame attempt at making the state change function a bit
1275         more readable.
1276
1277 2005-06-30  Wim Taymans  <wim@fluendo.com>
1278
1279         * docs/design/part-clocks.txt:
1280         * docs/design/part-element-sink.txt:
1281         * docs/design/part-events.txt:
1282         * docs/design/part-preroll.txt:
1283         * docs/design/part-states.txt:
1284         Some more tweeks and additions to the docs.
1285
1286 2005-06-30  Wim Taymans  <wim@fluendo.com>
1287
1288         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1289         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1290         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1291         (gst_pad_check_pull_range), (gst_pad_get_range),
1292         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1293         * gst/gstpad.h:
1294         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1295         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1296         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1297         (gst_pad_remove_buffer_probe):
1298         Removed atomic operations, use existing LOCK.
1299         Move exception handling out of main code path.
1300
1301 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1302
1303         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1304         (silly_return_true_function), (gst_pad_class_init),
1305         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1306         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1307         (gst_pad_send_event):
1308           Fix accumulator, add default value by using _emitv() instead
1309           of _emit() for signal emission.
1310
1311 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1312
1313         * docs/manual/advanced-dataaccess.xml:
1314         * examples/manual/Makefile.am:
1315           Add probe example.
1316         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1317           Make work (??).
1318
1319 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1320
1321         * gst/elements/gstfilesink.c: (gst_filesink_render):
1322           Simplify code so that we don't have to handle short
1323           writes and return GST_FLOW_ERROR if an error occured.
1324
1325 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1326
1327         * docs/gst/gstreamer-docs.sgml:
1328           Remove probes more.
1329
1330 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1331
1332         * docs/gst/gstreamer-sections.txt:
1333         * docs/gst/tmpl/gstpad.sgml:
1334         * docs/gst/tmpl/gstprobe.sgml:
1335         * gst/Makefile.am:
1336         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1337         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1338         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1339         (gst_pad_push_event), (gst_pad_send_event):
1340         * gst/gstpad.h:
1341         * gst/gstutils.c: (gst_pad_add_data_probe),
1342         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1343         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1344         (gst_pad_remove_buffer_probe):
1345         * gst/gstutils.h:
1346           Remove old probes, add new g-signal-based probes and some utility
1347           functions.
1348
1349 2005-06-29  Edward Hervey  <edward@fluendo.com>
1350
1351         * gst/gstelementfactory.c:
1352         * gst/gstutils.h:
1353         * gst/gstutils.c:
1354         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1355         the definition to the header file.
1356
1357 2005-06-29  Andy Wingo  <wingo@pobox.com>
1358
1359         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1360         plugins from the source directory.
1361
1362 2005-06-29  Wim Taymans  <wim@fluendo.com>
1363
1364         * docs/gst/tmpl/gstbuffer.sgml:
1365         * docs/gst/tmpl/gstclock.sgml:
1366         Some fixings for blantently wrong text.
1367
1368 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1369
1370         * check/Makefile.am:
1371         * gst/gst.c: (add_path_func), (init_pre):
1372         * gst/gstregistry.c: (gst_registry_add_path):
1373           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1374           only scan the GST_PLUGIN_PATH locations, and not add
1375           system locations
1376
1377 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1378
1379         * docs/gst/gstreamer-sections.txt:
1380         * docs/gst/tmpl/gstbasesrc.sgml:
1381         * gst/gstelement.c:
1382         * gst/gstelement.h:
1383         * gst/gstevent.c:
1384         * gst/gstutils.c:
1385           doc fixes
1386
1387 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1388
1389         * docs/manual/advanced-autoplugging.xml:
1390           Fix autoplugging example.
1391
1392 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1393
1394         * docs/manual/advanced-autoplugging.xml:
1395         * docs/manual/mime-world.fig:
1396           Try to get autoplugging working, fix type detection. Fix text
1397           in hello-world image.
1398
1399 2005-06-29  Wim Taymans  <wim@fluendo.com>
1400
1401         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1402         (gst_base_sink_change_state):
1403         Small debug line.
1404
1405         * gst/gstclock.h:
1406         map SIGNAL and BROADCAST to the right function.
1407
1408         * gst/gstobject.h:
1409         Remove redundant braces.
1410
1411         * gst/gstpad.c: (gst_pad_set_caps):
1412         Don't call setcaps function when reseting caps to NULL.
1413
1414         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1415         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1416         (gst_system_clock_id_unschedule):
1417         Use BROADCAST as this is what we do.
1418
1419 2005-06-29  Wim Taymans  <wim@fluendo.com>
1420
1421         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1422         We are actually prerolling before commiting the state
1423         change. 
1424
1425 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1426
1427         * docs/manual/advanced-clocks.xml:
1428         * docs/manual/advanced-interfaces.xml:
1429         * docs/manual/advanced-metadata.xml:
1430         * docs/manual/advanced-position.xml:
1431         * docs/manual/advanced-schedulers.xml:
1432         * docs/manual/advanced-threads.xml:
1433         * docs/manual/appendix-porting.xml:
1434         * docs/manual/basics-bins.xml:
1435         * docs/manual/basics-bus.xml:
1436         * docs/manual/basics-elements.xml:
1437         * docs/manual/basics-helloworld.xml:
1438         * docs/manual/basics-pads.xml:
1439         * docs/manual/highlevel-components.xml:
1440         * docs/manual/manual.xml:
1441         * docs/manual/thread.fig:
1442           Update (until threads/scheduling) Application Development Manual;
1443           remove GstThread, add GstBus, add simple porting checklist, add
1444           documentation for tag writing, clocks, make all examples until this
1445           part compile and run.
1446         * examples/manual/Makefile.am:
1447           Update from changes to Application Development Manual; add bus
1448           example, remove thread example.
1449
1450 2005-06-28  Wim Taymans  <wim@fluendo.com>
1451
1452         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
1453         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
1454         (gst_bus_source_dispatch):
1455         Add debugging messages.
1456         Make internal methods static.
1457         Handle the case where the bus is flushed in the handler.
1458         
1459         * gst/gstelement.c: (gst_element_get_bus):
1460         Fix refcount in _get_bus();
1461
1462         * gst/gstpipeline.c: (gst_pipeline_change_state),
1463         (gst_pipeline_get_clock_func):
1464         Clock refcounting fixes.
1465         Handle the case where preroll timed out more gracefully.
1466         
1467         * gst/gstsystemclock.c: (gst_system_clock_dispose):
1468         Clean up the internal thread in dispose. This is needed
1469         for subclasses that actually get disposed.
1470         
1471         * gst/schedulers/threadscheduler.c:
1472         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1473         (gst_thread_scheduler_dispose):
1474         Free thread pool in dispose.
1475
1476 2005-06-28  Andy Wingo  <wingo@pobox.com>
1477
1478         * tests/network-clock-utils.scm (debug, print-event): New utils.
1479
1480         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
1481         (*packet-loss*): Unified loss probability.
1482         (network-time): Report out-of-band events.
1483
1484         * tests/plot-data: Add support for out-of-band events. Hack it
1485         into this script instead of passing it down the pipe; should fix
1486         this later.
1487
1488 2005-06-28  Wim Taymans  <wim@fluendo.com>
1489
1490         * docs/gst/gstreamer.types:
1491         * docs/gst/tmpl/gstbasesrc.sgml:
1492         * docs/gst/tmpl/gstpad.sgml:
1493         Docs fixes.
1494
1495 2005-06-28  Wim Taymans  <wim@fluendo.com>
1496
1497         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1498         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
1499         (gst_proxy_pad_do_fixatecaps):
1500         Correctly proxy the check_pull_range function.
1501
1502 2005-06-28  Andy Wingo  <wingo@pobox.com>
1503
1504         * tests/network-clock.scm: Removed need for slib.
1505         
1506 2005-06-28  Wim Taymans  <wim@fluendo.com>
1507
1508         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
1509         (gst_basesink_preroll_queue_flush):
1510         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
1511         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
1512         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1513         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1514         (gst_proxy_pad_set_property):
1515         * gst/gstpad.c:
1516         * gst/gstpad.h:
1517         * gst/gstqueue.c: (gst_queue_init):
1518         The deprecated pad loop function is removed now.
1519
1520 2005-06-28  Andy Wingo  <wingo@pobox.com>
1521
1522         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
1523         New parameters, simulate network packet loss.
1524
1525         * tests/network-clock-utils.scm: Initialize the RNG.
1526
1527 2005-06-28  Wim Taymans  <wim@fluendo.com>
1528
1529         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
1530         (gst_basesink_event), (gst_basesink_deactivate):
1531         Flushing the preroll queue always needs to unlock the waiters.
1532
1533 2005-06-28  Edward Hervey  <edward@fluendo.com>
1534
1535         * gst/gstpipeline.c: (gst_pipeline_send_event): 
1536         Wheen a seek was successful on a pipeline, set the stream_time to the
1537         seek offset in order to have a synchronized stream_time.
1538
1539 2005-06-28  Wim Taymans  <wim@fluendo.com>
1540
1541         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1542         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
1543         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
1544         (gst_proxy_pad_do_fixatecaps):
1545         Call wrapper function instead of just calling the function
1546         pointers. This takes care of any locking and whatmore.
1547
1548 2005-06-28  Wim Taymans  <wim@fluendo.com>
1549
1550         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
1551         (gst_pad_pull_range):
1552         * gst/gstpad.h:
1553         CONNECTED -> LINKED.
1554
1555 2005-06-28  Andy Wingo  <wingo@pobox.com>
1556
1557         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
1558         source-munging commit!!!
1559
1560         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
1561         (gst_object_sink): Take gpointer arguments, not GstObject --
1562         avoids casts. Like GLib.
1563
1564         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
1565         activate.
1566
1567 2005-06-27  Andy Wingo  <wingo@pobox.com>
1568
1569         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
1570         remaining buffer.
1571
1572         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
1573         returns a sorted copy of the trace list.
1574         (gst_alloc_trace_print_live): New API, only prints traces with
1575         live objects. Sort the list.
1576         (gst_alloc_trace_print_all): Sort the list.
1577         (gst_alloc_trace_print): Align columns.
1578
1579         * gst/elements/gstttypefindelement.c:
1580         * gst/elements/gsttee.c:
1581         * gst/base/gstbasesrc.c:
1582         * gst/base/gstbasesink.c:
1583         * gst/base/gstbasetransform.c:
1584         * gst/gstqueue.c: Adapt for pad activation changes.
1585
1586         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
1587         sched.
1588         (gst_pipeline_dispose): Drop ref on sched.
1589
1590         * gst/gstpad.c (gst_pad_init): Set the default activate func.
1591         (gst_pad_activate_default): Push mode by default.
1592         (pre_activate_switch, post_activate_switch): New stubs, things to
1593         do before and after switching activation modes on pads.
1594         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
1595         the pad's activate function to choose which mode to activate.
1596         Shortcut on deactivation and call the right function directly.
1597         (gst_pad_activate_pull): New API, (de)activates a pad in pull
1598         mode.
1599         (gst_pad_activate_push): New API, same for push mode.
1600         (gst_pad_set_activate_function) 
1601         (gst_pad_set_activatepull_function) 
1602         (gst_pad_set_activatepush_function): Setters for new API.
1603
1604         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
1605         Trace all miniobjects.
1606         (gst_mini_object_make_writable): Unref the arg if we copy, like
1607         gst_caps_make_writable.
1608
1609         * gst/gstmessage.c (_gst_message_initialize): No trace init.
1610
1611         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
1612         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
1613         Adapt for new pad API.
1614
1615         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
1616
1617         * gst/gstelement.h:
1618         * gst/gstelement.c (gst_element_iterate_src_pads) 
1619         (gst_element_iterate_sink_pads): New API functions.
1620         
1621         * gst/gstelement.c (iterator_fold_with_resync): New utility,
1622         should fold into gstiterator.c in some form.
1623         (gst_element_pads_activate): Simplified via use of fold and
1624         delegation of decisions to gstpad->activate.
1625
1626         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
1627         help in debugging.
1628
1629         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
1630         class once in init, like gstmessage. Didn't run into this issue
1631         but it seems correct. Don't initialize a trace, gstminiobject does
1632         that.
1633
1634         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
1635         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
1636         to the bus.
1637         (assert_live_count): New util function, uses alloc traces to check
1638         cleanup.
1639
1640         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
1641         To be modified when unlink drops the internal pad.
1642
1643 2005-06-27  Wim Taymans  <wim@fluendo.com>
1644
1645         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
1646         (gst_bin_change_state):
1647         Cleanup the get_state() function a little, make sure it
1648         iterates the same set of elements.
1649         Added stub iterate_state_order().
1650
1651 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1652
1653         * docs/gst/gstreamer-docs.sgml:
1654         * docs/gst/gstreamer-sections.txt:
1655         * docs/gst/gstreamer.types:
1656         * docs/gst/tmpl/gstbasesink.sgml:
1657         * docs/gst/tmpl/gstbasesrc.sgml:
1658         * docs/gst/tmpl/gstbasetransform.sgml:
1659         * docs/gst/tmpl/gstelement.sgml:
1660         * docs/gst/tmpl/gstiterator.sgml:
1661         * gst/base/gstbasesrc.c:
1662         * gst/base/gstbasesrc.h:
1663         * gst/base/gstbasetransform.h:
1664         * gst/gstelement.c:
1665         * gst/gstiterator.h:
1666           adding basetransform and iterator docs
1667
1668 2005-06-27  Andy Wingo  <wingo@pobox.com>
1669
1670         * docs/design/part-activation.txt: Notes on how activation should
1671         work -- not quite implemented yet.
1672
1673 2005-06-25  Wim Taymans  <wim@fluendo.com>
1674
1675         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
1676         At least get the chain function correct, needs more
1677         fixing.
1678
1679 2005-06-25  Wim Taymans  <wim@fluendo.com>
1680
1681         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1682         (gst_basesink_handle_object), (gst_basesink_event),
1683         (gst_basesink_do_sync), (gst_basesink_handle_event),
1684         (gst_basesink_change_state):
1685         * gst/gsttask.h:
1686         Right, two problems here: ghostpads don't take locks and
1687         glib _rec_mutex_lock_full() with depth==0 still locks.
1688         Catch illegal locking and g_warn them.
1689
1690 2005-06-25  Wim Taymans  <wim@fluendo.com>
1691
1692         * check/states/sinks.c: (START_TEST), (gst_object_suite):
1693         Have to check for completion now...
1694
1695 2005-06-25  Wim Taymans  <wim@fluendo.com>
1696
1697         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1698         (gst_basesink_handle_object), (gst_basesink_event),
1699         (gst_basesink_do_sync), (gst_basesink_handle_event),
1700         (gst_basesink_change_state):
1701         * gst/gstpad.h:
1702         Unlock STREAM_LOCK whatever the recursion was.
1703
1704 2005-06-25  Wim Taymans  <wim@fluendo.com>
1705
1706         * gst/base/gstbasesink.c: (gst_basesink_set_property),
1707         (gst_basesink_preroll_queue_empty),
1708         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
1709         (gst_basesink_event), (gst_basesink_do_sync),
1710         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
1711         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
1712         (gst_basesink_change_state):
1713         Reworked the base sink, handle event and buffer serialisation
1714         correctly and removed possible deadlock.
1715         Handle EOS correctly.
1716
1717 2005-06-25  Wim Taymans  <wim@fluendo.com>
1718
1719         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
1720         (gst_pipeline_change_state):
1721         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1722         Allow elements to post EOS in the state change function.
1723         Fix up -launch, make it exit the poll loop when the
1724         pipeline actually changed state.
1725         Fix up warning parsing in -launch.
1726
1727 2005-06-25  Wim Taymans  <wim@fluendo.com>
1728
1729         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
1730         (gst_tee_sink_activate):
1731         Core takes STREAM_LOCK for us now.
1732
1733 2005-06-25  Wim Taymans  <wim@fluendo.com>
1734
1735         * gst/gstelement.c: (gst_element_get_state_func),
1736         (gst_element_set_state):
1737         * gst/gstelement.h:
1738         * gst/gstmessage.c: (gst_message_parse_error),
1739         (gst_message_parse_warning):
1740         Keep track of current target state while performing a state
1741         change so that subclasses can do something interesting.
1742         Fix parsing of warning/error messages when GError is NULL.
1743
1744 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1745
1746         * docs/gst/Makefile.am:
1747         * docs/gst/gstreamer-docs.sgml:
1748         * docs/gst/gstreamer-sections.txt:
1749         * docs/gst/gstreamer.types:
1750         * docs/gst/tmpl/gstbasesink.sgml:
1751         * docs/gst/tmpl/gstbasesrc.sgml:
1752         * docs/gst/tmpl/gstbin.sgml:
1753         * docs/gst/tmpl/gstcompat.sgml:
1754         * docs/gst/tmpl/gstfakesink.sgml:
1755         * docs/gst/tmpl/gstfakesrc.sgml:
1756         * docs/gst/tmpl/gstfilesink.sgml:
1757         * docs/gst/tmpl/gstfilesrc.sgml:
1758         * docs/gst/tmpl/gstindex.sgml:
1759         * docs/manual/appendix-quotes.xml:
1760         * gst/base/gstbasesrc.h:
1761         * gst/elements/gstfakesrc.h:
1762         * gst/gstmessage.h:
1763           start pulling in base classes and elements in our docs
1764
1765 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
1766
1767         * docs/gst/Makefile.am:
1768         * docs/libs/Makefile.am:
1769           fixed make distcheck with gtk-doc 1.3
1770
1771 2005-06-23  Wim Taymans  <wim@fluendo.com>
1772
1773         * gst/gstelement.c: (gst_element_get_state_func),
1774         (gst_element_set_state), (gst_element_change_state):
1775         When the state did not change, also report NO_PREROLL
1776         when it matters.
1777
1778 2005-06-23  Wim Taymans  <wim@fluendo.com>
1779
1780         * gst/gstpad.c: (gst_pad_event_default):
1781         * gst/gstqueue.c: (gst_queue_loop):
1782         No unsafe task pausing please.
1783
1784 2005-06-23  Wim Taymans  <wim@fluendo.com>
1785
1786         * gst/schedulers/threadscheduler.c:
1787         (gst_thread_scheduler_task_start),
1788         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
1789         Ref the task before pushing it on the threadpool. This
1790         makes sure that we have a ref when the threadfunction is
1791         actually called.
1792
1793 2005-06-23  Andy Wingo  <wingo@pobox.com>
1794
1795         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
1796         offset is greater than the file's size.
1797
1798         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
1799         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
1800         * gst/gstobject.c (gst_object_class_init): Make the class lock
1801         recursive. Wim won't let me drop deep_notify. Decodebin works
1802         again, whoopdy doo.
1803
1804         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
1805         internal pad, and hacks accordingly. Doesn't do it on the target
1806         pad because we change its caps. Probably catches all cases of
1807         interest tho.
1808         (gst_ghost_pad_set_property): Connect to notify::caps as
1809         appropritate.
1810
1811         * tests/network-clock.scm (plot-simulation): Pipe data to the
1812         elite python skript.
1813
1814         * tests/network-clock-utils.scm (define-parameter): New macro,
1815         defines a parameter that can be set via the command line.
1816         (set-parameter!, parse-parameter-arguments): Command line args
1817         parser.
1818
1819         * tests/plot-data: Simple matplotlib-based plotter, takes input on
1820         stdin.
1821
1822 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
1823
1824         * gst/elements/gsttypefindelement.c:
1825         (gst_type_find_element_handle_event):
1826           Don't restart typefinding on a discont.
1827         * gst/gstelement.c: (gst_element_set_state):
1828           Debug spelling fix.
1829         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
1830           Allow changing mode of an active pad.
1831           Debug output fixes.
1832         * gst/registries/gstlibxmlregistry.c: (load_feature):
1833           Don't cast a static pad template to a normal pad template.
1834
1835 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
1836
1837         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1838         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1839           remove gst_strtoll completely, since it didn't actually do
1840           anything more than what g_ascii_strtoull already does.
1841           check for range errors when deserializing
1842           do a cast for the unsigned cases; but further fixing needs
1843           a decision on what the interpretation of "(int)" and
1844           deserialization should be for values that fall outside the
1845           type's boundaries (ie, refuse, or interpret as casting)
1846
1847 2005-06-23  Wim Taymans  <wim@fluendo.com>
1848
1849         * check/Makefile.am:
1850         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
1851         * docs/design/part-live-source.txt:
1852         * docs/design/part-states.txt:
1853         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1854         (gst_basesrc_set_live), (gst_basesrc_is_live),
1855         (gst_basesrc_get_range), (gst_basesrc_activate),
1856         (gst_basesrc_change_state):
1857         * gst/base/gstbasesrc.h:
1858         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1859         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1860         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
1861         * gst/gstelement.c: (gst_element_get_state_func),
1862         (gst_element_set_state):
1863         * gst/gstelement.h:
1864         * gst/gsttypes.h:
1865         * tools/gst-launch.c: (event_loop), (main):
1866         Added support for live sources and other elements that
1867         cannot do preroll.
1868         Updated design docs, added live-source design doc.
1869         Implemented live source functionality in basesrc
1870         Fix error condition in _bin_get_state()
1871         Implement live source handling in -launch.
1872         Added check for live sources.
1873         Fixed case in GstBin where elements were changed state
1874         multiple times.
1875
1876
1877 2005-06-23  Andy Wingo  <wingo@pobox.com>
1878
1879         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
1880         borken refcounting.
1881
1882         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
1883         gst_caps_replace takes care of this for us.
1884
1885         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
1886         gst_pad_set_caps on the target, not just its setcaps() function.
1887
1888         * tests/network-clock.scm: 
1889         * tests/network-clock-utils.scm: A network clock simulator.
1890         Something of an algorithmic testbed before doing something in C.
1891
1892 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1893
1894         * check/Makefile.am:
1895         * check/gst/capslist.h:
1896           copy over from 0.8, and add two with bitmasks specified with
1897           (int) 0xFF...
1898         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
1899           add test to parse everything from capslist.h
1900         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
1901         (main):
1902           add test for structure deserialization
1903         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1904           add tests for deserialization of strings to int types
1905         * gst/gststructure.c: (gst_structure_nth_field_name):
1906         * gst/gststructure.h:
1907           add a way to get the name of a field referenced by index
1908         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1909           instead of checking if the resulting long long lies between
1910           min and max, we check if the long long would fit into
1911           a number of bytes for the final type.
1912           This fixes cases where a string represents 2^32 - 1, which
1913           when cast to int would be the (valid) -1, but is bigger than
1914           G_MAXINT
1915
1916 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1917
1918         * gst/parse/grammar.y:
1919           add a log line for type deserialization
1920
1921 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
1922
1923         * check/gst/gstvalue.c: (START_TEST):
1924         * gst/gstvalue.c: (gst_value_deserialize):
1925           return long long, not int, so gint64 deserialization actually
1926           works.  Is there any flag that makes the compiler check this ?
1927           Fixes #308559
1928
1929 2005-06-22  Wim Taymans  <wim@fluendo.com>
1930
1931         * gst/gstbuffer.h:
1932         Added convenience macros for setting buffers in GValue.
1933
1934 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
1935
1936         * check/gst/.cvsignore:
1937         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1938           add a test deserializing int64, and comment part out because
1939           it fails, yay !
1940
1941 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
1942
1943         * check/Makefile.am:
1944         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
1945         * testsuite/Makefile.am:
1946         * testsuite/caps/Makefile.am:
1947         * testsuite/caps/value_serialize.c:
1948         * testsuite/test_gst_init.c:
1949           move a value_serialize test over
1950
1951 2005-06-20  Wim Taymans  <wim@fluendo.com>
1952
1953         * gst/gstpad.c:
1954         Small doc updates.
1955         
1956         * gst/gstvalue.c: (gst_value_compare_buffer),
1957         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
1958         (gst_value_compare_flags), (gst_value_serialize_flags),
1959         (gst_value_deserialize_flags), (_gst_value_initialize):
1960         Fix serialisation of buffers, they are not boxed types anymore
1961
1962 2005-06-20  Wim Taymans  <wim@fluendo.com>
1963
1964         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
1965         Testcase to show error in buffer-on-caps serialisation.
1966
1967 2005-06-20  Andy Wingo  <wingo@pobox.com>
1968
1969         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
1970         will be adding to later.
1971
1972         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
1973         if its socks fill with rocks.
1974         (gst_system_clock_obtain): Set the name on object construction.
1975         Avoid double-checked locking.
1976
1977 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
1978
1979         * gst/gsturi.c: (gst_element_make_from_uri):
1980           Fix potential endless loop.
1981
1982 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1983
1984         * check/Makefile.am:
1985           add gsttag
1986         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
1987         (main):
1988           move over from testsuite dir and clean up
1989         * configure.ac:
1990         * gst/gsttag.c:
1991         * testsuite/Makefile.am:
1992         * testsuite/tags/.cvsignore:
1993         * testsuite/tags/Makefile.am:
1994         * testsuite/tags/merge.c:
1995           remove testsuite/tags
1996
1997 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
1998
1999         * docs/gst/gstreamer-sections.txt:
2000         * docs/gst/tmpl/gstenumtypes.sgml:
2001         * win32/gstenumtypes.c:
2002           clean up documentation build a little
2003
2004 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2005
2006         * check/gstcheck.h:
2007           add macros for checking refcounts on objects and caps
2008         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2009           add some more unit tests
2010         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2011         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2012           fix leaked refcounts (I hope :)) so unittest works
2013         * gst/gstpad.h:
2014           whitespace removal
2015
2016 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2017
2018         * configure.ac: back to HEAD
2019
2020 === release 0.9.1 ===
2021
2022 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2023
2024         * NEWS:
2025         * RELEASE:
2026           updated
2027
2028 2005-06-17  Andy Wingo  <wingo@pobox.com>
2029
2030         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2031         assert; it's always possible that the pad gets deactivated in
2032         between the checks in gstpad.c and the implementation. Rely on
2033         finish_preroll() to return a FLUSHING or similar instead of on the
2034         assert.
2035         
2036         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2037         clock and post an EOS message if we come out of finish_preroll in
2038         the playing state.
2039
2040 2005-06-16  David Schleef  <ds@schleef.org>
2041
2042         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2043         (gst_capsfilter_set_property): Allow NULL as possible value
2044         for filter_caps property, indicating GST_CAPS_ANY.
2045
2046 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2047
2048         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2049           fix debug output
2050         * gst/schedulers/Makefile.am:
2051           use libgst prefix
2052         * gstreamer.spec.in:
2053           fix spec for it
2054
2055 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2056
2057         * gstreamer.spec.in:
2058           clean up
2059
2060 2005-06-08  Andy Wingo  <wingo@pobox.com>
2061
2062         * gst/gstutils.c: RPAD fixes all around.
2063         (gst_element_link_pads): Refcounting fixes.
2064
2065         * tools/gst-inspect.c:
2066         * tools/gst-xmlinspect.c:
2067         * parse/grammar.y:
2068         * gst/base/gsttypefindhelper.c:
2069         * gst/base/gstbasesink.c:
2070         * gst/gstqueue.c: RPAD fixes.
2071
2072         * gst/gstghostpad.h:
2073         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2074         pads. The tricky thing is they provide both source and sink
2075         interfaces, since they proxy the internal pad for the external
2076         pad, and vice versa. Implement with lower-level ProxyPad objects,
2077         with the interior proxy pad as a child of the exterior ghost pad.
2078         Should write a doc on this.
2079         
2080         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2081         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2082         gst_object API.
2083         
2084         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2085         pads are real pads. No ghost pads in this file. Not documenting
2086         the myriad s/RPAD/PAD/ and REALIZE fixes.
2087         (gst_pad_class_init): Add properties for "direction" and
2088         "template". Both are construct-only, so they can't change during
2089         the life of the pad. Fixes properly deriving from GstPad.
2090         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2091         derived objects, just set properties when creating the objects via
2092         g_object_new.
2093         (gst_pad_get_parent): Implement as a function, return NULL if the
2094         parent is not an element.
2095         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2096         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2097         
2098         * gst/gstobject.c (gst_object_class_init): Make name a construct
2099         property. Don't set it in the object init.
2100
2101         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2102         with UNKNOWN direction.
2103         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2104         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2105         (gst_element_remove_pad): Remove ghost-pad special cases.
2106         (gst_element_pads_activate): Remove rpad cruft.
2107
2108         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2109         catch the pad's-parent-not-an-element case.
2110
2111         * gst/gst.h: Include gstghostpad.h.
2112
2113         * gst/gst.c (init_post): No more real, ghost pads.
2114
2115         * gst/Makefile.am: Add gstghostpad.[ch].
2116
2117         * check/Makefile.am:
2118         * check/gst/gstbin.c:
2119         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2120         into a bin creates ghost pads, and that the refcounts are right.
2121         Partly moved from gstbin.c.
2122
2123 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2124
2125         * check/gst-libs/.cvsignore:
2126         * check/gst/.cvsignore:
2127         * check/pipelines/.cvsignore:
2128           ignore more
2129         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2130         (START_TEST), (cleanup_suite), (main):
2131           add some tests related to cleanup after running pipelines
2132
2133 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2134
2135         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2136           add a testsuite for GstBuffer
2137
2138 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2139
2140         * gst/gstminiobject.h:
2141           add defines for accessing the refcount
2142
2143 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2144
2145         * Makefile.am: added support for html unit test coverage reports
2146
2147 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2148
2149         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2150           Free existing caps if the capsfilter changes. Add a FIXME about
2151           setting those caps on the pads.
2152
2153         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2154           Before adding a ghost pad to a parent bin, check that there isn't
2155           already one for the element on the bin. Prevents infinite recursion
2156           when using decodebin in parse pipelines. Andy says he'll rewrite the
2157           way this works anyway, so ignore the hack.
2158
2159 2005-06-02  Andy Wingo  <wingo@pobox.com>
2160
2161         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2162         file size, pass it on to the type find helper.
2163
2164         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2165         segment_start and segment_end properly according to the seek
2166         method. Segment_end is still a bit flaky because offset can be
2167         negative for CUR and END cases, but it takes -1 as an "unset"
2168         value.
2169
2170 2005-06-02  Wim Taymans  <wim@fluendo.com>
2171
2172         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2173         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2174         (gst_basesink_activate):
2175         * gst/base/gstbasesink.h:
2176         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2177         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2178         (gst_pad_query), (gst_pad_start_task):
2179         * gst/gstpad.h:
2180         * gst/gstqueue.c: (gst_queue_bufferalloc),
2181         (gst_queue_handle_sink_event), (gst_queue_chain):
2182         Bufferalloc: return GstFlowReturn to more accuratly report
2183         why allocation failed.
2184
2185 2005-06-02  Wim Taymans  <wim@fluendo.com>
2186
2187         * gst/gstpipeline.c: (gst_pipeline_send_event):
2188         Take snapshot of state without blocking.
2189
2190 2005-06-02  Wim Taymans  <wim@fluendo.com>
2191
2192         * docs/design/part-TODO.txt:
2193         * docs/design/part-caps.txt:
2194         * docs/design/part-clocks.txt:
2195         * docs/design/part-negotiation.txt:
2196         * docs/design/part-preroll.txt:
2197         Small doc updates 
2198
2199 2005-05-30  Wim Taymans  <wim@fluendo.com>
2200
2201         * gst/elements/gstidentity.c: (gst_identity_event),
2202         (gst_identity_transform), (gst_identity_get_property):
2203         Protect last_message property as it is accessed from
2204         multiple threads.
2205
2206 2005-05-30  Wim Taymans  <wim@fluendo.com>
2207
2208         * gst/gstelement.c: (gst_element_init),
2209         (gst_element_pads_activate), (gst_element_change_state):
2210         Slicker pad activation code.
2211
2212 2005-05-30  Wim Taymans  <wim@fluendo.com>
2213
2214         * gst/Makefile.am:
2215         * gst/gstelement.h:
2216         * gst/gstelementfactory.h:
2217         * gst/gsttypes.h:
2218         Move elementfactory methods to separate .h file.
2219
2220 2005-05-30  Wim Taymans  <wim@fluendo.com>
2221
2222         * docs/design/part-overview.txt:
2223         * gst/gstsystemclock.h:
2224         Small typo fixes, doc updates.
2225
2226 2005-05-30  Wim Taymans  <wim@fluendo.com>
2227
2228         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2229         (init_popt_callback):
2230         Remove cpu-opt flag.
2231
2232 2005-05-30  Wim Taymans  <wim@fluendo.com>
2233
2234         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2235         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2236         * gst/gstbuffer.h:
2237         Avoid typechecking in places where not needed.
2238         Added accessor for malloc_data.
2239
2240 2005-05-30  Wim Taymans  <wim@fluendo.com>
2241
2242         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2243         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2244         (gst_pad_configure_sink), (gst_pad_configure_src),
2245         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2246         (gst_pad_start_task):
2247         Propagate errors from _set_caps() in configure_src/sink
2248         functions instead of returning TRUE.
2249         FLUSH events can travel up and downstream
2250
2251
2252 2005-05-30  Wim Taymans  <wim@fluendo.com>
2253
2254         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2255         (gst_basesink_activate):
2256         Handle EOS in preroll.
2257
2258 2005-05-30  Wim Taymans  <wim@fluendo.com>
2259
2260         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2261         (gst_queue_loop), (gst_queue_handle_src_event):
2262         Remove old pieces of code
2263         Flushing the queue in an upstream event is a very bad idea.
2264
2265 2005-05-26  Andy Wingo  <wingo@pobox.com>
2266
2267         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2268         gst_value_set_mini_object so as to add a ref on the object (which
2269         will be removed when the value is unset).
2270
2271         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2272         arg type in ::handoff.
2273
2274         * gst/gstelement.c (gst_element_change_state): Also deactivate
2275         pads in READY->NULL, just in case the element didn't make it to
2276         PAUSED. Wingo tested, Wim approved.
2277
2278 2005-05-26  Wim Taymans  <wim@fluendo.com>
2279
2280         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2281         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2282         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2283         A flushing pad cannot be used to alloc_buffer from.
2284
2285 2005-05-26  Wim Taymans  <wim@fluendo.com>
2286
2287         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2288         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2289         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2290         (gst_bus_create_watch), (gst_bus_add_watch_full):
2291         * gst/gstbus.h:
2292         Implement a real GSource and use g_main_context_wakeup() to
2293         signal new messages instead of the socketpair.
2294
2295 2005-05-25  Wim Taymans  <wim@fluendo.com>
2296
2297         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2298         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2299         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2300         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2301         (gst_pad_send_event), (gst_pad_start_task):
2302         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2303         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2304         (gst_queue_sink_activate), (gst_queue_src_activate),
2305         (gst_queue_change_state):
2306         * gst/gstqueue.h:
2307         Fix state changes for non sinks. We now change sinks, then elements
2308         with unconnected srcpads, then the rest.
2309         More efficient queue unlocking in flush and state changes.
2310         Set the pad activate mode even if it does not have an activate
2311         function.
2312
2313 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2314
2315         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2316           Don't go in pull mode for non-seekable sources.
2317         * gst/elements/gsttypefindelement.h:
2318         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2319         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2320         (free_entry), (stop_typefinding),
2321         (gst_type_find_element_handle_event), (find_peek),
2322         (gst_type_find_element_chain), (do_pull_typefind),
2323         (gst_type_find_element_change_state):
2324           Allow typefinding (w/o seeking) in push-mode, simplified version
2325           of what was in 0.8.
2326         * gst/gstutils.c: (gst_buffer_join):
2327         * gst/gstutils.h:
2328           gst_buffer_join() from 0.8.
2329
2330 2005-05-25  Wim Taymans  <wim@fluendo.com>
2331
2332         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2333         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2334         (gst_pad_send_event), (gst_pad_start_task):
2335         Disable attempt at mode switching until it is figured out.
2336
2337 2005-05-25  Wim Taymans  <wim@fluendo.com>
2338
2339         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2340         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2341         (gst_basesink_finish_preroll), (gst_basesink_chain),
2342         (gst_basesink_loop), (gst_basesink_activate),
2343         (gst_basesink_change_state):
2344         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2345         (gst_basesrc_get_range), (gst_basesrc_loop),
2346         (gst_basesrc_activate):
2347         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2348         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2349         (gst_real_pad_init), (gst_real_pad_set_property),
2350         (gst_real_pad_get_property), (gst_pad_set_active),
2351         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2352         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2353         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2354         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2355         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2356         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2357         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2358         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2359         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2360         (gst_pad_stop_task):
2361         * gst/gstpad.h:
2362         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2363         (gst_queue_loop), (gst_queue_src_activate):
2364         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2365         (gst_task_get_state):
2366         * gst/gsttask.h:
2367         * gst/schedulers/threadscheduler.c:
2368         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2369         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2370         in task function.
2371         Remove ACTIVE pad flag, use FLUSHING everywhere
2372         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2373         functions.
2374         Add locks around IS_FLUSHING when reading.
2375         Take STREAM lock in chain(), get_range() functions so plugins
2376         don't need to take it anymore.
2377         
2378
2379
2380 2005-05-25  Wim Taymans  <wim@fluendo.com>
2381
2382         * tools/gst-launch.c: (event_loop):
2383         Unref message after using its contents instead of
2384         before.
2385
2386 2005-05-24  Wim Taymans  <wim@fluendo.com>
2387
2388         * docs/design/draft-ghostpads.txt:
2389         * docs/design/draft-push-pull.txt:
2390         * docs/design/draft-query.txt:
2391         * docs/design/part-overview.txt:
2392         Docs updates, added general overview doc.
2393
2394 2005-05-21  David Schleef  <ds@schleef.org>
2395
2396         * docs/gst/tmpl/old/GstBin.sgml:
2397         * docs/gst/tmpl/old/GstBuffer.sgml:
2398         * docs/gst/tmpl/old/GstCaps.sgml:
2399         * docs/gst/tmpl/old/GstClock.sgml:
2400         * docs/gst/tmpl/old/GstCompat.sgml:
2401         * docs/gst/tmpl/old/GstData.sgml:
2402         * docs/gst/tmpl/old/GstElement.sgml:
2403         * docs/gst/tmpl/old/GstEvent.sgml:
2404         * docs/gst/tmpl/old/GstIndex.sgml:
2405         * docs/gst/tmpl/old/GstStructure.sgml:
2406         * docs/gst/tmpl/old/GstTag.sgml:
2407         * docs/gst/tmpl/old/cothreads.sgml:
2408         * docs/gst/tmpl/old/cothreads_compat.sgml:
2409         * docs/gst/tmpl/old/gettext.sgml:
2410         * docs/gst/tmpl/old/gobject2gtk.sgml:
2411         * docs/gst/tmpl/old/grammar.tab.sgml:
2412         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2413         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2414         * docs/gst/tmpl/old/gst_private.sgml:
2415         * docs/gst/tmpl/old/gstaggregator.sgml:
2416         * docs/gst/tmpl/old/gstarch.sgml:
2417         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2418         * docs/gst/tmpl/old/gstbufferstore.sgml:
2419         * docs/gst/tmpl/old/gstdata_private.sgml:
2420         * docs/gst/tmpl/old/gstdisksink.sgml:
2421         * docs/gst/tmpl/old/gstdisksrc.sgml:
2422         * docs/gst/tmpl/old/gstelementfactory.sgml:
2423         * docs/gst/tmpl/old/gstextratypes.sgml:
2424         * docs/gst/tmpl/old/gstfakesink.sgml:
2425         * docs/gst/tmpl/old/gstfakesrc.sgml:
2426         * docs/gst/tmpl/old/gstfdsink.sgml:
2427         * docs/gst/tmpl/old/gstfdsrc.sgml:
2428         * docs/gst/tmpl/old/gstfilesink.sgml:
2429         * docs/gst/tmpl/old/gstfilesrc.sgml:
2430         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2431         * docs/gst/tmpl/old/gstidentity.sgml:
2432         * docs/gst/tmpl/old/gstindexfactory.sgml:
2433         * docs/gst/tmpl/old/gstmarshal.sgml:
2434         * docs/gst/tmpl/old/gstmd5sink.sgml:
2435         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2436         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2437         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2438         * docs/gst/tmpl/old/gstpipefilter.sgml:
2439         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2440         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
2441         * docs/gst/tmpl/old/gstshaper.sgml:
2442         * docs/gst/tmpl/old/gstspider.sgml:
2443         * docs/gst/tmpl/old/gstspideridentity.sgml:
2444         * docs/gst/tmpl/old/gststatistics.sgml:
2445         * docs/gst/tmpl/old/gsttee.sgml:
2446         * docs/gst/tmpl/old/gsttimecache.sgml:
2447         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
2448         * docs/gst/tmpl/old/gstxmlregistry.sgml:
2449         * docs/gst/tmpl/old/gthread-cothreads.sgml:
2450         * docs/gst/tmpl/old/types.sgml:
2451           I didn't intend to add these or check them in.
2452
2453 2005-05-19  David Schleef  <ds@schleef.org>
2454
2455         * configure.ac: Use -no-common everywhere.  In a sane world, it
2456           would be the default in libtool, because without it, you can't
2457           build DLLs on Windows.
2458         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
2459         * docs/gst/gstreamer-sections.txt:
2460         * docs/gst/tmpl/gstcpu.sgml:
2461         * docs/gst/tmpl/gstdata.sgml:
2462         * docs/gst/tmpl/gstthread.sgml:
2463
2464 2005-05-19  David Schleef  <ds@schleef.org>
2465
2466         * gst/gstminiobject.c: (gst_value_set_mini_object),
2467         (gst_value_take_mini_object), (gst_value_get_mini_object):
2468         * gst/gstminiobject.h: Add GValue set/get functions.
2469
2470 2005-05-19  Wim Taymans  <wim@fluendo.com>
2471
2472         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
2473         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
2474         (gst_subbuffer_init), (gst_buffer_is_span_fast):
2475         * gst/gstbuffer.h:
2476         * gst/gstbus.c: (gst_bus_post):
2477         * gst/gstelement.c: (gst_element_get_random_pad):
2478         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
2479         Make subbufer unref the parent in finalize.
2480         some more debugging info.
2481
2482
2483 2005-05-19  Wim Taymans  <wim@fluendo.com>
2484
2485         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2486         (gst_basesink_init), (gst_basesink_finalize),
2487         (gst_basesink_activate), (gst_basesink_change_state):
2488         Don't free preroll queue too early.
2489
2490 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2491
2492         * gst/Makefile.am:
2493         * gst/ROADMAP:
2494           Hi, I'm outdated. Please shoot me.
2495
2496 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2497
2498         * gst/gstpipeline.c: (gst_pipeline_send_event):
2499           Do not access variables after they have been deleted.
2500
2501 2005-05-19  Wim Taymans  <wim@fluendo.com>
2502
2503         * tools/gst-inspect.c: (print_plugin_features):
2504         A plugin feature does unfortunatly not use the
2505         object name yet...
2506
2507 2005-05-18  Wim Taymans  <wim@fluendo.com>
2508
2509         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
2510         Port _span() functions to new subbuffers.
2511
2512 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2513
2514         * gst/gstbin.c: (gst_bin_add_func):
2515           Fix clock settery in bins when adding kids after the clock has
2516           been selected.
2517
2518 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2519
2520         * gst/elements/gstidentity.c: (gst_identity_class_init):
2521           Workaround until signals support GstMiniObject.
2522
2523 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
2524
2525         * gst/gstbuffer.c:
2526         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
2527
2528 2005-05-18  Wim Taymans  <wim@fluendo.com>
2529
2530         * gst/base/Makefile.am:
2531         * gst/base/gstadapter.c: (gst_adapter_base_init),
2532         (gst_adapter_class_init), (gst_adapter_init),
2533         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
2534         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
2535         (gst_adapter_flush), (gst_adapter_available),
2536         (gst_adapter_available_fast):
2537         * gst/base/gstadapter.h:
2538         Ported and added adapter to the base classes.
2539
2540 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2541
2542         * gst/gst.c:
2543         * gst/gstmessage.c:
2544           Make sure the class is reffed/unreffed once before threads can be
2545           used.  Fixes #304551.
2546
2547 2005-05-17  Wim Taymans  <wim@fluendo.com>
2548
2549         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
2550         (gst_basesink_chain_unlocked), (gst_basesink_activate):
2551         * gst/gstminiobject.c: (gst_mini_object_get_type),
2552         (gst_mini_object_free):
2553         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
2554         (gst_pad_push), (gst_pad_push_event):
2555         * gst/gstqueue.c: (gst_queue_change_state):
2556         Don't queue buffers in basesink when we are flushing.
2557         Unref buffer when flushing in basesink.
2558         Flush queue when going to READY
2559         Unref buffer when _push() returns an error.
2560         Don't free MiniObject instance when refcount is incremented
2561         in _finalize() so that we can recover objects.
2562
2563 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2564
2565         * docs/manual/advanced-schedulers.xml:
2566         * docs/manual/appendix-checklist.xml:
2567         * docs/pwg/advanced-clock.xml:
2568         * docs/pwg/advanced-interfaces.xml:
2569         * docs/pwg/advanced-request.xml:
2570         * docs/pwg/advanced-types.xml:
2571         * docs/pwg/intro-preface.xml:
2572         * examples/plugins/example.c: (gst_example_get_type),
2573         (gst_example_class_init), (gst_example_chain),
2574         (gst_example_set_property), (gst_example_get_property),
2575         (gst_example_change_state), (plugin_init):
2576         * examples/plugins/example.h:
2577           small doc fixes
2578
2579 2005-05-17  Wim Taymans  <wim@fluendo.com>
2580
2581         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
2582         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
2583         * gst/gstqueue.c: (gst_queue_change_state):
2584         Clear queue when going to READY.
2585         Remove IN_SETCAPS flag too.
2586
2587 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
2588
2589         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
2590           Remove implicit cast from gboolean to GstElementStateReturn;
2591           make sure we still return failure in paused => ready case if
2592           the parent class fails to change state and our own stop 
2593           vfunc succeeds.
2594
2595 2005-05-17  Wim Taymans  <wim@fluendo.com>
2596
2597         * tools/gst-launch.c: (event_loop):
2598         Message was unreffed too soon.
2599
2600 2005-05-16  Andy Wingo  <wingo@pobox.com>
2601
2602         * gst/gstbin.c (sink_iterator_filter): Err... um...
2603
2604         * check/gst/gstbin.c (test_ghost_pads): New test for the
2605         ghosting-if-elements-not-in-same-bin behavior.
2606
2607 2005-05-16  David Schleef  <ds@schleef.org>
2608
2609         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
2610         accessing refcount directly.
2611
2612 2005-05-15  David Schleef  <ds@schleef.org>
2613
2614         * check/Makefile.am: remove GstData checks
2615         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
2616         * gst/Makefile.am: add miniobject, remove data
2617         * gst/gst.h: add miniobject, remove data
2618         * gst/gstdata.c: remove
2619         * gst/gstdata.h: remove
2620         * gst/gstdata_private.h: remove
2621         * gst/gsttypes.h: remove GstEvent and GstMessage
2622         * gst/gstelement.c: (gst_element_post_message): fix for API changes
2623         * gst/gstmarshal.list: change BOXED -> OBJECT
2624
2625         Implement GstMiniObject.
2626         * gst/gstminiobject.c:
2627         * gst/gstminiobject.h:
2628
2629         Modify to be subclasses of GstMiniObject.
2630         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
2631         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
2632         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
2633         (gst_subbuffer_get_type), (gst_subbuffer_init),
2634         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
2635         (gst_buffer_span):
2636         * gst/gstbuffer.h:
2637         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
2638         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
2639         (_gst_event_copy), (gst_event_new):
2640         * gst/gstevent.h:
2641         * gst/gstmessage.c: (_gst_message_initialize),
2642         (gst_message_get_type), (gst_message_class_init),
2643         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
2644         (gst_message_new), (gst_message_new_error),
2645         (gst_message_new_warning), (gst_message_new_tag),
2646         (gst_message_new_state_changed), (gst_message_new_application):
2647         * gst/gstmessage.h:
2648         * gst/gstprobe.c: (gst_probe_perform),
2649         (gst_probe_dispatcher_dispatch):
2650         * gst/gstprobe.h:
2651         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
2652         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
2653         (_gst_query_copy), (gst_query_new):
2654
2655         Update elements for GstData -> GstMiniObject changes
2656         * gst/gstquery.h:
2657         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
2658         (gst_queue_chain), (gst_queue_loop):
2659         * gst/elements/gstbufferstore.c:
2660         (gst_buffer_store_add_buffer_func),
2661         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
2662         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2663         (gst_fakesink_render):
2664         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2665         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
2666         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
2667         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
2668         (gst_filesrc_create_read):
2669         * gst/elements/gstidentity.c: (gst_identity_class_init):
2670         * gst/elements/gsttypefindelement.c:
2671         (gst_type_find_element_src_event), (free_entry_buffers),
2672         (gst_type_find_element_handle_event):
2673         * libs/gst/dataprotocol/dataprotocol.c:
2674         (gst_dp_header_from_buffer):
2675         * libs/gst/dataprotocol/dataprotocol.h:
2676         * libs/gst/dataprotocol/dp-private.h:
2677
2678 2005-05-15  David Schleef  <ds@schleef.org>
2679
2680         * gst/elements/gstelements.c: Don't include headers that were
2681         just removed.
2682
2683 2005-05-15  David Schleef  <ds@schleef.org>
2684
2685         * gst/elements/Makefile.am: Remove some elements that don't
2686         need to be in the core (or even exist at all).
2687         * gst/elements/gstaggregator.c:
2688         * gst/elements/gstaggregator.h:
2689         * gst/elements/gstmd5sink.c:
2690         * gst/elements/gstmd5sink.h:
2691         * gst/elements/gstmultifilesrc.c:
2692         * gst/elements/gstmultifilesrc.h:
2693         * gst/elements/gstpipefilter.c:
2694         * gst/elements/gstpipefilter.h:
2695         * gst/elements/gstshaper.c:
2696         * gst/elements/gstshaper.h:
2697         * gst/elements/gststatistics.c:
2698         * gst/elements/gststatistics.h:
2699         * po/POTFILES.in: Remove above files.
2700
2701 2005-05-14  Andy Wingo  <wingo@pobox.com>
2702
2703         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
2704         so as to get the refs right.
2705         (sink_iterator_filter): New function, wraps bin_element_is_sink,
2706         unreffing objects that don't pass the filter.
2707
2708         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
2709         gst_element_set_bus.
2710         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
2711         normal cases, this will destroy the bus.
2712
2713         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
2714         object.
2715
2716         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
2717         has no sinks.
2718
2719 2005-05-13  Andy Wingo  <wingo@pobox.com>
2720
2721         * gst/gstutils.c (gst_element_link_pads): Instead of calling
2722         gst_pad_link, call pad_link_maybe_ghosting,
2723         (pad_link_maybe_ghosting): Links pads, making sure that the
2724         elements being linked are in the same bin.
2725         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
2726         Helpers for pad_link_maybe_ghosting.
2727
2728 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2729
2730         * configure.ac:
2731           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
2732
2733 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2734
2735         * docs/design/part-element-source.txt:
2736           Mention GstPushSrc
2737
2738 2005-05-12  Wim Taymans  <wim@fluendo.com>
2739
2740         * gst/base/gstbasesink.c: (gst_basesink_init),
2741         (gst_basesink_activate):
2742         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
2743         (gst_basesrc_is_seekable):
2744         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
2745         (bin_element_is_sink), (gst_bin_change_state):
2746         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2747         * gst/gstelement.h:
2748         Identify sinks by their flag to avoid overly complicated
2749         checks (fow now).
2750         Do state changes even for elements not reachable from the
2751         sinks.
2752         BaseSink is a sink now :)
2753         Some more debugging info in the basesrc.
2754
2755
2756 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2757
2758         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
2759           Implement _query on a bin, similar to _send_event.
2760
2761 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
2762
2763         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
2764           Discont event offset format should be GST_FORMAT_BYTES,
2765           not GST_FORMAT_TIME.
2766
2767 2005-05-12  Wim Taymans  <wim@fluendo.com>
2768
2769         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
2770         Same fix as Ronald's but without the signal. 
2771
2772 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2773
2774         * gst/gstutils.c: (gst_element_query_position):
2775           No, an element is not a pad.
2776
2777 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2778
2779         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
2780         (gst_bin_get_state):
2781           If a child is removed from a bin while we remove the child from
2782           the bin and while we're retrieving its state, signal this to the
2783           get_state function so we abort the wait (instead of waiting for
2784           a timeout) and can immediately re-iterate over all other elements.
2785
2786 2005-05-12  Wim Taymans  <wim@fluendo.com>
2787
2788         * gst/base/Makefile.am:
2789         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
2790         (gst_basesrc_start):
2791         * gst/base/gstbasesrc.h:
2792         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
2793         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
2794         (gst_pushsrc_init), (gst_pushsrc_create):
2795         * gst/base/gstpushsrc.h:
2796         Added is_seekable to BaseSrc
2797         Added simple PushSrc.
2798
2799 2005-05-11  Wim Taymans  <wim@fluendo.com>
2800
2801         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2802         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2803         (gst_element_link_pads), (gst_element_query_position),
2804         (gst_element_query_convert), (intersect_caps_func),
2805         (gst_pad_query_position), (gst_pad_query_convert):
2806         Fix refcounting in utils function.
2807         No point in trying to activate a pad when it's added, it could
2808         be added from the state change function and then we deadlock, the
2809         element has to decide what to do.
2810
2811 2005-05-10  Andy Wingo  <wingo@pobox.com>
2812
2813         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
2814         *all* the arguments.
2815
2816         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
2817         stream lock if it's a FLUSH_DONE; normal flushes don't get the
2818         lock (according to the docs -- if this is wrong change the docs).
2819
2820         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
2821         flush messages in the NULL state.
2822
2823         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
2824         message immediately and return.
2825         (gst_bus_set_flushing): New function. If a bus is flushing, it
2826         flushes out any queued messages and immediately unrefs new
2827         messages. This is so when an element goes to NULL, all of the
2828         unhandled messages coming from it can be freed, and their
2829         references to the element dropped. In other words: message source
2830         ref considered harmful :P
2831
2832         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
2833         we're finished with it.
2834
2835         * gst/gstmessage.c (gst_message_new_state_changed): 
2836
2837 2005-05-10  Wim Taymans  <wim@fluendo.com>
2838
2839         * gst/gstvalue.c: (gst_value_compare_flags),
2840         (gst_value_serialize_flags), (gst_value_deserialize_flags),
2841         (_gst_value_initialize):
2842         Added flags serialize/deserialize/compare code.
2843
2844 2005-05-09  Andy Wingo  <wingo@pobox.com>
2845
2846         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
2847         Intersect the peer's caps with our caps.
2848
2849 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2850
2851         * gst/base/gsttypefindhelper.c: (helper_find_peek):
2852         * gst/elements/gsttypefindelement.c: (find_peek):
2853           Handle negative offsets better. Fixes decodebin.
2854
2855 2005-05-09  Wim Taymans  <wim@fluendo.com>
2856
2857         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
2858         (gst_base_transform_event):
2859         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
2860         Implement accept_caps.
2861         Fix silly lock/unlock mismatch in base class.
2862
2863 2005-05-09  Wim Taymans  <wim@fluendo.com>
2864
2865         * docs/design/draft-push-pull.txt:
2866         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
2867         * gst/elements/gstfilesink.c: (gst_filesink_init),
2868         (gst_filesink_query):
2869         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2870         (gst_type_find_handle_src_query), (find_element_get_length):
2871         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
2872         * gst/gstelement.h:
2873         * gst/gstmessage.c:
2874         * gst/gstmessage.h:
2875         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
2876         (gst_real_pad_get_caps_unlocked),
2877         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
2878         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2879         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
2880         (gst_real_pad_dispose), (gst_real_pad_finalize),
2881         (gst_pad_load_and_link), (gst_pad_save_thyself),
2882         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
2883         (gst_pad_check_pull_range), (gst_pad_pull_range),
2884         (gst_pad_template_get_type), (gst_pad_template_class_init),
2885         (gst_pad_template_init), (gst_pad_template_dispose),
2886         (name_is_valid), (gst_static_pad_template_get),
2887         (gst_pad_template_new), (gst_static_pad_template_get_caps),
2888         (gst_pad_template_get_caps), (gst_pad_set_element_private),
2889         (gst_pad_get_element_private), (gst_pad_start_task),
2890         (gst_pad_pause_task), (gst_pad_stop_task),
2891         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
2892         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
2893         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
2894         (gst_ghost_pad_new):
2895         * gst/gstpad.h:
2896         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
2897         (gst_query_new_position), (gst_query_set_position),
2898         (gst_query_parse_position), (gst_query_new_convert),
2899         (gst_query_set_convert), (gst_query_parse_convert):
2900         * gst/gstquery.h:
2901         * gst/gstqueryutils.c:
2902         * gst/gstqueryutils.h:
2903         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2904         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
2905         (gst_queue_handle_src_query):
2906         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2907         (gst_element_query_position), (gst_element_query_convert),
2908         (intersect_caps_func), (gst_pad_query_position),
2909         (gst_pad_query_convert):
2910         * gst/gstutils.h:
2911         * tools/gst-inspect.c: (print_pad_info):
2912         * tools/gst-xmlinspect.c: (print_element_info):
2913         Remove old query functions. Ported old code.
2914         Added position/convert helper functions to gstutils.
2915         Reordered gstpad.c code, grouping relevant things.
2916         Remove gst_message_new(), always need to speficy a specific
2917         message.
2918
2919
2920 2005-05-09  Andy Wingo  <wingo@pobox.com>
2921
2922         * gst/gstiterator.h: Add some includes.
2923
2924         * gst/gstqueryutils.h: Include more headers.
2925
2926         * gst/gstpad.h:
2927         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
2928         some uses of gst_pad_query.
2929
2930         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
2931         NULL out parameters.
2932         (gst_query_new_position): New proc, allocates a new position
2933         query.
2934
2935         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
2936         gstqueryutils.c to the build.
2937
2938         * gst/gststructure.c (gst_structure_set_valist): Implement with
2939         the generic G_VALUE_COLLECT.
2940         
2941 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
2942
2943         * gst/Makefile.am: (gst_headers):
2944         Added gstqueryutils.h to the list of headers to install, that was
2945         a 'nachty' move wingo :)
2946
2947 2005-05-06  Andy Wingo  <wingo@pobox.com>
2948
2949         * gst/gstquery.h
2950         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
2951         GstData, init a memchunk.
2952         (standard_definitions): Add a few query types, deprecate a few.
2953         (gst_query_get_type): New proc.
2954         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
2955         implementation.
2956         (gst_query_new_application, gst_query_get_structure): New public
2957         procs.
2958
2959         * docs/design/draft-query.txt: Removed LINKS from the query types,
2960         because all the rest can be dispatched to other pads -- seemed
2961         ugly to have a query that couldn't be dispatched. internal_links
2962         is fine as a pad method.
2963
2964         * gst/gstpad.h: Add query2 as a pad method, add the new functions
2965         in gstpad.c, but maintain binary compatibility for the moment.
2966         Will fix before 0.9 is out.
2967
2968         * gst/gstqueryutils.c: 
2969         * gst/gstqueryutils.h: New files, implement 3 methods for each
2970         query type: parse_query, parse_response, and set. Probably need an
2971         allocator as well.
2972
2973         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
2974
2975         * gst/elements/gstfilesink.c (gst_filesink_query2):
2976         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
2977         query_types, and formats methods.
2978
2979         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
2980         (gst_pad_set_query2_function): New functions.
2981         (gst_real_pad_init): Set query2_default as the default query2
2982         function. Basically just dispatches to internally linked pads.
2983
2984         Needs review!
2985         
2986         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
2987         without using the atomic operations. Only one thread can possibly
2988         be accessing the data at this point. Changed so as to avoid
2989         gst_atomic operations.
2990
2991 2005-05-06  Wim Taymans  <wim@fluendo.com>
2992
2993         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
2994         Also set caps if we use the fallback buffer alloc.
2995
2996 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
2997
2998         * docs/gst/Makefile.am:
2999         * docs/gst/gstreamer-docs.sgml:
3000         * docs/gst/gstreamer-sections.txt:
3001         * docs/gst/tmpl/gstatomic.sgml:
3002         * docs/gst/tmpl/gstmemchunk.sgml:
3003         * testsuite/elements/struct_i386.h:
3004         * win32/GStreamer.vcproj:
3005         * win32/Makefile:
3006           Purge GstAtomic stuff from docs and win32 makefiles as well
3007
3008 2005-05-06  Wim Taymans  <wim@fluendo.com>
3009
3010         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3011         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3012         * gst/gstpad.c: (gst_pad_peer_get_caps):
3013         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3014         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3015         (gst_queue_src_activate), (gst_queue_change_state):
3016         * gst/gstqueue.h:
3017         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3018         (intersect_caps_func):
3019         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3020         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3021         Some fixes for the peer_get_caps() change.
3022
3023 2005-05-06  Wim Taymans  <wim@fluendo.com>
3024
3025         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3026         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3027         (gst_basesink_activate):
3028         Actually do something with error codes returned from the push
3029         functions.
3030
3031 2005-05-06  Wim Taymans  <wim@fluendo.com>
3032
3033         * docs/design/part-element-sink.txt:
3034         * docs/design/part-element-source.txt:
3035         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3036         (gst_basesink_event), (gst_basesink_activate):
3037         * gst/base/gstbasesink.h:
3038         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3039         (gst_basesrc_activate):
3040         * gst/base/gstbasesrc.h:
3041         * gst/gstelement.c: (gst_element_pads_activate):
3042         Some more documentation.
3043         Fixed scheduling decision in _pads_activate().
3044
3045 2005-05-05  Andy Wingo  <wingo@pobox.com>
3046
3047         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3048         the test suite.
3049
3050 2005-05-05  Wim Taymans  <wim@fluendo.com>
3051
3052         * gst/base/Makefile.am:
3053         * gst/base/gstbasesink.h:
3054         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3055         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3056         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3057         (gst_collectpads_class_init), (gst_collectpads_init),
3058         (gst_collectpads_finalize), (gst_collectpads_new),
3059         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3060         (find_pad), (gst_collectpads_remove_pad),
3061         (gst_collectpads_is_active), (gst_collectpads_collect),
3062         (gst_collectpads_collect_range), (gst_collectpads_start),
3063         (gst_collectpads_stop), (gst_collectpads_peek),
3064         (gst_collectpads_pop), (gst_collectpads_available),
3065         (gst_collectpads_read), (gst_collectpads_flush),
3066         (gst_collectpads_chain):
3067         * gst/base/gstcollectpads.h:
3068         * gst/elements/Makefile.am:
3069         * gst/elements/gstelements.c:
3070         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3071         (gst_fakesink_get_times), (gst_fakesink_event),
3072         (gst_fakesink_preroll), (gst_fakesink_render):
3073         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3074         (gst_filesink_init), (gst_filesink_set_location),
3075         (gst_filesink_open_file), (gst_filesink_close_file),
3076         (gst_filesink_pad_query), (gst_filesink_event),
3077         (gst_filesink_render), (gst_filesink_change_state):
3078         * gst/elements/gstfilesink.h:
3079         Added object to help in making collect pad based elements.
3080         Ported filesink.
3081         Make event function in sink baseclass return gboolean.
3082
3083 2005-05-05  Wim Taymans  <wim@fluendo.com>
3084
3085         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3086         (gst_bin_get_by_name):
3087         * gst/gstbuffer.h:
3088         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3089         (gst_clock_finalize):
3090         * gst/gstdata.c: (gst_data_replace):
3091         * gst/gstdata.h:
3092         * gst/gstelement.c: (gst_element_request_pad),
3093         (gst_element_pads_activate):
3094         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3095         (gst_object_unref):
3096         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3097         (gst_pad_set_checkgetrange_function),
3098         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3099         (gst_pad_check_pull_range), (gst_pad_pull_range),
3100         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3101         (gst_pad_pause_task), (gst_pad_stop_task):
3102         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3103         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3104         Fix name lookup in GstBin.
3105         Added _data_replace() function and _buffer_replace()
3106         Use finalize method to clean up clock.
3107         Fix refcounting on request pads.
3108         Fix pad schedule mode error.
3109         Some more object refcounting debug info,
3110
3111
3112 2005-05-04  Andy Wingo <wingo@pobox.com>
3113
3114         * check/Makefile.am:
3115         * docs/gst/tmpl/gstatomic.sgml:
3116         * docs/gst/tmpl/gstplugin.sgml:
3117         * gst/base/gstbasesink.c: (gst_basesink_activate):
3118         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3119         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3120         (gst_basesrc_query), (gst_basesrc_set_property),
3121         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3122         (gst_basesrc_activate):
3123         * gst/base/gstbasesrc.h:
3124         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3125         (gst_base_transform_src_activate):
3126         * gst/elements/gstelements.c:
3127         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3128         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3129         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3130         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3131         (gst_type_find_element_checkgetrange),
3132         (gst_type_find_element_activate):
3133         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3134         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3135         (gst_caps_load_thyself):
3136         * gst/gstelement.c: (gst_element_pads_activate),
3137         (gst_element_save_thyself), (gst_element_restore_thyself):
3138         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3139         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3140         * gst/gstpad.h:
3141         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3142         (gst_xml_parse_file), (gst_xml_parse_memory),
3143         (gst_xml_get_element), (gst_xml_make_element):
3144         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3145         (_file_index_id_save_xml), (gst_file_index_commit):
3146         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3147         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3148         (load_paths):
3149         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3150         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3151         * tools/gst-complete.c: (main):
3152         * tools/gst-compprep.c: (main):
3153         * tools/gst-inspect.c: (print_element_properties_info):
3154         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3155         * tools/gst-xmlinspect.c: (print_element_properties):
3156         GCC 4 fixen.
3157         
3158 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3159
3160         * gst/gstplugin.c: (gst_plugin_check_module),
3161         (gst_plugin_check_file), (gst_plugin_load_file):
3162             apply patch from #172526 to make register work on MacOSX
3163
3164 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3165
3166         * docs/gst/tmpl/gstconfig.sgml:
3167         * gst/gstconfig.h.in:
3168           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3169         * testsuite/debug/printf_extension.c: (main):
3170           Do not use GST_PTR_FORMAT on pointers to types with
3171           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3172         * testsuite/elements/property.h:
3173           use correct printf format
3174
3175 2005-05-02  Wim Taymans  <wim@fluendo.com>
3176
3177         * docs/design/draft-push-pull.txt:
3178         * docs/design/draft-query.txt:
3179         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3180         (gst_basesrc_start):
3181         Added draft for new query API.
3182         Added draft for better selecting scheduling methods.
3183         Make basesrc ignore length if the subclass does not support
3184         it.
3185
3186 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3187
3188         * gst/Makefile.am:
3189           possible fixes for automake-1.5 - _LIBADD is reserved
3190
3191 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3192
3193         * docs/faq/Makefile.am:
3194         * docs/manual/Makefile.am:
3195         * docs/manuals.mak:
3196         * docs/pwg/Makefile.am:
3197         * gst/Makefile.am:
3198           possible fixes for automake-1.5
3199
3200 2005-04-28  Wim Taymans  <wim@fluendo.com>
3201
3202         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3203         (gst_basesink_pad_getcaps), (gst_basesink_init),
3204         (gst_basesink_do_sync):
3205         * gst/gstclock.c: (gst_clock_entry_new):
3206         * gst/gstevent.c: (gst_event_discont_get_value):
3207         * gst/gstpipeline.c: (pipeline_bus_handler),
3208         (gst_pipeline_change_state):
3209         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3210         Better debugging of clocking info.
3211         Allow NULL values when getting discont values.
3212
3213 2005-04-27  Wim Taymans  <wim@fluendo.com>
3214
3215         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3216         * check/gst/gstpad.c: (gst_pad_suite):
3217         Increase timeout for checks.
3218
3219 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3220
3221         * check/Makefile.am:
3222           fix the broken rule for cleanup.  Apparently this rule is
3223           only needed on FC2, so maybe this warrants further autotool
3224           inspection.
3225
3226 2005-04-26  Wim Taymans  <wim@fluendo.com>
3227
3228         * gst/gsttrashstack.h:
3229         Ooohh. a nasty one! After having a failed pop() from the stack,
3230         it's possible that the stack is empty. In that case, don't
3231         follow the NULL pointer.
3232
3233 2005-04-25  Wim Taymans  <wim@fluendo.com>
3234
3235         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3236         (gst_pad_set_checkgetrange_function),
3237         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3238         (gst_pad_check_pull_range), (gst_pad_pull_range),
3239         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3240         (gst_pad_pause_task), (gst_pad_stop_task):
3241         * gst/gstplugin.c: (gst_plugin_load):
3242         * gst/gstplugin.h:
3243         Remove gst_library_load as it does more harm than good with
3244         the new g_module flags.
3245         Revert bogus caps template check in pad linking, pad caps
3246         are important when linking not the template, which is more
3247         general than the current caps.
3248
3249 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3250
3251         * gst/autoplug/.cvsignore:
3252         * gst/autoplug/Makefile.am:
3253         * gst/autoplug/gstsearchfuncs.c:
3254         * gst/autoplug/gstsearchfuncs.h:
3255         * gst/autoplug/gstspider.c:
3256         * gst/autoplug/gstspider.h:
3257         * gst/autoplug/gstspideridentity.c:
3258         * gst/autoplug/gstspideridentity.h:
3259         * gst/autoplug/spidertest.c:
3260           Die, spider, die.
3261
3262 2005-04-25  Wim Taymans  <wim@fluendo.com>
3263
3264         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3265         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3266         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3267         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3268         * gst/gstpad.h:
3269         Added stubs for unimplemented functions. 
3270
3271 2005-04-24  David Schleef  <ds@schleef.org>
3272
3273         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3274         please fix.
3275
3276 2005-04-24  David Schleef  <ds@schleef.org>
3277
3278         Convert everything from GstAtomicInt to g_atomic_int_*, and
3279         remove gstatomic.
3280         * gst/Makefile.am:
3281         * gst/gstatomic.c:
3282         * gst/gstatomic.h:
3283         * gst/gstatomic_impl.h:
3284         * gst/gstbuffer.c:
3285         * gst/gstcaps.c:
3286         * gst/gstcaps.h:
3287         * gst/gstclock.c:
3288         * gst/gstclock.h:
3289         * gst/gstdata.c:
3290         * gst/gstdata.h:
3291         * gst/gstdata_private.h:
3292         * gst/gstevent.c:
3293         * gst/gstinfo.c:
3294         * gst/gstinfo.h:
3295         * gst/gstmessage.c:
3296         * gst/gstobject.c:
3297         * gst/gstobject.h:
3298         * gst/gststructure.c:
3299         * gst/gststructure.h:
3300         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3301         * gst/gstutils.h:
3302
3303 2005-04-24  David Schleef  <ds@schleef.org>
3304
3305         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3306         make the regressions tests work.  Remove some code that is no
3307         longer true.
3308         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3309         Disable warning for pads without templates.
3310
3311 2005-04-24  David Schleef  <ds@schleef.org>
3312
3313         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3314         functions that handle filtered links.
3315         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3316         removed functions.
3317         * gst/gstutils.c: Fix/remove utility functions that handle
3318         filtered caps.
3319         * gst/gstutils.h:
3320         * gst/gstvalue.c: Add serialization/deserialization of caps
3321         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3322         requires fixing so that the filter caps notation creates
3323         a capsfilter element and sets the filter_caps property.  I
3324         think everyone probably wants to keep the shorthand notation.
3325         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3326         * docs/gst/tmpl/gstpad.sgml:
3327
3328         * gst/elements/gstelements.c: Register capsfilter element.
3329         * gst/Makefile.am: fix spacing
3330         * docs/random/ds/0.9-suggested-changes: random
3331
3332 2005-04-23  David Schleef  <ds@schleef.org>
3333
3334         * gst/elements/Makefile.am:
3335         * gst/elements/gstcapsfilter.c: New element that acts like an
3336         identity, but filters caps.  Will eventually replace filtered
3337         caps in pad linking.
3338         * gst/gstutils.c: (gst_element_create_all_pads): New function
3339         to create all the ALWAYS pads that are registered with an
3340         element class.  This functionality should eventually be
3341         merged in with GstElement initialization.
3342         * gst/gstutils.h:
3343         * testsuite/trigger/README: part of trigger test code that should
3344         have been checked in a long time ago.
3345
3346 2005-04-23  David Schleef  <ds@schleef.org>
3347
3348         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3349         needed with new versions of libtool (nobody will confirm this),
3350         and hard to carry around.
3351         * gst/autoplug/Makefile.am:
3352         * gst/base/Makefile.am:
3353         * gst/elements/Makefile.am:
3354         * gst/indexers/Makefile.am:
3355         * gst/schedulers/Makefile.am:
3356         * libs/gst/bytestream/Makefile.am:
3357         * libs/gst/control/Makefile.am:
3358         * libs/gst/dataprotocol/Makefile.am:
3359         * libs/gst/getbits/Makefile.am:
3360
3361 2005-04-21  Wim Taymans  <wim@fluendo.com>
3362
3363         * docs/design/draft-push-pull.txt:
3364         * docs/design/part-MT-refcounting.txt:
3365         * docs/design/part-TODO.txt:
3366         * docs/design/part-caps.txt:
3367         * docs/design/part-events.txt:
3368         * docs/design/part-gstbus.txt:
3369         * docs/design/part-gstpipeline.txt:
3370         * docs/design/part-messages.txt:
3371         * docs/design/part-push-pull.txt:
3372         * docs/design/part-query.txt:
3373         Some more docs.
3374
3375 2005-04-21  Wim Taymans  <wim@fluendo.com>
3376
3377         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3378         (gst_message_new), (gst_message_new_error),
3379         (gst_message_new_warning), (gst_message_new_tag),
3380         (gst_message_new_state_changed), (gst_message_new_application),
3381         (gst_message_get_structure):
3382         * gst/gstmessage.h:
3383         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3384         (gst_structure_copy_conditional):
3385         Use parent refcount in GstMessage to ensure GstStructure
3386         consistency.
3387         Cleaned up headers a bit.
3388         
3389
3390 2005-04-20  Wim Taymans  <wim@fluendo.com>
3391
3392         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3393         (gst_basesink_pad_getcaps), (gst_basesink_init),
3394         (gst_basesink_chain_unlocked):
3395         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3396         (gst_type_find_helper):
3397         * gst/elements/gsttypefindelement.c:
3398         (gst_type_find_element_have_type), (gst_type_find_element_init),
3399         (stop_typefinding), (gst_type_find_element_handle_event),
3400         (find_suggest), (gst_type_find_element_chain),
3401         (gst_type_find_element_checkgetrange),
3402         (gst_type_find_element_getrange), (do_typefind),
3403         (gst_type_find_element_activate):
3404         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3405         (gst_buffer_default_free), (gst_buffer_default_copy),
3406         (gst_buffer_set_caps):
3407         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3408         (gst_caps_replace):
3409         * gst/gstmessage.c: (gst_message_new),
3410         (gst_message_new_state_changed):
3411         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3412         (gst_pad_set_checkgetrange_function),
3413         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3414         (gst_pad_set_caps), (gst_pad_check_pull_range),
3415         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3416         * gst/gstpad.h:
3417         * gst/gsttypefind.c: (gst_type_find_register):
3418         Make gst_caps_replace() work like other _replace() functions.
3419         Use _caps_replace() where possible.
3420         Make sure _message_new() initialises its field.
3421         Add gst_static_pad_template_get_caps()
3422
3423
3424 2005-04-18  Andy Wingo  <wingo@pobox.com>
3425
3426         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3427         on the peer, not the pad. I think that was a typo. Pass an extra
3428         arg to see if random access is possible. Activate the pads as
3429         PULL_RANGE if possible.
3430
3431         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3432
3433         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3434         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3435         to PROP_....
3436
3437 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3438
3439         * docs/faq/using.xml:
3440           Add note on gstreamer-properties (#154996).
3441
3442 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3443
3444         * docs/random/bbb/optional-properties:
3445           Some analysis on optional properties.
3446
3447 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3448
3449         * docs/gst/tmpl/gstelementfactory.sgml:
3450         * gst/gstelement.h:
3451         * gst/gstelementfactory.c: (gst_element_factory_init),
3452         (gst_element_factory_cleanup), (gst_element_register),
3453         (__gst_element_factory_add_static_pad_template),
3454         (gst_element_factory_get_static_pad_templates),
3455         (gst_element_factory_can_src_caps),
3456         (gst_element_factory_can_sink_caps):
3457         * gst/registries/Makefile.am:
3458         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
3459         (gst_xml_registry_class_init), (gst_xml_registry_init),
3460         (gst_xml_registry_new), (gst_xml_registry_set_property),
3461         (gst_xml_registry_get_property), (get_time), (make_dir),
3462         (gst_xml_registry_get_perms_func),
3463         (plugin_times_older_than_recurse), (plugin_times_older_than),
3464         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
3465         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
3466         (add_to_char_array), (read_string), (read_uint), (read_enum),
3467         (load_pad_template), (load_feature), (load_plugin), (load_paths),
3468         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
3469         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
3470         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
3471         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
3472         (gst_xml_registry_rebuild):
3473         * gst/registries/gstlibxmlregistry.h:
3474         * tools/gst-compprep.c: (main):
3475         * tools/gst-inspect.c: (print_pad_templates_info):
3476         * tools/gst-xmlinspect.c: (print_element_info):
3477           Use libxml2 for registry parsing, use staticpadtemplates in
3478           elementfactories. Makes gst_init() +/- 10x faster.
3479
3480 2005-04-12  Wim Taymans  <wim@fluendo.com>
3481
3482         * gst/base/Makefile.am:
3483         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3484         (gst_basesink_pad_getcaps), (gst_basesink_init),
3485         (gst_basesink_event), (gst_basesink_change_state):
3486         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3487         (gst_basesrc_init), (gst_basesrc_query),
3488         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3489         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3490         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3491         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3492         (gst_basesrc_stop), (gst_basesrc_activate),
3493         (gst_basesrc_change_state):
3494         * gst/base/gsttypefindhelper.c: (helper_find_peek),
3495         (helper_find_suggest), (gst_type_find_helper):
3496         * gst/base/gsttypefindhelper.h:
3497         * gst/elements/Makefile.am:
3498         * gst/elements/gstelements.c:
3499         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3500         (gst_fakesink_get_times), (gst_fakesink_event),
3501         (gst_fakesink_preroll), (gst_fakesink_render):
3502         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3503         (gst_fakesrc_init), (gst_fakesrc_event_handler),
3504         (gst_fakesrc_get_property), (gst_fakesrc_create),
3505         (gst_fakesrc_start), (gst_fakesrc_stop):
3506         * gst/elements/gstfakesrc.h:
3507         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
3508         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3509         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3510         (gst_filesrc_create_read), (gst_filesrc_create),
3511         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
3512         (gst_filesrc_start):
3513         * gst/elements/gsttypefindelement.c:
3514         (gst_type_find_element_have_type), (gst_type_find_element_init),
3515         (start_typefinding), (stop_typefinding), (push_buffer_store),
3516         (gst_type_find_element_handle_event),
3517         (gst_type_find_element_chain),
3518         (gst_type_find_element_checkgetrange),
3519         (gst_type_find_element_getrange), (do_typefind),
3520         (gst_type_find_element_activate),
3521         (gst_type_find_element_change_state):
3522         * gst/elements/gsttypefindelement.h:
3523         * gst/gstpipeline.c: (pipeline_bus_handler):
3524         Added typefind helper.
3525         Small preroll fix in the base sink.
3526         Disable typefind code in basesrc.
3527         Crude port of typefindelement.
3528         Fakesrc cleanups.
3529
3530
3531 2005-04-11  Wim Taymans  <wim@fluendo.com>
3532
3533         * check/gst/gstbus.c: (gstbus_suite):
3534         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
3535         * check/gstcheck.h:
3536           Fix up the timeout so that the test does not fail.
3537
3538 2005-04-06  Wim Taymans  <wim@fluendo.com>
3539
3540         * gst/base/README:
3541         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3542         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
3543         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3544         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3545         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3546         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3547         (gst_basesrc_stop), (gst_basesrc_activate),
3548         (gst_basesrc_change_state), (basesrc_find_peek),
3549         (basesrc_find_suggest), (gst_basesrc_type_find):
3550         * gst/base/gstbasesrc.h:
3551         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
3552         (gst_filesrc_class_init), (gst_filesrc_init),
3553         (gst_filesrc_finalize), (gst_filesrc_set_location),
3554         (gst_filesrc_set_property), (gst_filesrc_get_property),
3555         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3556         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3557         (gst_filesrc_create_read), (gst_filesrc_create),
3558         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
3559         * gst/elements/gstfilesrc.h:
3560         * gst/gstelement.c: (gst_element_get_state_func),
3561         (gst_element_lost_state), (gst_element_pads_activate):
3562         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3563         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3564         (gst_pad_pull_range):
3565         * gst/gstpad.h:
3566         More work on the generic source base class, implement seeking,
3567         query.
3568         Make filesrc extend the base source class.
3569         Added gst_pad_set_checkgetrange_function to GstPad.
3570
3571 2005-04-06  Andy Wingo  <wingo@pobox.com>
3572
3573         * pkgconfig/gstreamer-base.pc.in:
3574         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
3575
3576         * pkgconfig/Makefile.am:
3577         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
3578
3579 2005-04-04  Wim Taymans  <wim@fluendo.com>
3580
3581         * gst/base/Makefile.am:
3582         * gst/base/README:
3583         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3584         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3585         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3586         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
3587         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3588         (gst_basesrc_base_init), (gst_basesrc_class_init),
3589         (gst_basesrc_init), (gst_basesrc_get_formats),
3590         (gst_basesrc_get_query_types), (gst_basesrc_query),
3591         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
3592         (gst_basesrc_set_property), (gst_basesrc_get_property),
3593         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
3594         (gst_basesrc_loop), (gst_basesrc_activate),
3595         (gst_basesrc_change_state):
3596         * gst/base/gstbasesrc.h:
3597         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
3598         (gst_fakesrc_class_init), (gst_fakesrc_init),
3599         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
3600         (gst_fakesrc_get_property), (gst_fakesrc_create):
3601         * gst/elements/gstfakesrc.h:
3602         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
3603         (gst_filesrc_open_file), (gst_filesrc_loop),
3604         (gst_filesrc_activate), (filesrc_find_peek),
3605         (gst_filesrc_type_find):
3606         Made base source class, make fakesrc extend it.
3607         Add comments to basesink class.
3608         Some filesrc cleanup.
3609
3610 2005-03-31  David Schleef  <ds@schleef.org>
3611
3612         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
3613         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
3614         expected to link against libgstreamer.
3615         * gst/base/Makefile.am: link against libgstreamer
3616         * gst/elements/Makefile.am: same
3617
3618 2005-03-31  Andy Wingo  <wingo@pobox.com>
3619
3620         * tests/instantiate/Makefile.am:
3621         * tests/instantiate/caps.c: Add test to test speed of caps copy
3622         and free.
3623
3624         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
3625         GMemChunk to be fair.
3626
3627         * gst/gsttrashstack.h: Remove warning about using the fallback
3628         trash stack implementation, it's still faster than malloc.
3629
3630 2005-03-30  Andy Wingo  <wingo@pobox.com>
3631
3632         * tests/complexity.c: Add a copyright.
3633
3634 2005-03-31  Wim Taymans  <wim@fluendo.com>
3635
3636         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
3637         (gst_base_transform_class_init), (gst_base_transform_init),
3638         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
3639         (gst_base_transform_get_property),
3640         (gst_base_transform_sink_activate),
3641         (gst_base_transform_src_activate),
3642         (gst_base_transform_change_state):
3643         * gst/base/gstbasetransform.h:
3644         * gst/elements/gstidentity.c: (gst_identity_class_init),
3645         (gst_identity_event), (gst_identity_check_perfect),
3646         (gst_identity_transform), (gst_identity_start),
3647         (gst_identity_stop):
3648         Added start/stop methods to transform base class so subclasses 
3649         don't need to deal with state changes even.
3650
3651 2005-03-31  Wim Taymans  <wim@fluendo.com>
3652
3653         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
3654         (gst_event_new_discontinuous), (gst_event_discont_get_value):
3655         * gst/gstevent.h:
3656         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3657         (gst_pad_pull_range):
3658         Added rate to the discont event to prepare for variable speed
3659         and reverse playback.
3660
3661 2005-03-29  David Schleef  <ds@schleef.org>
3662
3663         * configure.ac:
3664         * testsuite/trigger/Makefile.am:
3665         * testsuite/trigger/trigger.c: A little example program to show
3666         how trigger-based elements can work.
3667
3668 2005-03-29  Wim Taymans  <wim@fluendo.com>
3669
3670         * gst/base/Makefile.am:
3671         * gst/base/README:
3672         * gst/base/gstbasesink.c: (gst_basesink_get_type),
3673         (gst_basesink_base_init), (gst_basesink_class_init),
3674         (gst_basesink_pad_getcaps), (gst_basesink_init),
3675         (gst_basesink_activate), (gst_basesink_change_state):
3676         * gst/base/gstbasesink.h:
3677         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
3678         (gst_base_transform_base_init), (gst_base_transform_finalize),
3679         (gst_base_transform_class_init), (gst_base_transform_init),
3680         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
3681         (gst_base_transform_event), (gst_base_transform_getrange),
3682         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
3683         (gst_base_transform_set_property),
3684         (gst_base_transform_get_property),
3685         (gst_base_transform_sink_activate),
3686         (gst_base_transform_src_activate),
3687         (gst_base_transform_change_state):
3688         * gst/base/gstbasetransform.h:
3689         * gst/elements/gstidentity.c: (gst_identity_finalize),
3690         (gst_identity_class_init), (gst_identity_init),
3691         (gst_identity_event), (gst_identity_check_perfect),
3692         (gst_identity_transform), (gst_identity_set_property),
3693         (gst_identity_get_property), (gst_identity_change_state):
3694         * gst/elements/gstidentity.h:
3695         * gst/gstelement.c: (gst_element_get_state_func),
3696         (gst_element_lost_state), (gst_element_pads_activate):
3697         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3698         (gst_pad_check_pull_range), (gst_pad_pull_range):
3699         * gst/gstpad.h:
3700         Simplify pad activation.
3701         Added function to check if pull_range can be performed.
3702         Error out when pulling inactive or flushing pads.
3703         Removed const from refcounted types as it does not make sense.
3704         Simplify pad templates in basesink
3705         Added base class for simple 1-to-1 transforms.
3706         Make identity subclass the base transform.
3707
3708 2005-03-29  Andy Wingo  <wingo@pobox.com>
3709
3710         * docs/libs/gstreamer-libs-overrides.txt: 
3711         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
3712         really don't understand what's going on, but like whatever. I want
3713         green buildbot!
3714
3715         * docs/gst/Makefile.am:
3716         * docs/libs/Makefile.am: Dist the overrides files.
3717
3718         * check/Makefile.am (clean-local): Remove .libs directories.
3719
3720         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
3721         elements to EXTRA_DIST, so po/ files are happy.
3722
3723         * po/POTFILES.in: Er, remove it here.
3724
3725         * po/POTFILES: Remove gstspider.c.
3726
3727         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
3728
3729         * docs/libs/gstreamer-libs-docs.sgml: 
3730         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
3731         bytestream.
3732
3733         * tests/complexity.c (main): Set the length of the preroll queue
3734         on the sinks to prevent a lockup.
3735
3736         * libs/gst/dataprotocol/Makefile.am: 
3737         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
3738         the same as the one in check/gst-libs/gdp.c.
3739
3740         * po/, docs/gst/: Commit automatic changes to docs and po files.
3741
3742         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
3743         the versioned libgstbase.
3744
3745         * check/Makefile.am: Depend on an unversioned gst-register, seems
3746         to make autoconf happier.
3747
3748         * gst/base/Makefile.am: Make libgstbase a versioned lib.
3749
3750 2005-03-28  Wim Taymans  <wim@fluendo.com>
3751
3752         * configure.ac:
3753         * docs/design/part-gstelement.txt:
3754         * docs/design/part-negotiation.txt:
3755         * docs/design/part-preroll.txt:
3756         * docs/design/part-scheduling.txt:
3757         * docs/design/part-states.txt:
3758         * gst/Makefile.am:
3759         * gst/base/Makefile.am:
3760         * gst/base/README:
3761         * gst/base/gstbasesink.c: (gst_basesink_get_template),
3762         (gst_basesink_base_init), (gst_basesink_class_init),
3763         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3764         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3765         (gst_basesink_set_pad_functions),
3766         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
3767         (gst_basesink_set_property), (gst_basesink_get_property),
3768         (gst_base_sink_get_template), (gst_base_sink_get_caps),
3769         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
3770         (gst_basesink_preroll_queue_push),
3771         (gst_basesink_preroll_queue_empty),
3772         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
3773         (gst_basesink_event), (gst_basesink_get_times),
3774         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
3775         (gst_basesink_chain_unlocked), (gst_basesink_chain),
3776         (gst_basesink_loop), (gst_basesink_activate),
3777         (gst_basesink_change_state):
3778         * gst/base/gstbasesink.h:
3779         * gst/elements/Makefile.am:
3780         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
3781         (gst_fakesink_class_init), (gst_fakesink_init),
3782         (gst_fakesink_set_property), (gst_fakesink_get_property),
3783         (gst_fakesink_get_times), (gst_fakesink_event),
3784         (gst_fakesink_preroll), (gst_fakesink_render),
3785         (gst_fakesink_change_state):
3786         * gst/elements/gstfakesink.h:
3787         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3788         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
3789         * gst/gstelement.c: (gst_element_add_pad),
3790         (gst_element_get_state_func), (gst_element_abort_state),
3791         (gst_element_commit_state), (gst_element_lost_state),
3792         (gst_element_set_state), (gst_element_pads_activate):
3793         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
3794         * gst/gstpipeline.c: (gst_pipeline_send_event),
3795         (gst_pipeline_change_state):
3796         Added state change code.
3797         Added/updated docs.
3798         Added sink base class, make fakesink extend the base class.
3799         Small cleanups in GstPipeline.
3800
3801 2005-03-26  David Schleef  <ds@schleef.org>
3802
3803         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
3804         is broken and should be implemented in a different library.
3805         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
3806         * gst/gst.h: remove gstcpu.h
3807         * gst/gstcpu.c: remove
3808         * gst/gstcpu.h: remove
3809         * gst/Makefile.am.future: Remove this file.  It's ancient.
3810
3811 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3812
3813         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3814         (gst_bin_send_event):
3815           Add default event/set_manager handlers. The set_manager handler
3816           takes care that the manager is distributed over kids that were
3817           already in the bin before the manager was set. The event handler
3818           is a utility virtual function that sends the event over all sinks,
3819           so that gst_element_send_event (bin, event); has the expected
3820           behaviour.
3821         * gst/gstpad.c: (gst_pad_event_default):
3822           Re-install default event handling for discontinuities, so that
3823           seeking works without requiring hacks in applications or extra
3824           code in sinks.
3825         * gst/gstpipeline.c: (gst_pipeline_class_init),
3826         (gst_pipeline_send_event):
3827           Half hack, half utility: set a pipeline to PAUSED for seek events,
3828           since that is the only way we can guarantee a/v sync. Means that
3829           you can do gst_element_seek (pipeline, method, pos); on a pipeline
3830           and it "just works".
3831
3832 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3833
3834         * gst/gstpipeline.c: (gst_pipeline_use_clock):
3835           Lock/unlock mismatch.
3836
3837 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
3838
3839         * docs/faq/gst-uninstalled:
3840           add gst-plugins-base
3841         * docs/gst/Makefile.am:
3842           don't error out until docs are fixed
3843         * docs/gst/gstreamer.types:
3844           remove thread
3845
3846 2005-03-22  Wim Taymans  <wim@fluendo.com>
3847
3848         * check/Makefile.am:
3849         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
3850         * gst/gststructure.c: (gst_structure_set_valist),
3851         (gst_structure_copy_conditional):
3852         Activated more tests.
3853         Added message test.
3854         Added G_TYPE_POINTER to GstStructure.
3855         
3856
3857 2005-03-22  Wim Taymans  <wim@fluendo.com>
3858
3859         * docs/design/part-TODO.txt:
3860         * docs/design/part-events.txt:
3861         * docs/design/part-gstbin.txt:
3862         * docs/design/part-gstbus.txt:
3863         * docs/design/part-gstpipeline.txt:
3864         * docs/design/part-messages.txt:
3865         * gst/gstbus.c:
3866         * gst/gstmessage.c:
3867         Docs updates
3868
3869 2005-03-21  Wim Taymans  <wim@fluendo.com>
3870
3871         * gst/gstbus.c: (gst_bus_post):
3872         Fix copy-and-paste error.
3873
3874 2005-03-21  Wim Taymans  <wim@fluendo.com>
3875
3876         * check/Makefile.am:
3877         * gst/Makefile.am:
3878         * gst/elements/Makefile.am:
3879         * gst/elements/gstelements.c:
3880         * gst/elements/gstfakesink.c: (gst_fakesink_init),
3881         (gst_fakesink_event), (gst_fakesink_chain):
3882         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3883         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
3884         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
3885         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
3886         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
3887         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
3888         (gst_fakesrc_loop), (gst_fakesrc_activate),
3889         (gst_fakesrc_change_state):
3890         * gst/elements/gstfakesrc.h:
3891         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
3892         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
3893         (gst_filesrc_open_file), (gst_filesrc_loop),
3894         (gst_filesrc_activate), (gst_filesrc_change_state),
3895         (filesrc_find_peek), (filesrc_find_suggest),
3896         (gst_filesrc_type_find):
3897         * gst/elements/gstidentity.c: (gst_identity_finalize),
3898         (gst_identity_class_init), (gst_identity_init),
3899         (gst_identity_proxy_getcaps), (identity_queue_push),
3900         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
3901         (gst_identity_getrange), (gst_identity_chain),
3902         (gst_identity_sink_loop), (gst_identity_src_loop),
3903         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
3904         (gst_identity_set_property), (gst_identity_get_property),
3905         (gst_identity_change_state):
3906         * gst/elements/gstidentity.h:
3907         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
3908         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
3909         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
3910         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
3911         (gst_tee_sink_activate):
3912         * gst/elements/gsttee.h:
3913         * gst/gst.c: (gst_register_core_elements), (init_post):
3914         * gst/gst.h:
3915         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
3916         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
3917         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
3918         (gst_bin_change_state):
3919         * gst/gstbin.h:
3920         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
3921         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
3922         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
3923         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
3924         (gst_bus_set_sync_handler), (gst_bus_create_watch),
3925         (bus_watch_callback), (bus_watch_destroy),
3926         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
3927         (poll_timeout), (gst_bus_poll):
3928         * gst/gstbus.h:
3929         * gst/gstcaps.h:
3930         * gst/gstdata.h:
3931         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
3932         (gst_element_post_message), (gst_element_message_full),
3933         (gst_element_get_state_func), (gst_element_get_state),
3934         (gst_element_abort_state), (gst_element_commit_state),
3935         (gst_element_lost_state), (gst_element_set_state),
3936         (gst_element_pads_activate), (gst_element_change_state),
3937         (gst_element_dispose), (gst_element_set_manager_func),
3938         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
3939         (gst_element_set_manager), (gst_element_get_manager),
3940         (gst_element_set_bus), (gst_element_get_bus),
3941         (gst_element_set_scheduler), (gst_element_get_scheduler):
3942         * gst/gstelement.h:
3943         * gst/gstevent.c: (gst_event_new_segment_seek),
3944         (gst_event_new_flush):
3945         * gst/gstevent.h:
3946         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
3947         (_gst_message_free), (gst_message_get_type), (gst_message_new),
3948         (gst_message_new_eos), (gst_message_new_error),
3949         (gst_message_new_warning), (gst_message_new_tag),
3950         (gst_message_new_state_changed), (gst_message_new_application),
3951         (gst_message_get_structure), (gst_message_parse_tag),
3952         (gst_message_parse_state_changed), (gst_message_parse_error),
3953         (gst_message_parse_warning):
3954         * gst/gstmessage.h:
3955         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
3956         (gst_real_pad_set_property), (gst_pad_set_active),
3957         (gst_pad_is_active), (gst_pad_set_blocked_async),
3958         (gst_pad_set_blocked), (gst_pad_is_blocked),
3959         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
3960         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
3961         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
3962         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
3963         (gst_pad_link_filtered), (gst_pad_relink_filtered),
3964         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
3965         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
3966         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
3967         (gst_pad_set_caps), (gst_pad_configure_sink),
3968         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
3969         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
3970         (gst_real_pad_dispose), (gst_real_pad_finalize),
3971         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
3972         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3973         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
3974         * gst/gstpad.h:
3975         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
3976         (pipeline_bus_handler), (gst_pipeline_change_state),
3977         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
3978         * gst/gstpipeline.h:
3979         * gst/gstprobe.h:
3980         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
3981         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
3982         (gst_queue_link_src), (gst_queue_bufferalloc),
3983         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
3984         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
3985         (gst_queue_loop), (gst_queue_handle_src_event),
3986         (gst_queue_handle_src_query), (gst_queue_src_activate),
3987         (gst_queue_change_state):
3988         * gst/gstqueue.h:
3989         * gst/gstscheduler.c: (gst_scheduler_init),
3990         (gst_scheduler_dispose), (gst_scheduler_create_task),
3991         (gst_scheduler_factory_create):
3992         * gst/gstscheduler.h:
3993         * gst/gststructure.c: (gst_structure_get_type),
3994         (gst_structure_copy_conditional):
3995         * gst/gststructure.h:
3996         * gst/gsttaginterface.h:
3997         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
3998         (gst_task_init), (gst_task_dispose), (gst_task_create),
3999         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4000         (gst_task_pause):
4001         * gst/gsttask.h:
4002         * gst/gstthread.c:
4003         * gst/gstthread.h:
4004         * gst/gsttypes.h:
4005         * gst/schedulers/Makefile.am:
4006         * gst/schedulers/cothreads_compat.h:
4007         * gst/schedulers/entryscheduler.c:
4008         * gst/schedulers/faircothreads.c:
4009         * gst/schedulers/faircothreads.h:
4010         * gst/schedulers/fairscheduler.c:
4011         * gst/schedulers/gstbasicscheduler.c:
4012         * gst/schedulers/gstoptimalscheduler.c:
4013         * gst/schedulers/gthread-cothreads.h:
4014         * gst/schedulers/threadscheduler.c:
4015         (gst_thread_scheduler_task_get_type),
4016         (gst_thread_scheduler_task_class_init),
4017         (gst_thread_scheduler_task_init),
4018         (gst_thread_scheduler_task_start),
4019         (gst_thread_scheduler_task_stop),
4020         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4021         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4022         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4023         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4024         (plugin_init):
4025         * libs/gst/Makefile.am:
4026         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4027         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4028         (gst_file_pad_parent_set):
4029         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4030         (gst_dp_event_from_packet):
4031         * tests/complexity.c: (main):
4032         * tests/mass_elements.c: (main):
4033         * testsuite/states/locked.c: (message_received), (main):
4034         * testsuite/states/parent.c: (main):
4035         * tools/gst-inspect.c: (print_element_flag_info),
4036         (print_implementation_info), (print_pad_info):
4037         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4038         (main):
4039         * tools/gst-md5sum.c: (event_loop), (main):
4040         * tools/gst-typefind.c: (main):
4041         * tools/gst-xmlinspect.c: (print_element_info):
4042         Next big merge.
4043         Added GstBus for mainloop integration.
4044         Added GstMessage for sending notifications on the bus.
4045         Added GstTask as an abstraction for pipeline entry points.
4046         Removed GstThread.
4047         Removed Schedulers.
4048         Simplified GstQueue for multithreaded core.
4049         Made _link threadsafe, removed old capsnego.
4050         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4051         Added pad blocking functions.
4052         Reworked scheduling functions in GstPad to prepare for
4053         scheduling updates soon.
4054         Moved events out of data stream.
4055         Simplified GstEvent types.
4056         Added return values to push/pull.
4057         Removed clocking from GstElement.
4058         Added prototypes for state change function for next merge.
4059         Removed iterate from bins and state change management.
4060         Fixed some elements, disabled others for now.
4061         Fixed -inspect and -launch.
4062         Added check for GstBus.
4063
4064 2005-03-10  Wim Taymans  <wim@fluendo.com>
4065
4066         * docs/design/part-MT-refcounting.txt:
4067         * docs/design/part-clocks.txt:
4068         * docs/design/part-gstelement.txt:
4069         * docs/design/part-gstobject.txt:
4070         * docs/design/part-standards.txt:
4071         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4072         (gst_bin_remove_func), (gst_bin_remove):
4073         * gst/gstbin.h:
4074         * gst/gstbuffer.c:
4075         * gst/gstcaps.h:
4076         * testsuite/clock/clock1.c: (main):
4077         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4078         (main):
4079         * testsuite/dlopen/loadgst.c: (do_test):
4080         * testsuite/refcounting/bin.c: (add_remove_test1),
4081         (add_remove_test2), (main):
4082         * testsuite/refcounting/element.c: (main):
4083         * testsuite/refcounting/element_pad.c: (main):
4084         * testsuite/refcounting/pad.c: (main):
4085         * tools/gst-launch.c: (sigint_handler_sighandler):
4086         * tools/gst-typefind.c: (main):
4087         Doc updates.
4088         Added doc about clock.
4089         removed gst_bin_iterate_recurse_up(), marked methods
4090         for removal.
4091         Fix more testsuites.
4092
4093 2005-03-09  Wim Taymans  <wim@fluendo.com>
4094
4095         * gst/gstpad.c: (gst_pad_get_direction),
4096         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4097         (gst_pad_collect_valist):
4098         * testsuite/bins/interface.c: (main):
4099         * testsuite/caps/audioscale.c: (test_caps):
4100         * testsuite/caps/caps.c: (test1), (test2), (test3):
4101         * testsuite/caps/deserialize.c: (main):
4102         * testsuite/caps/enumcaps.c: (main):
4103         * testsuite/caps/filtercaps.c: (main):
4104         * testsuite/caps/intersect2.c: (main):
4105         * testsuite/caps/random.c: (main):
4106         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4107         * testsuite/caps/sets.c: (check_caps):
4108         * testsuite/caps/simplify.c: (check_caps), (main):
4109         * testsuite/caps/subtract.c: (check_caps):
4110         Fix _pad_get_direction wrt ghostpads.
4111         Fix caps testsuite.
4112
4113 2005-03-09  Wim Taymans  <wim@fluendo.com>
4114
4115         * check/Makefile.am:
4116         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4117         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4118         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4119         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4120         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4121         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4122         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4123         (bin_element_is_sink), (gst_bin_iterate_sinks),
4124         (gst_bin_iterate_all_by_interface):
4125         * gst/gstbin.h:
4126         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4127         (gst_element_change_state), (gst_element_dispose),
4128         (gst_element_finalize), (gst_element_set_loop_function):
4129         * gst/gstelement.h:
4130         * gst/gstiterator.c: (find_custom_fold_func):
4131         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4132         (gst_pad_collectv), (gst_pad_collect_valist),
4133         (gst_pad_template_new):
4134         * gst/gstpipeline.c: (gst_pipeline_class_init),
4135         (gst_pipeline_dispose), (gst_pipeline_set_property),
4136         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4137         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4138         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4139         * gst/gstutils.h:
4140         * gst/schedulers/entryscheduler.c:
4141         * gst/schedulers/gstbasicscheduler.c:
4142         (gst_basic_scheduler_cothreaded_chain),
4143         (gst_basic_scheduler_chain_add_element):
4144         * testsuite/bins/interface.c: (main):
4145         Added GstBin test.
4146         Added GstSystemClock test.
4147         Implemented clock distribution code in GstBin.
4148         Implemented iterate sinks method for future use.
4149         Rearranged gstelement.h
4150         Fix GstIterator comparison bug.
4151         Moved some code to GstPipeline, mostly clocking related.
4152
4153 2005-03-09  Wim Taymans  <wim@fluendo.com>
4154
4155         * configure.ac:
4156         * gst/gst_private.h:
4157         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4158         (gst_bin_remove_func), (gst_bin_remove),
4159         (gst_bin_get_by_name_recurse_up):
4160         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4161         (gst_clock_id_compare_func), (gst_clock_id_wait),
4162         (gst_clock_id_wait_async), (gst_clock_init),
4163         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4164         * gst/gstelement.h:
4165         * gst/gstinfo.c: (_gst_debug_init):
4166         * gst/gstobject.h:
4167         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4168         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4169         * gst/gstpad.h:
4170         Bump version number, we're now 0.9.0
4171         Add future debugging category.
4172         Fix NULL _unref() in _get_by_name_recurse_up
4173         Rearrange gstpad.h.
4174         Update some docs.
4175
4176 2005-03-08  Wim Taymans  <wim@fluendo.com>
4177
4178         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4179         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4180         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4181         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4182         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4183         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4184         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4185         * gst/elements/gstidentity.c: (gst_identity_class_init):
4186         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4187         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4188         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4189         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4190         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4191         (gst_tee_link):
4192         * gst/gstelement.c: (gst_element_class_init),
4193         (gst_element_base_class_init), (gst_element_init),
4194         (gst_element_get_random_pad), (gst_element_wait_state_change),
4195         (gst_element_change_state), (gst_element_dispose),
4196         (gst_element_finalize), (gst_element_set_loop_function):
4197         * gst/gstelement.h:
4198         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4199         * gst/gstthread.c: (gst_thread_class_init),
4200         (gst_thread_release_children_locks), (gst_thread_change_state):
4201         * gst/schedulers/gstbasicscheduler.c:
4202         (gst_basic_scheduler_loopfunc_wrapper),
4203         (gst_basic_scheduler_chain_wrapper),
4204         (gst_basic_scheduler_src_wrapper),
4205         (gst_basic_scheduler_remove_element):
4206         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4207         Remove threadsafe properties. Fix elements because GObject
4208         complains when installing a property before declaring a
4209         set/get_property handler.
4210         Rearrange gstelement.h file, use STATE macros for state locks.
4211         Free mutexes in the finalize method instead of dispose.
4212
4213 2005-03-08  Wim Taymans  <wim@fluendo.com>
4214
4215         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4216         * gst/gstthread.c: (gst_thread_release_children_locks):
4217         Added parentage check.
4218         Fix build og GstThread again.
4219
4220 2005-03-08  Wim Taymans  <wim@fluendo.com>
4221
4222         * docs/design/part-MT-refcounting.txt:
4223         * docs/design/part-conventions.txt:
4224         * docs/design/part-gstobject.txt:
4225         * docs/design/part-relations.txt:
4226         * docs/design/part-standards.txt:
4227         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4228         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4229         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4230         (gst_bin_iterate_all_by_interface):
4231         * gst/gstbuffer.h:
4232         * gst/gstclock.h:
4233         * gst/gstelement.c: (gst_element_class_init),
4234         (gst_element_change_state), (gst_element_set_loop_function):
4235         * gst/gstelement.h:
4236         * gst/gstiterator.c:
4237         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4238         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4239         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4240         (gst_object_set_parent), (gst_object_unparent),
4241         (gst_object_check_uniqueness):
4242         * gst/gstobject.h:
4243         Docs updates, clean up some headers.
4244
4245 2005-03-07  Wim Taymans  <wim@fluendo.com>
4246
4247         * check/.cvsignore:
4248         * check/Makefile.am:
4249         * check/gst-libs/.cvsignore:
4250         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4251         * check/gst/.cvsignore:
4252         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4253         (START_TEST), (gstbus_suite), (main):
4254         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4255         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4256         (gst_data_suite), (main):
4257         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4258         (add_fold_func), (gstiterator_suite), (main):
4259         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4260         (thread_name_object), (thread_name_object_default),
4261         (gst_object_name_compare), (gst_object_suite), (main):
4262         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4263         (gst_pad_suite), (main):
4264         * check/gstcheck.c: (gst_check_log_message_func),
4265         (gst_check_log_critical_func), (gst_check_init):
4266         * check/gstcheck.h:
4267         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4268         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4269         Added checks.
4270
4271 2005-03-07  Wim Taymans  <wim@fluendo.com>
4272
4273         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4274         (gst_list_iterator_next), (gst_list_iterator_resync),
4275         (gst_list_iterator_free), (gst_iterator_new_list),
4276         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4277         (gst_iterator_free), (gst_iterator_push), (filter_next),
4278         (filter_resync), (filter_uninit), (filter_free),
4279         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4280         (gst_iterator_foreach), (find_custom_fold_func),
4281         (gst_iterator_find_custom):
4282         * gst/gstiterator.h:
4283         Added missing files.
4284
4285 2005-03-07  Wim Taymans  <wim@fluendo.com>
4286
4287         * Makefile.am:
4288         * configure.ac:
4289         * docs/design/part-MT-refcounting.txt:
4290         * docs/design/part-conventions.txt:
4291         * docs/design/part-gstobject.txt:
4292         * docs/design/part-relations.txt:
4293         * examples/mixer/mixer.c: (main):
4294         * examples/thread/thread.c: (eos), (main):
4295         * gst/Makefile.am:
4296         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4297         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4298         (gst_spider_plug_from_srcpad):
4299         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4300         (gst_spider_identity_change_state),
4301         (gst_spider_identity_sink_loop_type_finding):
4302         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4303         * gst/elements/gstidentity.c: (gst_identity_init):
4304         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4305         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4306         * gst/elements/gsttypefindelement.c: (free_entry):
4307         * gst/gst.c:
4308         * gst/gst.h:
4309         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4310         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4311         (gst_bin_set_index), (gst_bin_set_element_sched),
4312         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4313         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4314         (gst_bin_iterate_elements), (iterate_child_recurse),
4315         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4316         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4317         (compare_interface), (gst_bin_get_by_interface),
4318         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4319         * gst/gstbin.h:
4320         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4321         (gst_buffer_default_free), (gst_buffer_default_copy),
4322         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4323         (gst_buffer_create_sub):
4324         * gst/gstbuffer.h:
4325         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4326         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4327         (gst_caps_unref), (gst_static_caps_get),
4328         (gst_caps_remove_and_get_structure), (gst_caps_append),
4329         (gst_caps_append_structure), (gst_caps_remove_structure),
4330         (gst_caps_copy_nth), (gst_caps_set_simple),
4331         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4332         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4333         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4334         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4335         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4336         (gst_caps_structure_figure_out_union),
4337         (gst_caps_switch_structures), (gst_caps_do_simplify),
4338         (gst_caps_replace), (gst_caps_from_string),
4339         (gst_caps_copy_conditional):
4340         * gst/gstcaps.h:
4341         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4342         (_gst_clock_id_free), (gst_clock_id_unref),
4343         (gst_clock_id_compare_func), (gst_clock_id_wait),
4344         (gst_clock_id_wait_async), (gst_clock_class_init),
4345         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4346         (gst_clock_get_time), (gst_clock_set_time_adjust),
4347         (gst_clock_set_property), (gst_clock_get_property):
4348         * gst/gstclock.h:
4349         * gst/gstcompat.h:
4350         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4351         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4352         * gst/gstdata.h:
4353         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4354         (gst_element_requires_clock), (gst_element_provides_clock),
4355         (gst_element_set_clock), (gst_element_clock_wait),
4356         (gst_element_wait), (gst_element_set_time_delay),
4357         (gst_element_is_indexable), (gst_element_add_pad),
4358         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4359         (pad_compare_name), (gst_element_get_static_pad),
4360         (gst_element_request_pad), (gst_element_get_request_pad),
4361         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4362         (gst_element_class_get_pad_template_list),
4363         (gst_element_class_get_pad_template), (gst_element_error_func),
4364         (gst_element_get_random_pad), (gst_element_get_event_masks),
4365         (gst_element_send_event), (gst_element_seek),
4366         (gst_element_get_query_types), (gst_element_query),
4367         (gst_element_get_formats), (gst_element_convert),
4368         (gst_element_is_locked_state), (gst_element_set_locked_state),
4369         (gst_element_sync_state_with_parent), (gst_element_change_state),
4370         (gst_element_finalize), (gst_element_yield),
4371         (gst_element_interrupt), (gst_element_set_scheduler),
4372         (gst_element_get_scheduler), (gst_element_set_loop_function):
4373         * gst/gstelement.h:
4374         * gst/gstevent.h:
4375         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4376         (gst_format_get_by_nick), (gst_format_get_details),
4377         (gst_format_iterate_definitions):
4378         * gst/gstformat.h:
4379         * gst/gstindex.c: (gst_index_gtype_resolver):
4380         * gst/gstinfo.c:
4381         * gst/gstinfo.h:
4382         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4383         (gst_mem_chunk_free):
4384         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4385         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4386         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4387         (gst_object_dispatch_properties_changed),
4388         (gst_object_set_name_default), (gst_object_set_name),
4389         (gst_object_get_name), (gst_object_set_name_prefix),
4390         (gst_object_get_name_prefix), (gst_object_set_parent),
4391         (gst_object_get_parent), (gst_object_unparent),
4392         (gst_object_check_uniqueness), (gst_object_save_thyself),
4393         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4394         (gst_object_set_property), (gst_object_get_property),
4395         (gst_object_get_path_string):
4396         * gst/gstobject.h:
4397         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4398         (gst_real_pad_init), (gst_real_pad_get_property),
4399         (gst_pad_custom_new), (gst_pad_get_direction),
4400         (gst_pad_set_active), (gst_pad_is_active),
4401         (gst_pad_set_event_function), (gst_pad_is_linked),
4402         (gst_pad_link_free), (gst_pad_link_intersect),
4403         (gst_pad_link_fixate), (gst_pad_set_caps),
4404         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4405         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4406         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4407         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4408         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4409         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4410         (gst_pad_realize), (gst_pad_get_allowed_caps),
4411         (gst_real_pad_dispose), (gst_real_pad_finalize),
4412         (gst_pad_collectv), (gst_pad_collect_valist),
4413         (gst_pad_template_dispose), (gst_pad_template_new),
4414         (gst_pad_get_internal_links):
4415         * gst/gstpad.h:
4416         * gst/gstpipeline.c: (gst_pipeline_dispose),
4417         (gst_pipeline_change_state):
4418         * gst/gstpipeline.h:
4419         * gst/gstplugin.c:
4420         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4421         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4422         * gst/gstpluginfeature.h:
4423         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4424         * gst/gstquery.c: (_gst_query_type_initialize),
4425         (gst_query_type_register), (gst_query_type_get_by_nick),
4426         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4427         * gst/gstquery.h:
4428         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4429         * gst/gstscheduler.c: (gst_scheduler_add_element),
4430         (gst_scheduler_factory_create):
4431         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4432         (gst_structure_free), (gst_structure_set_name),
4433         (gst_structure_id_set_value), (gst_structure_set_value),
4434         (gst_structure_set_valist), (gst_structure_remove_field),
4435         (gst_structure_remove_fields),
4436         (gst_structure_remove_fields_valist),
4437         (gst_structure_remove_all_fields), (gst_structure_foreach),
4438         (gst_structure_map_in_place),
4439         (gst_caps_structure_fixate_field_nearest_int),
4440         (gst_caps_structure_fixate_field_nearest_double):
4441         * gst/gststructure.h:
4442         * gst/gstsystemclock.c: (gst_system_clock_class_init),
4443         (gst_system_clock_init), (gst_system_clock_dispose),
4444         (gst_system_clock_async_thread),
4445         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
4446         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
4447         * gst/gstsystemclock.h:
4448         * gst/gsttag.c: (gst_tag_list_add_value_internal),
4449         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
4450         * gst/gsttaginterface.c:
4451         * gst/gstthread.c: (gst_thread_dispose),
4452         (gst_thread_release_children_locks), (gst_thread_change_state),
4453         (gst_thread_main_loop):
4454         * gst/gsttrashstack.h:
4455         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
4456         * gst/gsttypes.h:
4457         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4458         (gst_element_request_pad), (gst_element_get_pad_from_template),
4459         (gst_element_request_compatible_pad),
4460         (gst_element_get_compatible_pad_filtered),
4461         (gst_element_get_compatible_pad), (gst_element_state_get_name),
4462         (gst_element_link_pads_filtered), (gst_element_link_filtered),
4463         (gst_element_link_many), (gst_element_link),
4464         (gst_element_link_pads), (gst_element_unlink_pads),
4465         (gst_element_unlink_many), (gst_element_unlink),
4466         (gst_pad_can_link_filtered), (gst_pad_can_link),
4467         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
4468         (gst_object_default_error), (gst_bin_add_many),
4469         (gst_bin_remove_many), (gst_element_populate_std_props),
4470         (gst_element_class_install_std_props), (gst_buffer_merge),
4471         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
4472         (link_fold_func), (gst_pad_proxy_setcaps):
4473         * gst/gstutils.h:
4474         * gst/gstvalue.c: (gst_value_deserialize_string):
4475         * gst/parse/grammar.y:
4476         * gst/schedulers/gstbasicscheduler.c:
4477         (gst_basic_scheduler_cothreaded_chain),
4478         (gst_basic_scheduler_chain_recursive_add),
4479         (gst_basic_scheduler_pad_link):
4480         * gst/schedulers/gstoptimalscheduler.c:
4481         (get_group_schedule_function),
4482         (gst_opt_scheduler_state_transition),
4483         (gst_opt_scheduler_add_element), (element_get_reachables_func):
4484         * libs/gst/bytestream/bytestream.c:
4485         * libs/gst/dataprotocol/dataprotocol.c:
4486         (gst_dp_header_from_buffer):
4487         * po/nb.po:
4488         * po/ru.po:
4489         * tests/threadstate/threadstate2.c: (eos):
4490         * tools/gst-compprep.c: (main):
4491         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
4492         (print_pad_info), (print_children_info):
4493         * tools/gst-launch.c: (idle_func), (main):
4494         * tools/gst-md5sum.c: (idle_func), (main):
4495         * tools/gst-xmlinspect.c: (print_element_info):
4496         First THREADED backport attempt, focusing on adding locks and
4497         making sure the API is threadsafe. Needs more work. More docs
4498         follow this week.
4499
4500 2005-02-24  Andy Wingo  <wingo@pobox.com>
4501
4502         * tests/bench-complexity.scm:
4503         * tests/complexity.gnuplot: New files, good for running complexity
4504         benchmarks.
4505
4506         * tests/Makefile.am:
4507         * tests/complexity.c: New test, sets up N elements, at each level
4508         teeing into M streams per element. Eeeenteresting.
4509
4510         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
4511         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
4512         running bench-mass_elements.scm.
4513
4514         * tests/bench-mass_elements.scm: New script, runs mass_elements
4515         for various numbers of identities, outputting the results to a
4516         file. Requires guile 1.6. Just for testing.
4517
4518 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4519
4520         * gst/schedulers/fairscheduler.c:
4521           compile with debug disabled
4522
4523 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
4524
4525         * configure.ac:
4526           hunting season on 0.9 is now OPEN
4527
4528 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
4529
4530         * docs/libs/tmpl/gstcontrol.sgml:
4531         * docs/libs/tmpl/gstdparam.sgml:
4532         * docs/libs/tmpl/gstdplinint.sgml:
4533         * docs/libs/tmpl/gstdpman.sgml:
4534         * docs/libs/tmpl/gstdpsmooth.sgml:
4535         * docs/libs/tmpl/gstunitconvert.sgml:
4536           more docs for the state of dparams
4537
4538 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4539
4540         * gst/gstelementfactory.c: (gst_element_factory_create):
4541         * gst/gstobject.c: (gst_object_init),
4542         (gst_object_set_name_default), (gst_object_set_name):
4543           name objects by default, not in gst_element_factory_create. Allows
4544           using elements created with g_object_new. (fixes #167283)
4545
4546 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4547
4548         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
4549           make the time that debugging functions print relative to when
4550           gst_init was called
4551
4552 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
4553
4554         * gst/gsttaginterface.c:
4555           Fix inline docs: tag setter vararg functions are NULL-terminated,
4556           GST_TAG_INVALID doesn't exist any more.
4557
4558 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4559
4560         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
4561         Allocate the 1 byte more memory that was forgotten!!!!!
4562         fixes memory corruption on 64bit platforms
4563
4564 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
4565
4566         * docs/pwg/building-pads.xml:
4567         * docs/pwg/intro-basics.xml:
4568           fixed a few typos, relabeled introductionary list of types
4569         * docs/random/ensonic/dparams.txt:
4570           more notes abut dparam changes
4571         * libs/gst/control/dparam.c: (gst_dparam_attach):
4572         * libs/gst/control/dparammanager.c:
4573         * libs/gst/control/dparammanager.h:
4574           - many comments and notes on dparam implementation
4575           - new dparams are were not initialized to the default value
4576             from param spec
4577
4578 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
4579
4580         submitted by: Peter Astakhov
4581
4582         * po/LINGUAS:
4583         * po/ru.po:
4584           adding Russian translation
4585
4586 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4587
4588         * configure.ac:
4589         * docs/gst/Makefile.am:
4590         * docs/libs/Makefile.am:
4591           make sure popt is added to gtk-doc flags.  Fixes #147782.
4592
4593 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
4594
4595         * docs/faq/using.xml:
4596           Fix typo in FAQ (artssink => artsdsink)
4597
4598 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4599
4600         * tools/gst-launch.1.in:
4601           Fix typo (#166699).
4602
4603 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
4604
4605         * docs/faq/using.xml:
4606           Add -v argument to fakesrc/fakesink gst-launch line,
4607           so that the promised output will actually show up.
4608
4609 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4610
4611         * gst/gstthread.c: (gst_thread_change_state):
4612           Implement state-change error handling (#166073).
4613
4614 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4615
4616         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4617           Release interrupt after handling (#166250).
4618
4619 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4620
4621         * configure.ac:
4622           back to HEAD
4623
4624 === release 0.8.9 ===
4625
4626 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4627
4628         * NEWS:
4629         * RELEASE:
4630         * configure.ac:
4631           releasing 0.8.9, "Like Eating Glass"
4632
4633 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4634
4635         submitted by: Clytie Siddall
4636
4637         * po/vi.po: Added Vietnamese translation
4638
4639 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4640
4641         patch by: Tim Philipp-Müller
4642
4643         * configure.ac:
4644         * gst/gstpad.c:
4645           unref data when probe function returns FALSE.  Fixes #166362
4646
4647 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4648
4649         * gst/gst.c: (gst_init_get_popt_table):
4650           Fix typo (#166269).
4651
4652 2005-02-04  Andy Wingo  <wingo@pobox.com>
4653
4654         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
4655         the debugging on whether the caps are compatible.
4656
4657 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4658
4659         * docs/manual/basics-elements.xml:
4660           Fix two typos.
4661
4662 2005-02-02  Wim Taymans  <wim@fluendo.com>
4663
4664         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
4665         (schedule_chain), (get_invalid_call), (chain_invalid_call),
4666         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
4667         Remove some FIXMEs after analysing and commenting why they
4668         are not issues.
4669
4670 2005-02-02  Wim Taymans  <wim@fluendo.com>
4671
4672         * gst/schedulers/gstoptimalscheduler.c:
4673         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
4674         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
4675         (get_invalid_call), (chain_invalid_call),
4676         (get_group_schedule_function), (loop_group_schedule_function),
4677         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
4678         (gst_opt_scheduler_state_transition),
4679         (gst_opt_scheduler_add_element),
4680         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
4681         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
4682         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
4683         (gst_opt_scheduler_show):
4684         Added lock to protect scheduler data structures.
4685
4686 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4687
4688         * testsuite/threads/threadi.c: (cb_data):
4689           Fix buglet in test.
4690
4691 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4692
4693         * testsuite/threads/Makefile.am:
4694         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
4695           On Wim's request, split the test in three separately-compiled
4696           tests that each test a very specific bug. Two of them still fail,
4697           will create bugs for those. threadi.c indicates why they fail.
4698
4699 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4700
4701         * gst/schedulers/gstoptimalscheduler.c:
4702         (get_group_schedule_function):
4703           Try to work with the threading mess that queue_link is.
4704
4705 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4706
4707         * gst/gstbin.c: (gst_bin_remove_func):
4708           Explicitely make an element release locks in a group when being
4709           remove from a bin.
4710         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4711           If there's no scheduler, always return immediately (similar to
4712           gst_element_interrupt).
4713
4714 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4715
4716         * gst/gstbin.c: (gst_bin_child_state_change_func):
4717           Remove a piece of code that could never be reached.
4718         * docs/gst/gstreamer-sections.txt:
4719         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
4720         (gst_pad_call_get_function):
4721         * gst/gstpad.h:
4722         * testsuite/pad/Makefile.am:
4723           Fix #150546, enable tests.
4724
4725 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4726
4727         * docs/pwg/advanced-types.xml:
4728           Fix description for buffer-frames=0.
4729         * docs/gst/tmpl/gstbin.sgml:
4730         * gst/gstbin.c: (gst_bin_child_state_change_func),
4731         (gst_bin_change_state), (gst_bin_change_state_norecurse):
4732         * gst/gstbin.h:
4733         * testsuite/threads/Makefile.am:
4734         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
4735         (cb_state), (cb_play), (main):
4736           Fix non-recursive state changes to *really* change the state
4737           of the object, and not just call parent_class->state_change.
4738           Fix a lot of lockups caused by this. Fixes #132775. Add test
4739           for the problem. Also enable test to show #142588 (fixed).
4740         * gst/gstthread.c: (gst_thread_change_state),
4741         (gst_thread_child_state_change):
4742           Don't exit the thread if we go to NULL and are inside thread
4743           context. Instead, return control to the main thread context
4744           and exit from there.
4745         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
4746           Don't unset virtual functions, since those may still be used.
4747           That's not necessarily correct, but suffices for now.
4748         * configure.ac:
4749         * testsuite/Makefile.am:
4750         * testsuite/pad/Makefile.am:
4751         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
4752         (gst_test_sink_base_init), (gst_test_sink_chain),
4753         (gst_test_sink_init), (main):
4754         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
4755         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
4756         (main):
4757         * testsuite/pad/link.c: (gst_test_element_class_init),
4758         (gst_test_element_base_init), (gst_test_src_get),
4759         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
4760         (gst_test_filter_loop), (gst_test_filter_init),
4761         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
4762         (cb_error), (main):
4763           Add tests to show #150546. Pass, but should fail (currently
4764           disabled from the testsuite).
4765         * gst/gstscheduler.c: (gst_scheduler_dispose):
4766           Dereference child schedulers on dispose (#94464).
4767         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
4768           Fix typo.
4769         * testsuite/threads/thread.c: (main):
4770           Add more debug.
4771
4772 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4773
4774         * gst/gstpad.c: (gst_pad_push):
4775           Oops, revert previous commit, broke testsuite...
4776
4777 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4778
4779         * gst/gstpad.c: (gst_pad_push):
4780           Add check that the pad on which the push is performed is not a
4781           get-based pad (#150546).
4782
4783 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4784
4785         * gst/elements/gsttypefindelement.c:
4786         (gst_type_find_element_handle_event):
4787           Fix buffer pushing if stream EOSes during typefinding.
4788
4789 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
4790
4791         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4792
4793         * gst/gstvalue.c: (gst_string_wrap):
4794           Allow NULL-strings as argument (#165365).
4795
4796 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
4797
4798         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4799
4800         * gst/schedulers/faircothreads.c:
4801         (gst_fair_scheduler_cothread_queue_show):
4802           Fix build without debug enabled.
4803
4804 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
4805
4806         * docs/gst/gstreamer-sections.txt:
4807         * docs/libs/gstreamer-libs-docs.sgml:
4808         * docs/libs/gstreamer-libs-sections.txt:
4809         * docs/libs/tmpl/gstcontrol.sgml:
4810         * docs/libs/tmpl/gstdparam.sgml:
4811         * docs/libs/tmpl/gstdplinint.sgml:
4812         * docs/libs/tmpl/gstdpman.sgml:
4813         * docs/libs/tmpl/gstdpsmooth.sgml:
4814         * docs/libs/tmpl/gstputbits.sgml:
4815         * docs/libs/tmpl/gstunitconvert.sgml:
4816         * libs/gst/control/dparam.c:
4817         * libs/gst/control/dparam.h:
4818         * libs/gst/control/dparammanager.c:
4819         (gst_dpman_add_required_dparam_callback),
4820         (gst_dpman_add_required_dparam_direct),
4821         (gst_dpman_add_required_dparam_array),
4822         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
4823         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
4824         (gst_dpman_get_manager)
4825           restructured DParam docs
4826
4827 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
4828
4829         * gst-element-check.m4:
4830           Only check for gst-inspect if we haven't already
4831           found it in previous element check runs
4832
4833 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
4834
4835         * docs/gst/Makefile.am:
4836         * docs/libs/Makefile.am:
4837           fixed install rules to treat style.css as optional
4838
4839 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
4840
4841         * docs/gst/Makefile.am:
4842         * docs/libs/Makefile.am:
4843           install style.css along with docs
4844         * docs/gst/tmpl/gstbin.sgml:
4845         * docs/gst/tmpl/gstclock.sgml:
4846         * docs/gst/tmpl/gstdata.sgml:
4847         * docs/gst/tmpl/gstelement.sgml:
4848         * gst/gstbin.h:
4849         * gst/gstelement.c: (gst_element_class_init):
4850         * gst/gstelement.h:
4851           fixing incomplete docs
4852
4853 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
4854
4855         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4856           Don't unref seek event twice when fflush() fails
4857           
4858 2005-01-22  David Schleef  <ds@schleef.org>
4859
4860         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
4861
4862 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
4863
4864         * docs/gst/Makefile.am:
4865         * docs/libs/Makefile.am:
4866           added params for deprecation guards
4867         * gst/gst.c:
4868         * gst/gst.h:
4869         * gst/gsterror.c: (_gst_resource_errors_init),
4870         (_gst_stream_errors_init):
4871         * gst/gsterror.h:
4872           documented some more enums
4873
4874 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
4875         * gst/autoplug/gstspideridentity.c:
4876         Cosmetic fix - spider_find_peek should be static
4877         * gst/parse/parse.l:
4878         Applying fix for #164261
4879
4880 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
4881
4882         * docs/gst/gstreamer-sections.txt:
4883         * docs/gst/tmpl/gstplugin.sgml:
4884         * docs/libs/gstreamer-libs-sections.txt:
4885         * docs/libs/tmpl/gstcontrol.sgml:
4886         * gst/gstbuffer.h:
4887         * gst/gsttag.h:
4888         * gst/gstvalue.c:
4889           added docs for the TAG defines
4890
4891 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4892
4893         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4894           Only unref entry if there is an entry.
4895
4896 2005-01-17  Wim Taymans  <wim@fluendo.com>
4897
4898         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4899         (remove_from_group), (schedule_group), (normalize_group),
4900         (gst_opt_scheduler_iterate):
4901         Also ref/unref decoupled elements before iterating the
4902         group since they are not added to the list of elements.
4903
4904 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4905
4906         * docs/manual/highlevel-components.xml:
4907           Add subtitle/streamselection as new features to playbin.
4908
4909 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4910
4911         * docs/manual/manual.xml:
4912           Re-enable dataaccess docs (oops).
4913
4914 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4915
4916         * docs/pwg/advanced-types.xml:
4917         * docs/random/mimetypes:
4918           Add documentation on libsndfile types (#163309), by Steve Baker
4919           <steve@stevebaker.org>.
4920         * gst/gstelement.c: (gst_element_release_request_pad):
4921           If an element has no explicit function, just remove the pad.
4922
4923 2005-01-17  Luca Ognibene  <luogni@tin.it>
4924
4925         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4926
4927         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
4928           Fix memleak (#163801).
4929
4930 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4931
4932         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
4933           I think this is actually more correct...
4934
4935 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4936
4937         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4938           Another workaround for memory access while destroyed in callback.
4939           Please, someone with refcount knowledge, have a look at this.
4940
4941 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4942
4943         * docs/faq/faq.xml:
4944         * docs/faq/legal.xml:
4945           move the legal Q&A here
4946
4947 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4948
4949         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
4950         (gst_tee_request_new_pad):
4951           Fix negotiation.
4952
4953 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4954
4955         * docs/random/omega/caps2:
4956         * testsuite/caps/caps_strings:
4957           replace framerate aproximations by their real value
4958           (24000/1001, 30000/1001, 60000/1001)
4959           Partially fixes bug #164049
4960
4961 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4962
4963         * docs/gst/Makefile.am:
4964           don't fail on the stupid GstPoptOption
4965
4966 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4967
4968         * gst/gstpad.h:
4969         * gst/gstprobe.c:
4970           allow probes to work on ghost pads by realizing the pad
4971           probe debugging
4972
4973 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4974
4975         * docs/gst/gstreamer-sections.txt:
4976         * docs/gst/tmpl/gstpad.sgml:
4977         * gst/gstpad.c: (gst_pad_set_active_recursive):
4978         * gst/gstpad.h:
4979           Add gst_pad_set_active_recursive().
4980
4981 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4982
4983         * docs/random/release:
4984           updates
4985         * gst/gst_private.h:
4986         * gst/gstinfo.c:
4987         * gst/gstobject.c:
4988           move deep_notify logging to a new category
4989         * gst/gstprobe.c:
4990         * gst/gstprobe.h:
4991           add stuff so bindings can wrap probes
4992
4993 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
4994
4995         * gst/gstplugin.c: (gst_plugin_load):
4996           Fix plugin loading if plugin/lib was already loaded. Fixes
4997           #163383
4998
4999 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5000
5001         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5002
5003         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5004           Protect plugin loading by a mutex so it's threadsafe. Fixes
5005           #163234.
5006
5007 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5008
5009         * gst/gstevent.c: (_gst_event_copy):
5010           Reference source object when copying events, since it'll be
5011           dereferenced on event dereferencing as well.
5012
5013 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5014
5015         * docs/gst/gstreamer-sections.txt:
5016         * docs/gst/tmpl/gstevent.sgml:
5017         * gst/gstevent.c: (gst_event_new_filler_stamped),
5018         (gst_event_filler_get_duration):
5019         * gst/gstevent.h:
5020           Add two new functions for filler events (which are used to
5021           synchronize streams if one of them is not having any data
5022           for a while) without interrupting the actual data-stream.
5023           Basically a no-op.
5024         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5025         (gst_queue_link_sink), (gst_queue_link_src),
5026         (gst_queue_change_state):
5027           Allow for renegotiation while filled. Required for stream
5028           switching while playing.
5029
5030 2005-01-08  Benjamin Otte  <otte@gnome.org>
5031
5032         * gst/gstelement.c: (gst_element_link_many):
5033           fix up g_return_if_fail's
5034         * po/LINGUAS:
5035         * po/de.po:
5036           add German translation, that was somehow not included
5037
5038 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5039
5040         * docs/random/mimetypes:
5041           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5042           do not add them to riff-lib as they are not common
5043
5044 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5045
5046         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5047           Check for existence of probe after performing the probe before
5048           re-accessing it to prevent segfaults caused by removal of the
5049           probe in the callback.
5050
5051 2005-01-05  David Schleef  <ds@schleef.org>
5052
5053         * testsuite/registry/Makefile.am:
5054         * testsuite/registry/gst-print-formats.c:
5055         (print_pad_templates_info), (print_element_list),
5056         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5057         (g_list_uniqify), (get_pad_templates_info),
5058         (get_element_mime_list), (print_mime_list), (main): A little
5059         program that looks through the registry to find elements of
5060         a given type.  Not particularly interesting as a test, except
5061         that there's no other test covering the same area.
5062
5063 2005-01-05  David Schleef  <ds@schleef.org>
5064
5065         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5066         (fault_handler_sigaction), (fault_spin),
5067         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5068         in signal.h-type signal handlers by not calling forbidden functions,
5069         including gst_element_set_state().
5070
5071 2005-01-05  David Schleef  <ds@schleef.org>
5072
5073         * gst/gstvalue.h: Mark _gst_reserved[] as private
5074
5075 2005-01-05  David Schleef  <ds@schleef.org>
5076
5077         * gst/gstvalue.c: Fix doc build problem.
5078
5079 2005-01-05  David Schleef  <ds@schleef.org>
5080
5081         * gst/gstvalue.c: Add some documentation
5082
5083 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5084
5085         * docs/README:
5086           another shell oneliner for empty return value docs
5087         * gst/gstcaps.c:
5088         * gst/gstvalue.c:
5089         * libs/gst/control/dparam.c:
5090           more doc fixes (parameters and return values)
5091
5092 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5093
5094         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5095
5096         * gst/gstregistry.h:
5097         * gst/registries/gstxmlregistry.c:
5098           Fix macro's for Mingw (fixes #162276).
5099
5100 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5101
5102         * docs/README:
5103           quick shell oneliner to find undocumented members
5104         * docs/gst/tmpl/gstplugin.sgml:
5105         * docs/gst/tmpl/gstscheduler.sgml:
5106         * docs/gst/tmpl/gstthread.sgml:
5107           more enumtypes cleanup
5108         * gst/gsterror.h:
5109           activated documentation comments, now someone needs to document
5110           the enums :(
5111
5112 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5113
5114         * docs/manual/manual.xml:
5115           Add dataaccess part (doh!).
5116
5117 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5118
5119         * docs/manual/advanced-autoplugging.xml:
5120           Fix typo (intiate -> initiate).
5121
5122 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5123
5124         * docs/random/bbb/streamselection:
5125           Add some notes on how to handle multi-subtitle/-audio streams.
5126
5127 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5128
5129         * docs/gst/gstreamer-docs.sgml:
5130         * docs/gst/gstreamer-sections.txt:
5131         * docs/gst/tmpl/gstenumtypes.sgml:
5132         * docs/gst/tmpl/gsterror.sgml:
5133         * docs/gst/tmpl/gstevent.sgml:
5134         * docs/gst/tmpl/gstpad.sgml:
5135         * docs/gst/tmpl/gstpadtemplate.sgml:
5136         * docs/gst/tmpl/gstthread.sgml:
5137           removed gstenumtypes section from docs and put all the enums into
5138           their sections
5139
5140 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5141
5142         * gst/gstplugin.c:
5143           document gst_library_load a bit more (riff special case + return
5144           value if already loaded)
5145         * testsuite/bytestream/filepadsink.c:
5146           plugin name is 'gstbytestream', not 'bytestream'
5147
5148 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5149
5150         * docs/random/bbb/subtitles:
5151           Add some first mind rumblings on proper subtitle support.
5152
5153 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5154
5155         * po/ca.po:
5156         * po/sv.po:
5157           updated translations
5158
5159 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5160
5161         * docs/manual/advanced-dataaccess.xml:
5162           Add section on how to use fakesrc/fakesink/identity in your
5163           application, plus section on how to embed plugins. Also mention
5164           probes.
5165         * docs/manual/appendix-checklist.xml:
5166         * docs/manual/appendix-debugging.xml:
5167         * docs/manual/appendix-gnome.xml:
5168         * docs/manual/appendix-integration.xml:
5169           Debug -> checklist, GNOME -> integration, add sections on Linux,
5170           KDE integration and add other things useful for application
5171           development.
5172         * docs/manual/manual.xml:
5173           Remove some fixmes, update some file pointers.
5174         * docs/pwg/appendix-checklist.xml:
5175           Fix typo.
5176         * docs/pwg/building-boiler.xml:
5177           Remove ugly header and add commented fixme.
5178         * docs/pwg/pwg.xml:
5179           Add fixme.
5180         * examples/manual/Makefile.am:
5181           Add example for added docs.
5182
5183 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5184
5185         * configure.ac:
5186           back to HEAD
5187
5188 === release 0.8.8 ===
5189
5190 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5191
5192         * NEWS:
5193         * RELEASE:
5194         * configure.ac:
5195           Releasing 0.8.8, "I'll Take Care Of You"
5196
5197 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5198
5199         * configure.ac:
5200           second prerelease
5201
5202 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5203
5204         patch by: Wim Taymans
5205
5206         * gst/gstbin.c:
5207           Fix for #159852 - make iterate emission threadsafe
5208
5209 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5210
5211         * docs/faq/cvs.xml:
5212           notes about new fdo account request
5213
5214 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5215
5216         * docs/gst/gstreamer-docs.sgml:
5217         * docs/gst/tmpl/gstenumtypes.sgml:
5218         * docs/gst/tmpl/gstplugin.sgml:
5219         * docs/libs/gstreamer-libs-docs.sgml:
5220           Added missing short docs. Added ids for navigation.
5221
5222 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5223
5224         * docs/manual/advanced-autoplugging.xml:
5225         * docs/manual/advanced-schedulers.xml:
5226         * docs/manual/advanced-threads.xml:
5227           Rewrites. Remove cothreads, go a bit into opt specifically,
5228           document threads and their gotchas, and do some technical stuff
5229           on autoplugging plus add some working examples. Fixes #157395.
5230         * examples/manual/Makefile.am:
5231           Add typefind/autoplugger example (one that actually works).
5232           Remove queue example since it's a duplicate of the thread one.
5233
5234 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5235
5236         * gst/gstvalue.c: (gst_value_deserialize_string):
5237           use deprecated g_value_set_string_take_ownership to keep compatible
5238           with glib 2.2
5239
5240 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5241
5242         * gst/gstvalue.c: (gst_value_deserialize_string):
5243           revert last patch, only dom a g_utf8_validate now before accepting
5244           the string - caps parsing strips " from strings so we can't rely on
5245           them
5246         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5247           disable a test that tested the above and comment it
5248
5249 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5250
5251         Patch reviewed by David Schleef  <ds@schleef.org>
5252
5253         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5254         bug #153882)
5255         * win32/gstenumtypes.h: same
5256
5257 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5258
5259         * gst/gstpad.c: (gst_pad_query):
5260           Do query on realized pad, similar to how convert/send_event handle
5261           this. Also makes sense, since this pad belongs to the function to
5262           which this query will be sent. Fixes #158163.
5263
5264 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5265
5266         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5267
5268 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5269
5270         * docs/faq/general.xml: fix pipeline to actually work
5271
5272 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5273
5274         * gst/gstvalue.c: (gst_value_deserialize_string):
5275           check that a simple string that gets deserialized does not contain
5276           invalid characters
5277         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5278           remove a test that tested a wring behaviour
5279
5280 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5281
5282         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5283
5284         * docs/manual/intro-motivation.xml:
5285           Fix typos.
5286
5287 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5288
5289         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5290
5291         * docs/gst/tmpl/gstprobe.sgml:
5292           Fix documentation of probe callback - it is supposed to return
5293           FALSE, not TRUE, to remove data from the stream (#159087).
5294
5295 2004-12-16  Daniel Gazard  <dany42@free.fr>
5296
5297         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5298
5299         * gst/gstelementfactory.c: (gst_element_factory_create):
5300           Fix compile failure if compiling without libxml2 support (#149936).
5301
5302 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5303
5304         * docs/manual/advanced-autoplugging.xml:
5305         * docs/manual/highlevel-components.xml:
5306           Move spider from autoplugging to components. Autoplugging is for
5307           internals, not for solutions. ;-).
5308
5309 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5310
5311         * docs/random/ds/0.9-suggested-changes:
5312           Make note on device/location/uri property names.
5313
5314 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5315
5316         * docs/manual/advanced-autoplugging.xml:
5317         * docs/manual/advanced-clocks.xml:
5318         * docs/manual/advanced-interfaces.xml:
5319         * docs/manual/advanced-metadata.xml:
5320         * docs/manual/advanced-position.xml:
5321         * docs/manual/advanced-schedulers.xml:
5322         * docs/manual/advanced-threads.xml:
5323         * docs/manual/appendix-gnome.xml:
5324         * docs/manual/appendix-programs.xml:
5325         * docs/manual/appendix-quotes.xml:
5326         * docs/manual/autoplugging.xml:
5327         * docs/manual/basics-bins.xml:
5328         * docs/manual/basics-data.xml:
5329         * docs/manual/basics-elements.xml:
5330         * docs/manual/basics-helloworld.xml:
5331         * docs/manual/basics-init.xml:
5332         * docs/manual/basics-pads.xml:
5333         * docs/manual/basics-plugins.xml:
5334         * docs/manual/bins-api.xml:
5335         * docs/manual/bins.xml:
5336         * docs/manual/buffers-api.xml:
5337         * docs/manual/buffers.xml:
5338         * docs/manual/clocks.xml:
5339         * docs/manual/components.xml:
5340         * docs/manual/cothreads.xml:
5341         * docs/manual/debugging.xml:
5342         * docs/manual/dparams-app.xml:
5343         * docs/manual/dynamic.xml:
5344         * docs/manual/elements-api.xml:
5345         * docs/manual/elements.xml:
5346         * docs/manual/factories.xml:
5347         * docs/manual/gnome.xml:
5348         * docs/manual/goals.xml:
5349         * docs/manual/helloworld.xml:
5350         * docs/manual/helloworld2.xml:
5351         * docs/manual/highlevel-components.xml:
5352         * docs/manual/highlevel-xml.xml:
5353         * docs/manual/init-api.xml:
5354         * docs/manual/intro-basics.xml:
5355         * docs/manual/intro-motivation.xml:
5356         * docs/manual/intro-preface.xml:
5357         * docs/manual/intro.xml:
5358         * docs/manual/links-api.xml:
5359         * docs/manual/links.xml:
5360         * docs/manual/manual.xml:
5361         * docs/manual/motivation.xml:
5362         * docs/manual/pads-api.xml:
5363         * docs/manual/pads.xml:
5364         * docs/manual/plugins-api.xml:
5365         * docs/manual/plugins.xml:
5366         * docs/manual/programs.xml:
5367         * docs/manual/queues.xml:
5368         * docs/manual/quotes.xml:
5369         * docs/manual/schedulers.xml:
5370         * docs/manual/states-api.xml:
5371         * docs/manual/states.xml:
5372         * docs/manual/threads.xml:
5373         * docs/manual/typedetection.xml:
5374         * docs/manual/win32.xml:
5375         * docs/manual/xml.xml:
5376           Try 2. This time, include a short preface as a "general
5377           introduction", also add code blocks around all code samples
5378           so they get compiled. We still need a way to tell readers
5379           the filename of the code sample. In some cases, don't show
5380           all code in the documentation, but do include it in the generated
5381           code. This allows for focussing on specific bits in the docs,
5382           while still having a full test application available.
5383         * examples/manual/Makefile.am:
5384           Fix up examples for new ADM. Add several of the new examples that
5385           were either added or were missing from the build system.
5386         * examples/manual/extract.pl:
5387           Allow nameless blocks.
5388
5389 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5390
5391         * docs/manual/elements-api.xml:
5392         * docs/manual/helloworld.xml:
5393         * examples/manual/extract.pl:
5394           fix last example.  Add example of adding code blocks that are not
5395           shown in docbook output.
5396
5397 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5398
5399         * docs/manual/dynamic.xml:
5400         * docs/manual/elements-api.xml:
5401         * docs/manual/gnome.xml:
5402         * docs/manual/helloworld2.xml:
5403         * docs/manual/init-api.xml:
5404         * docs/manual/queues.xml:
5405         * docs/manual/threads.xml:
5406         * docs/manual/xml.xml:
5407         * examples/manual/extract.pl:
5408           Make it possible to extract example code from separate blocks.
5409           Should make Ronald happy.
5410
5411 2004-12-15  Wim Taymans  <wim@fluendo.com>
5412
5413         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5414         (remove_from_group), (group_elements_set_visited),
5415         (normalize_group), (gst_opt_scheduler_iterate):
5416         Fix bug where a flag was not updated on a decoupled entry point 
5417         because we were just checking the group element list and decoupled
5418         elements are not in that list..
5419
5420 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5421
5422         * docs/manual/advanced-autoplugging.xml:
5423         * docs/manual/advanced-clocks.xml:
5424         * docs/manual/advanced-dparams.xml:
5425         * docs/manual/advanced-interfaces.xml:
5426         * docs/manual/advanced-metadata.xml:
5427         * docs/manual/advanced-position.xml:
5428         * docs/manual/advanced-schedulers.xml:
5429         * docs/manual/advanced-threads.xml:
5430         * docs/manual/appendix-debugging.xml:
5431         * docs/manual/appendix-gnome.xml:
5432         * docs/manual/appendix-programs.xml:
5433         * docs/manual/appendix-quotes.xml:
5434         * docs/manual/appendix-win32.xml:
5435         * docs/manual/autoplugging.xml:
5436         * docs/manual/basics-bins.xml:
5437         * docs/manual/basics-data.xml:
5438         * docs/manual/basics-elements.xml:
5439         * docs/manual/basics-helloworld.xml:
5440         * docs/manual/basics-init.xml:
5441         * docs/manual/basics-pads.xml:
5442         * docs/manual/basics-plugins.xml:
5443         * docs/manual/bins-api.xml:
5444         * docs/manual/bins.xml:
5445         * docs/manual/buffers-api.xml:
5446         * docs/manual/buffers.xml:
5447         * docs/manual/clocks.xml:
5448         * docs/manual/components.xml:
5449         * docs/manual/cothreads.xml:
5450         * docs/manual/debugging.xml:
5451         * docs/manual/dparams-app.xml:
5452         * docs/manual/dynamic.xml:
5453         * docs/manual/elements-api.xml:
5454         * docs/manual/elements.xml:
5455         * docs/manual/factories.xml:
5456         * docs/manual/gnome.xml:
5457         * docs/manual/goals.xml:
5458         * docs/manual/helloworld.xml:
5459         * docs/manual/helloworld2.xml:
5460         * docs/manual/highlevel-components.xml:
5461         * docs/manual/highlevel-xml.xml:
5462         * docs/manual/init-api.xml:
5463         * docs/manual/intro-motivation.xml:
5464         * docs/manual/intro-preface.xml:
5465         * docs/manual/intro.xml:
5466         * docs/manual/links-api.xml:
5467         * docs/manual/links.xml:
5468         * docs/manual/manual.xml:
5469         * docs/manual/motivation.xml:
5470         * docs/manual/pads-api.xml:
5471         * docs/manual/pads.xml:
5472         * docs/manual/plugins-api.xml:
5473         * docs/manual/plugins.xml:
5474         * docs/manual/programs.xml:
5475         * docs/manual/queues.xml:
5476         * docs/manual/quotes.xml:
5477         * docs/manual/schedulers.xml:
5478         * docs/manual/states-api.xml:
5479         * docs/manual/states.xml:
5480         * docs/manual/threads.xml:
5481         * docs/manual/typedetection.xml:
5482         * docs/manual/win32.xml:
5483         * docs/manual/xml.xml:
5484           First try at rewriting the ADM. Needs lotsamore work, but some
5485           parts might already be somewhat useful.
5486         * docs/pwg/advanced-interfaces.xml:
5487           Remove properties interface, it never actually existed (except for
5488           on my HD...).
5489
5490 2004-12-13  David Schleef  <ds@schleef.org>
5491
5492         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
5493         be NULL (bug #160220).
5494
5495 2004-12-13  David Schleef  <ds@schleef.org>
5496
5497         * configure.ac: remove all mmx stuff, because it's not used.
5498         * docs/random/ds/0.9-suggested-changes: additional notes
5499         * include/Makefile.am: we don't use these anymore
5500         * include/mmx.h: remove
5501         * include/sse.h: remove
5502
5503 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5504
5505         * docs/random/mimetypes:
5506           Add FOURCC code for h264 codec (VSSH)
5507           Add alternate FOURCC codes for h263 related codecs
5508
5509 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
5510
5511         * docs/manual/programs.xml:
5512           Added more gst-launch examples.
5513
5514 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5515
5516         * gst/gstqueue.c: (gst_queue_handle_src_query):
5517           Check for availability again.
5518
5519 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5520
5521         * gst/gstcaps.c: (gst_caps_compare_structures):
5522           Simple caps go first. This has the nice side-effect of fixing an
5523           obscure warning.
5524
5525 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5526
5527         * gst/gstversion.h.in:
5528           Protect header.
5529
5530 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5531
5532         * gst/schedulers/gstoptimalscheduler.c:
5533         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
5534         (gst_opt_scheduler_get_wrapper):
5535           When we're recursing into a chain run, only run the directly
5536           related group, not all queued ones. This will fix a possible
5537           deadlock in chains with more than two groups.
5538
5539 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5540
5541         * autogen.sh:
5542           remove patch if autopoint fails
5543
5544 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5545
5546         * docs/gst/gstreamer-sections.txt:
5547           Document Thomas' addition, fix build, make Luis the sheriff happy.
5548
5549 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5550
5551         * gst/gstplugin.c:
5552         * gst/gstplugin.h:
5553           add accessor for version field
5554
5555 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5556
5557         submitted by: Luca Ferretti <elle.uca@infinito.it>
5558
5559         * po/LINGUAS:
5560         * po/it.po:
5561           New tranlation added: Italian
5562
5563 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5564
5565         * gst/gstpad.c: (gst_pad_is_negotiated),
5566         (gst_pad_get_negotiated_caps):
5567           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
5568           it doesn't actually check the contents), so be sure to hand it
5569           a RealPad else we'll crash.
5570
5571 2004-12-03  Wim Taymans  <wim@fluendo.com>
5572
5573         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5574         (gst_queue_link), (gst_queue_handle_src_query):
5575         Reverted to 1.110 until this makes the testsuite and various
5576         apps work.
5577
5578 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
5579
5580         * docs/upload.mak: fix included CVS conflict strings
5581
5582 2004-12-01  William Jon McCann  <mccann@jhu.edu>
5583
5584         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5585
5586         * gst/gstelement.c: (gst_element_error_full):
5587           Use g_error_new_literal because error text may have
5588           percentage signs in it. Fixes #160019.
5589
5590 2004-12-01  Benjamin Otte  <otte@gnome.org>
5591
5592         * gst/elements/gstbufferstore.c:
5593         (gst_buffer_store_add_buffer_func):
5594           don't try to make subbuffers bigger than they can be. (fixes
5595           #159970)
5596
5597 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5598
5599         * docs/gst/gstreamer-sections.txt:
5600         * docs/gst/tmpl/gstvalue.sgml:
5601           Add new function to docs to fix build.
5602
5603 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5604
5605         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
5606         * gst/gstpad.c: (_gst_pad_default_fixate_value),
5607         (_gst_pad_default_fixate_foreach):
5608         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
5609         * gst/gstvalue.h:
5610           Deprecate _type_is_fixed, use _value_is_fixed instead, since
5611           in some cases (arrays), the fixedness depends on the content.
5612         * gst/gstqueue.c: (gst_queue_handle_src_query):
5613           Check for availability before doing something.
5614
5615 2004-11-29  Wim Taymans  <wim@fluendo.com>
5616
5617         * testsuite/threads/Makefile.am:
5618         * testsuite/threads/signals.c: (gst_test_get_type),
5619         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
5620         (gst_test_set_property), (gst_test_get_property),
5621         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
5622         (gst_test_do_prop), (run_thread), (main):
5623         Added a bunch of testcases that show threadsafety bugs in glib.
5624
5625 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
5626
5627         * docs/manual/programs.xml:
5628           Added a first batch of gst-launch examples, as provided by Ronald
5629           and others from the devel-mlist
5630
5631 2004-11-28  Benjamin Otte  <otte@gnome.org>
5632
5633         * gst/gstelement.c: (gst_element_negotiate_pads):
5634           simplify
5635         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
5636         (gst_value_serialize_string), (gst_value_deserialize_string):
5637           add unwrapping of previously wrapped strings. Fix bug in wrapping
5638           while at it.
5639         * testsuite/caps/value_serialize.c: (test1),
5640         (test_string_serialization), (test_string_deserialization), (main):
5641           add tests for string (de)serialization
5642
5643 2004-11-26  Wim Taymans  <wim@fluendo.com>
5644
5645         * testsuite/threads/159566.c: (object_deep_notify), (main):
5646         * testsuite/threads/Makefile.am:
5647         Added testsuite to show bug #159566
5648
5649 2004-11-25  Wim Taymans  <wim@fluendo.com>
5650
5651         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
5652         (gst_thread_child_state_change), (gst_thread_main_loop):
5653         Ref the thread object in the GThread mainloop. Break out of the
5654         thread mainloop if it holds the last ref. This properly exits
5655         the threads when disposing the thread from its own context. It
5656         also avoids possible deadlocks in the dispose function.
5657
5658 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
5659
5660         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
5661         it is necessary to wait.
5662
5663 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5664
5665         * docs/pwg/building-boiler.xml:
5666           Make description somewhat clearer.
5667
5668 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5669
5670         * docs/upload.mak:
5671           Apparently docs changed location on FDO's server.
5672
5673 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5674
5675         * docs/pwg/appendix-checklist.xml:
5676           Add some random notes on things to check when writing an element.
5677           This list can be extended as people see fit.
5678
5679 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
5680
5681         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
5682         (gst_queue_link_src): Allow for renegotiating the caps of the sink
5683         pad. The queue will now wait until it is empty and forward the new
5684         caps to the source.
5685         * gst/gstbin.c (gst_bin_set_element_sched)
5686         (gst_bin_unset_element_sched): Make sure that all elements and
5687         links are registered and unregistered with the scheduler exactly
5688         once. This elaborates on a fix by Benjamin Otte, but
5689         guarantees that decoupled elements are also registered.
5690
5691 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5692
5693         * docs/manual/quotes.xml:
5694           add a quote
5695         * configure.ac:
5696         * gst/gst.c:
5697         * gst/gstinfo.c:
5698           add LIBDIR and move init message higher up so it's at the start
5699
5700 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5701
5702         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
5703         * gstreamer.spec.in: add fair
5704
5705 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5706
5707         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5708         * gst/elements/gstidentity.c: (gst_identity_class_init):
5709           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
5710           <teuf@gnome.org> (#157263).
5711         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
5712         (gst_type_find_handle_src_query):
5713           Subtract size of internally stored data from position queries.
5714
5715 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
5716
5717         * gst/schedulers/fairscheduler.c:
5718         * gst/schedulers/faircothreads.c:
5719         * gst/schedulers/faircothreads.h:
5720         New cothread based scheduler: Fair scheduler.
5721         * gst/schedulers/gthread-cothreads.h: 
5722         Add the standard #if around the whole file.
5723         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
5724         compilation of the functions defined in this file. This is
5725         necessary to be able to use this file as a normal header.
5726         * gst/schedulers/Makefile.am: Add compiling support for fair
5727         scheduler.
5728         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
5729         scheduler cothreads layer from documentation generation.
5730
5731 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5732
5733         * gst/autoplug/gstspideridentity.c:
5734         (gst_spider_identity_sink_loop_type_finding):
5735           Don't crash if that function is not implemented.
5736
5737 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5738
5739         * docs/pwg/advanced-types.xml:
5740           Another typo.
5741
5742 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5743
5744         * docs/pwg/intro-preface.xml:
5745           Hm, ok, so the brackets weren't really useful...
5746         * docs/pwg/other-ntoone.xml:
5747           Fix embarassing typo.
5748
5749 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5750
5751         * docs/pwg/intro-preface.xml:
5752           Rewrite preface.
5753
5754 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5755
5756         * docs/pwg/advanced-scheduling.xml:
5757         * docs/pwg/advanced-tagging.xml:
5758         * docs/pwg/advanced-types.xml:
5759         * docs/pwg/building-boiler.xml:
5760         * docs/pwg/building-chainfn.xml:
5761         * docs/pwg/building-signals.xml:
5762         * docs/pwg/building-state.xml:
5763         * docs/pwg/building-testapp.xml:
5764         * docs/pwg/intro-basics.xml:
5765         * docs/pwg/other-manager.xml:
5766         * docs/pwg/other-source.xml:
5767           Typo fixes.
5768         * docs/pwg/other-manager.xml:
5769           Add some first content. No example code yet.
5770         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5771           Remove double newlines.
5772
5773 2004-11-04  Wim Taymans  <wim@fluendo.com>
5774
5775         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5776         (remove_from_group), (normalize_group), (group_migrate_connected),
5777         (gst_opt_scheduler_iterate):
5778         * testsuite/schedulers/.cvsignore:
5779         * testsuite/schedulers/Makefile.am:
5780         * testsuite/schedulers/queue_link.c: (main):
5781         Added testcase for scheduler segfault.
5782         Fix scheduler segfault when removing a decoupled
5783         entry point as the last element from a group.
5784
5785 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5786
5787         * gst/gstmarshal.list: add missing marshaller, fixes build
5788
5789 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5790
5791         * docs/random/signal: added notes about using BOXED for GstBuffer
5792         signal marshallers, not POINTER
5793
5794 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5795
5796         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5797         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
5798         POINTER=>BOXED changes to marshal GstBuffers
5799
5800 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5801
5802         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
5803         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
5804
5805 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
5806
5807         * docs/gst/gstreamer-sections.txt:
5808         * docs/gst/tmpl/gstcaps.sgml:
5809         * docs/gst/tmpl/gsterror.sgml:
5810         * docs/gst/tmpl/gstinfo.sgml:
5811         * docs/gst/tmpl/gstmacros.sgml:
5812         * docs/gst/tmpl/gstutils.sgml:
5813         * docs/random/ensonic/interfaces.txt:
5814         * gst/gstinfo.h:
5815           added some more docs, removed two obsolete defines
5816
5817 2004-11-02  Kjartan Maraas <as at gnome.org>
5818
5819         reviewed by: Wim Taymans, Ronald Bultje.
5820
5821         * gst/cothreads.c: (cothread_create):
5822         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
5823         (gst_bin_child_state_change_func):
5824         * gst/gstbuffer.c: (gst_buffer_span):
5825         * gst/gstelement.c: (gst_element_get_index),
5826         (gst_element_get_event_masks), (gst_element_get_query_types),
5827         (gst_element_get_formats):
5828         * gst/gsterror.c: (_gst_core_errors_init),
5829         (_gst_library_errors_init), (_gst_resource_errors_init),
5830         (_gst_stream_errors_init):
5831         * gst/gstobject.c: (gst_object_default_deep_notify):
5832         * gst/gstpad.c: (gst_pad_get_event_masks),
5833         (gst_pad_get_internal_links_default):
5834         * gst/gstplugin.c: (gst_plugin_register_func),
5835         (gst_plugin_get_module):
5836         * gst/gststructure.c: (gst_structure_get_string),
5837         (gst_structure_get_abbrs), (gst_structure_from_abbr),
5838         (gst_structure_to_abbr):
5839         * gst/gstutils.c: (gst_print_element_args):
5840         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5841         (setup_group_scheduler), (gst_opt_scheduler_iterate):
5842         Aplied part of patch #157127: Cleanup of issues reported by 
5843         sparse.
5844         Also do not try to use cothreads when there is no cothread
5845         context yet.
5846
5847 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
5848
5849         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5850         (gst_opt_scheduler_iterate):
5851         Applied patch #154061. Running a pipeline in which an element 
5852         calls GST_ELEMENT_ERROR in the chain function, the opt 
5853         scheduler doesn't unref the chain so it never gets freed.
5854
5855 2004-11-02  Wim Taymans  <wim@fluendo.com>
5856
5857         * gst/gststructure.c: (gst_structure_get_abbrs),
5858         (gst_structure_from_abbr), (gst_structure_to_abbr):
5859         Remove that ugly if-then thing in the code that converts
5860         between strings and types.
5861
5862 2004-11-02  Wim Taymans  <wim@fluendo.com>
5863
5864         * gst/gstscheduler.c: (gst_scheduler_add_element),
5865         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
5866         Aplied clock distribution patch, this should fix bug
5867         #148787.
5868
5869 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
5870
5871         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
5872
5873         * po/LINGUAS:
5874         * po/nb.po:
5875           Added Norwegian Bokmaal translation
5876
5877 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5878
5879         * tools/gst-inspect.c: (print_signal_info):
5880           print signal arguments as pointers if they are
5881
5882 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
5883
5884         * docs/pwg/building-boiler.xml:
5885           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
5886
5887 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5888
5889         * gst/parse/parse.l:
5890         * testsuite/parse/parse1.c: (main):
5891         Since parse can do 'element name=a:b' make 'a:b.' work as
5892         well. 
5893         Added testcase to verify fix.
5894
5895 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5896
5897         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
5898         Use the realpad when printing the direction.
5899         Add extra \n when printing extensions of typefind factories.
5900
5901 2004-10-13  David Schleef  <ds@schleef.org>
5902
5903         * examples/manual/Makefile.am: $< isn't portable in Makefile
5904         rules.
5905
5906 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
5907
5908         * docs/gst/tmpl/gstobject.sgml:
5909         * docs/gst/tmpl/gstplugin.sgml:
5910         * docs/gst/tmpl/gstpluginfeature.sgml:
5911         * docs/gst/tmpl/gstregistry.sgml:
5912         * docs/gst/tmpl/gstversion.sgml:
5913         * gst/gstbin.c:
5914           more api documentation
5915         * gst/gstplugin.c: (gst_plugin_register_func),
5916         (gst_plugin_check_file), (gst_plugin_load_file):
5917           better error signaling and logging
5918
5919 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5920
5921         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
5922           Subtract current queue contents from position queries.
5923
5924 2004-10-11  Johan Dahlin  <johan@gnome.org>
5925
5926         * gst/gsturi.c (gst_uri_get_location): unescape string
5927         (gst_uri_construct): escape string.
5928
5929 2004-10-11  Benjamin Otte  <otte@gnome.org>
5930
5931         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
5932         (gst_pad_try_set_caps_nonfixed):
5933           allow renegotiation of unconnected pads (as inside spider). Simply
5934           return OK if unconnected - mimic try_set_caps there.
5935
5936 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5937
5938         * gst/gstbin.c: (gst_bin_sync_children_state):
5939           Add missing break.
5940
5941 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5942
5943         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
5944         Set element to EOS before sending EOS event
5945
5946 2004-10-08  Wim Taymans  <wim at fluendo dot com>
5947
5948         * gst/elements/gsttypefindelement.c:
5949         (gst_type_find_element_handle_event):
5950         Handle EOS events when doing the transition from
5951         typefind to data passing. This should fix the
5952         infinite loops in short files.
5953
5954 2004-10-07  Wim Taymans  <wim at fluendo dot com>
5955
5956         * gst/gstthread.c: (gst_thread_change_state),
5957         (gst_thread_child_state_change):
5958         Make sure no iteration happens while performing
5959         the state change as it could mess up the internal
5960         consistency of the thread state.
5961
5962 2004-10-07  Wim Taymans  <wim at fluendo dot com>
5963
5964         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
5965         (gst_thread_change_state), (gst_thread_child_state_change):
5966         Do not try to grab the iterate lock in the state change method
5967         when we are in the same thread as the iterate or else we
5968         could deadlock. Some other cleanups.
5969
5970 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5971
5972         * configure.ac:
5973           bump nano to cvs
5974
5975 === release 0.8.7 ===
5976
5977 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5978
5979         * configure.ac:
5980         * NEWS:
5981         * RELEASE:
5982         * configure.ac:
5983           releasing 0.8.7, "A Cruise"
5984
5985 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5986
5987         * docs/random/mimetypes:
5988         Add an entry for Sony ATRAC3 audio format with mime-type
5989         used by rmdemux et riff-read
5990
5991 2004-10-06  Wim Taymans  <wim at fluendo dot com>
5992
5993         * gst/elements/gsttypefindelement.c: (stop_typefinding):
5994         Push the buffer store instead of clearing it in case that
5995         the stream is not seekable.
5996
5997 2004-10-06  Wim Taymans  <wim at fluendo dot com>
5998
5999         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6000         (gst_thread_main_loop):
6001         Lock the iteration and the state change so that automatic
6002         negotiation and fixation does not happen at the same time
6003         as the in stream negotiation.
6004
6005 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6006
6007         * configure.ac:
6008           bump nano to cvs
6009
6010 === release 0.8.6 ===
6011
6012 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6013
6014         * configure.ac:
6015         * NEWS:
6016         * RELEASE:
6017         * configure.ac:
6018           releasing 0.8.6, "Narc"
6019
6020 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6021
6022         * configure.ac:
6023           prerel bump
6024
6025 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6026
6027         patch by: Steve Lhomme
6028
6029         * gst/elements/gstfakesrc.c:
6030         * gst/elements/gstidentity.c:
6031         * gst/gstthread.c:
6032           Fix for #153881
6033
6034 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6035
6036         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6037         Fix threadsafety of the crc checking function.
6038
6039 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6040
6041         patch by: Ronald Bultje
6042
6043         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6044         (gst_type_find_element_handle_event),
6045         (gst_type_find_element_chain):
6046         * gst/elements/gsttypefindelement.h:
6047          #153657.
6048          Filter out discont event from seekable sources when typefind
6049          asks them to seek.  Fixes typefind with demuxers for
6050          avi, asf and matroska.
6051
6052 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6053
6054         * docs/gst/gstreamer-sections.txt:
6055         * gst/gstcaps.c:
6056         * gst/gstcaps.h:
6057         * gst/gstpad.c:
6058           Revert preferred caps: (#147789)
6059
6060 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6061
6062         * win32/dirent.c:
6063           fix a memory leak
6064
6065 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6066
6067         * configure.ac:
6068           bump for prerelease
6069
6070 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6071
6072         * docs/Makefile.am:
6073         * docs/manual/elements-api.xml:
6074           restructure so that common stuff is shown first
6075         * docs/manual/init-api.xml:
6076           convert to examples
6077         * docs/manual/manual.xml:
6078         * docs/manuals.mak:
6079         * docs/url.entities:
6080           link to API on the website, possibly override later in build
6081         * examples/manual/.cvsignore:
6082           ignore more
6083         * examples/manual/Makefile.am:
6084           add more examples
6085         * examples/manual/extract.pl:
6086           error out on failure
6087
6088 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6089
6090         * docs/gst/tmpl/gstthread.sgml:
6091         * docs/manual/init-api.xml:
6092         * examples/manual/Makefile.am:
6093           convert two code bits to examples
6094
6095 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6096
6097         * gst/gstelement.c: (gst_element_change_state):
6098           Well, actually, I was about to remove this insane assert when
6099           I noticed Wim already did that. A warning is nice so we can
6100           fix actual ugs (using --g-fatal-warnings and backtraces), so
6101           I added that instead.
6102
6103 2004-09-06  Wim Taymans  <wim@fluendo.com>
6104
6105         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6106         (gst_element_threadsafe_properties_post_run),
6107         (gst_element_set_state), (gst_element_change_state):
6108         Added extra refcounting around various places. 
6109
6110 2004-09-06  Wim Taymans  <wim@fluendo.com>
6111
6112         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6113         Fix debug info.
6114
6115 2004-09-06  Wim Taymans  <wim@fluendo.com>
6116
6117         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6118         (remove_from_group):
6119         Some more debug info.
6120
6121 2004-09-03  Wim Taymans  <wim@fluendo.com>
6122
6123         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6124         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6125         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6126         (gst_fakesrc_get), (gst_fakesrc_change_state):
6127         * gst/elements/gstfakesrc.h:
6128         * gst/elements/gstidentity.c: (gst_identity_class_init),
6129         (gst_identity_init), (gst_identity_chain),
6130         (gst_identity_set_property), (gst_identity_get_property),
6131         (gst_identity_change_state):
6132         * gst/elements/gstidentity.h:
6133         Added datarate properties to limit the datarate.
6134
6135 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6136
6137         * gst/autoplug/gstspider.c: (plugin_init):
6138           don't set a rank. We don't want to autoplug by inserting spiders.
6139
6140 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6141
6142         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6143         (gst_spider_identity_plug):
6144           add a template for spider's sink
6145         * gst/gst.c: (gst_register_core_elements):
6146           queue's rank should be NULL, we don't want spider to add it.
6147
6148 2004-08-18  David Schleef  <ds@schleef.org>
6149
6150         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6151         * docs/libs/Makefile.am: same
6152         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6153         * docs/random/ds/0.9-planning: random additions
6154         * docs/random/ds/0.9-suggested-changes: same
6155         * gst/gstxml.h: remove vestigal GstXMLNs definition
6156
6157         Preferred caps: (#147789)
6158         * docs/gst/gstreamer-sections.txt: Add symbols
6159         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6160         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6161         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6162         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6163         (gst_caps_get_preferred), (gst_caps_set_preferred),
6164         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6165         (gst_caps_use_preferred): Handle caps preferences
6166         * gst/gstcaps.h: Add caps preferences
6167         * gst/gstpad.c: (gst_pad_link_get_preferred),
6168         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6169         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6170         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6171         negotiation.
6172
6173 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6174
6175         * gst/autoplug/gstspideridentity.c:
6176         (gst_spider_identity_request_new_pad):
6177         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6178         (gst_aggregator_init):
6179         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6180         (gst_fakesink_init):
6181         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6182         (gst_fakesrc_init):
6183         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6184         (gst_fdsink_init):
6185         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6186         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6187         (gst_filesink_init):
6188         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6189         (gst_filesrc_init):
6190         * gst/elements/gstidentity.c: (gst_identity_base_init),
6191         (gst_identity_init):
6192         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6193         (gst_multifilesrc_init):
6194         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6195         (gst_pipefilter_init):
6196         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6197         (gst_statistics_init):
6198         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6199         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6200           s/gst_pad_new/&_from_template/
6201           register pad templates in the base_init function
6202           add static pad template definitions
6203
6204 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6205
6206         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6207         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6208         * testsuite/refcounting/pad.c: (main):
6209         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6210           s/gst_pad_new/&_from_template/
6211           prepare deprecation of gst_pad_new
6212
6213 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6214
6215         patch by: Luca Ognibene <skaboy81@virgilio.it>
6216
6217         * gst/gstcaps.c:
6218         * gst/gstelement.c:
6219         * gst/gstpad.c:
6220         * gst/gstxml.c:
6221           fix memleaks.  Fixes #150001
6222
6223 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6224
6225         * docs/random/ds/0.9-suggested-changes:
6226           add notes - mostly about pad templates
6227
6228 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6229
6230         * win32/GStreamer.vcproj:
6231           temporary locale files are .gmo not .mo
6232
6233 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6234
6235         * configure.ac: bump nano to cvs
6236
6237 === release 0.8.5 ===
6238
6239 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6240
6241         * configure.ac:
6242           releasing 0.8.5, "Stuttgart"
6243         * NEWS:
6244         * RELEASE:
6245         * configure.ac:
6246         * docs/random/release:
6247           updates for release
6248
6249 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6250
6251         patch by: Wim Taymans (wim@fluendo.com)
6252
6253         * gst/gstbuffer.c:
6254         * gst/gstindex.h:
6255         * libs/gst/dataprotocol/dataprotocol.c:
6256           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6257
6258 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6259
6260         * Makefile.am:
6261         * win32/MANIFEST:
6262           add win32 dir to the build.  Fixes #149981.
6263
6264 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6265
6266         * configure.ac:
6267           bump libtool versioning
6268         * gst/gststructure.c:
6269           mark function as static
6270         * po/af.po:
6271         * po/az.po:
6272         * po/ca.po:
6273         * po/cs.po:
6274         * po/en_GB.po:
6275         * po/fr.po:
6276         * po/nl.po:
6277         * po/sq.po:
6278         * po/sr.po:
6279         * po/sv.po:
6280         * po/tr.po:
6281         * po/uk.po:
6282           translations update
6283         * win32/README.txt:
6284           trademark protection
6285
6286 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6287
6288         * configure.ac:
6289           fix GST_ORIGIN
6290           set GST_PACKAGE to source, and distinguish between release and other
6291         * tools/gst-inspect.c:
6292           print out plugin an element factory is part of so we see this info
6293
6294 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6295
6296         * docs/gst/gstreamer-sections.txt:
6297         * docs/gst/tmpl/gstbuffer.sgml:
6298         * docs/gst/tmpl/gstschedulerfactory.sgml:
6299           reorder docs a little, make GstBuffer's more sensible.
6300         * gst/gstbuffer.h:
6301           API: added GST_BUFFER_FLAG_DELTA_UNIT
6302         * gst/gstscheduler.c:
6303           comment API addition
6304
6305 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6306
6307         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6308           work with non-regular files that can be mmapped (like /dev/zero)
6309         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6310           get rid of typefinds that require a seek when we can't seek instead
6311           of trying them over and over again
6312         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6313           return non-zero failure value when the pipeline was interrupted or
6314           an error occurred
6315
6316 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6317
6318         * win32/config.h:
6319         * win32/GStreamer.vcproj:
6320           compile and install the locales
6321
6322 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6323
6324         * gst/gstvalue.c:
6325           fix a possible memory leak under Windows
6326
6327 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6328
6329         * win32/GStreamer.vcproj:
6330           fix a memory leak that occured under Windows
6331         * win32/gstreamer.def:
6332           add gst_scheduler_register
6333
6334 2004-08-11  Benjamin Otte  <otte@gnome.org>
6335
6336         * docs/gst/gstreamer-sections.txt:
6337         * gst/gstscheduler.c: (gst_scheduler_register):
6338         * gst/gstscheduler.h:
6339           API:
6340           add gst_scheduler_register shortcut similar to gst_element_register
6341         * gst/schedulers/entryscheduler.c: (plugin_init):
6342         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6343         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6344           use it
6345
6346 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6347
6348         * gst/gstvalue.h:
6349           fix a memory leak that occured under Windows
6350
6351 2004-08-10  Colin Walters  <walters@redhat.com>
6352
6353         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6354         Don't use O_EXCL to open temporary registry.  It will prevent
6355         registry creation if a temporary one already exists, which
6356         is unnecessary.
6357
6358 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6359
6360         * docs/gst/gstreamer-sections.txt:
6361         * docs/gst/tmpl/gstvalue.sgml:
6362           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6363
6364 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6365
6366         * win32/gstbytestream.vcproj:
6367         * win32/gstelements.vcproj:
6368         * win32/gstgetbits.vcproj:
6369         * win32/gst-inspect.vcproj:
6370         * win32/gst-launch.vcproj:
6371         * win32/gstoptimalscheduler.vcproj:
6372         * win32/GStreamer.vcproj:
6373         * win32/gst-register.vcproj:
6374         * win32/gstspider.vcproj:
6375           update the include and lib dirs to fit standard libraries as
6376           described in the Win32 manual
6377
6378 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6379
6380         * win32/config.h:
6381         * win32/gstversion.h:
6382           enable NLS again, push the version number for the coming 0.8.5 release
6383
6384 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6385
6386         * gst/gstvalue.h:
6387           export gst_type_XXX for windows DLLs
6388
6389 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6390
6391         * docs/faq/gst-uninstalled:
6392           fix PKG_CONFIG_PATH and PYTHONPATH
6393         * gst/schedulers/Makefile.am:
6394           cleanup
6395         * libs/gst/bytestream/bytestream.c:
6396           remove newline
6397         * po/LINGUAS:
6398         * po/sq.po:
6399           adding Albanian translation (Laurent Dhima)
6400         * po/cs.po:
6401           updated
6402
6403 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6404
6405         * po/ca.po:
6406         * po/sv.po:
6407           updated translations
6408
6409 2004-08-04  Benjamin Otte  <otte@gnome.org>
6410
6411         * tests/mass_elements.c: (main):
6412           allow specifying src and sink element explicitly, so I can test
6413           videotestsrc instead of fakesrc
6414
6415 2004-08-04  Benjamin Otte  <otte@gnome.org>
6416
6417         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6418         (gst_structure_id_empty_new), (gst_structure_empty_new),
6419         (gst_structure_copy):
6420           add gst_structure_id_empty_new_with_size to allow preallocating
6421           value array sizes. Use this in gst_structure_copy to get rid of
6422           reallocs.
6423           don't do quark=>string=>quark when copying structures
6424
6425 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6426
6427         * docs/manual/win32.xml:
6428         * win32/README.txt:
6429           update documentation with the clean version of dependencies
6430
6431 2004-08-03  Benjamin Otte  <otte@gnome.org>
6432
6433         * gst/schedulers/entryscheduler.c:
6434         (gst_entry_scheduler_remove_element):
6435           fix for GST_DISABLE_DEBUG
6436         * tools/gst-launch.c: (print_tag):
6437           fixes for G_DISABLE_ASSERT
6438
6439 2004-08-03  Benjamin Otte  <otte@gnome.org>
6440
6441         * gst/gst.c: (gst_register_core_elements):
6442           fix for G_DISABLE_ASSERT
6443         * gst/gstinfo.c: (__gst_in_valgrind):
6444           add for GST_DISABLE_DEBUG
6445
6446 2004-08-03  Benjamin Otte  <otte@gnome.org>
6447
6448         * gst/parse/parse.l:
6449           fix for G_DISABLE_ASSERT
6450
6451 2004-08-03  Wim Taymans  <wim@fluendo.com>
6452
6453         * gst/gstbin.c: (gst_bin_get_type),
6454         (gst_bin_child_state_change_func):
6455         * gst/gstthread.c: (gst_thread_change_state):
6456         Backported some debug logging from a reverted patch
6457         Don't try to destroy the thread twice. Added some more
6458         debugging in GstThread. Unlock and signal even if we
6459         are in the thread context.
6460
6461 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6462
6463         * po/uk.po:
6464           updated translation
6465
6466 2004-07-30  David Schleef  <ds@schleef.org>
6467
6468         * gst/gstatomic_impl.h: Enable atomic code for x86_64
6469
6470 2004-07-29  David Schleef  <ds@schleef.org>
6471
6472         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
6473         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
6474
6475 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6476
6477         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6478         (gst_bin_add_func), (gst_bin_remove_func),
6479         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
6480         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
6481         (gst_bin_change_state_norecurse), (gst_bin_dispose),
6482         (gst_bin_sync_children_state):
6483         * gst/gstbin.h:
6484         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
6485         (gst_thread_change_state):
6486         * testsuite/states/Makefile.am:
6487           revert state change patches as agreed so we can rework them
6488           gradually
6489
6490 2004-07-29  Benjamin Otte  <otte@gnome.org>
6491
6492         * libs/gst/control/Makefile.am:
6493           link to libgstreamer (fixes Debian bug 262019, see
6494           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
6495
6496 2004-07-29  Wim Taymans  <wim@fluendo.com>
6497
6498         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6499         (check_from_fraction_convert), (transform_test), (main):
6500         Make the test less pedantic about float roundoff errors.
6501
6502 2004-07-29  Benjamin Otte  <otte@gnome.org>
6503
6504         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
6505         (gst_filesrc_srcpad_event):
6506           make seek events to before start/after end of file not fail, but
6507           seek to start/end instead
6508         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
6509           add more output
6510
6511 2004-07-29  Benjamin Otte  <otte@gnome.org>
6512
6513         * gst/gstpad.c: (gst_pad_set_explicit_caps):
6514           check that caps are fixed
6515         * gst/gstpad.c: (gst_pad_template_new):
6516           don't try to simplify caps, costs too much time on gst_init
6517         * gst/gstplugin.c: (gst_plugin_add_feature):
6518           G_ERROR if features are added twice
6519         * gst/gsttypefind.c: (gst_type_find_register):
6520         * gst/gstelementfactory.c: (gst_element_register):
6521           don't add features twice
6522         * docs/random/ds/0.9-suggested-changes:
6523           add note about possible gst_init optimization
6524
6525 2004-07-28  David Schleef  <ds@schleef.org>
6526
6527         * testsuite/elements/Makefile.am:
6528         * testsuite/elements/struct_i386.h:
6529         * testsuite/elements/struct_size.c: (main):  A little test
6530         to keep distcheck from working if someone changes a structure
6531         size accidentally.
6532
6533 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6534
6535         * docs/libs/Makefile.am:
6536         * docs/libs/gstreamer-libs-docs.sgml:
6537         * docs/libs/gstreamer-libs-sections.txt:
6538         * docs/libs/tmpl/gstbytestream.sgml:
6539         * docs/libs/tmpl/gstcontrol.sgml:
6540         * docs/libs/tmpl/gstdataprotocol.sgml:
6541         * docs/libs/tmpl/gstgetbits.sgml:
6542         * libs/gst/bytestream/Makefile.am:
6543         * libs/gst/bytestream/bytestream.c:
6544         * libs/gst/bytestream/bytestream.h:
6545         * libs/gst/control/Makefile.am:
6546         * libs/gst/dataprotocol/Makefile.am:
6547         * libs/gst/getbits/Makefile.am:
6548         * libs/gst/getbits/getbits.h:
6549           various doc and style fixes, adding bytestream to libs docs.
6550
6551 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6552
6553         * docs/gst/gstreamer-docs.sgml:
6554         * docs/libs/Makefile.am:
6555         * docs/libs/gstreamer-libs-docs.sgml:
6556         * docs/libs/gstreamer-libs-sections.txt:
6557         * libs/gst/control/dparam.c:
6558           more doc fixes.  gst-libs docs now build the same way as gst.
6559
6560 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6561
6562         * configure.ac:
6563         * testsuite/Makefile.am:
6564         * testsuite/bins/Makefile.am:
6565         * testsuite/caps/Makefile.am:
6566         * testsuite/cleanup/Makefile.am:
6567         * testsuite/clock/Makefile.am:
6568         * testsuite/debug/Makefile.am:
6569         * testsuite/dlopen/Makefile.am:
6570         * testsuite/dynparams/Makefile.am:
6571         * testsuite/elements/.cvsignore:
6572         * testsuite/elements/Makefile.am:
6573         * testsuite/enumcaps/Makefile.am:
6574         * testsuite/enumcaps/enumcaps.c:
6575         * testsuite/ghostpads/Makefile.am:
6576         * testsuite/indexers/Makefile.am:
6577         * testsuite/negotiation/Makefile.am:
6578         * testsuite/parse/Makefile.am:
6579         * testsuite/plugin/Makefile.am:
6580         * testsuite/refcounting/Makefile.am:
6581         * testsuite/schedulers/.cvsignore:
6582         * testsuite/states/Makefile.am:
6583         * testsuite/tags/Makefile.am:
6584         * testsuite/threads/Makefile.am:
6585           fold enumcaps into caps dir
6586           clean up Makefile.am's for testsuite
6587
6588 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6589
6590         * docs/gst/Makefile.am:
6591         * docs/libs/Makefile.am:
6592           clean up docs build.  Fixes needless rebuilding of template files.
6593
6594 2004-07-28  Wim Taymans  <wim@fluendo.com>
6595
6596         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
6597         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
6598         Make sure that a bin state change tries to keep the children
6599         in sync. 
6600         Added debug logging to the thread.
6601
6602 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6603
6604         * win32/GStreamer.vcproj:
6605         * win32/gstreamer.def:
6606           more exports for the plugins
6607
6608 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6609
6610         * win32/gstgetbits.vcproj:
6611         * win32/gstgetbits.def:
6612         * win32/msvc71.sln:
6613           add support for the getbits plugin
6614
6615 2004-07-27  Wim Taymans  <wim@fluendo.com>
6616
6617         * gst/gstvalue.c: (gst_value_transform_double_fraction),
6618         (gst_value_transform_fraction_double), (_gst_value_initialize):
6619         * testsuite/caps/Makefile.am:
6620         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6621         (check_from_fraction_convert), (transform_test), (main):
6622         Added transform functions between double and fraction.
6623         Added testcase to verify transforms
6624
6625 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6626
6627         * win32/GStreamer.vcproj:
6628           rename GStreamer-0.8.lib to libgstreamer.lib
6629
6630 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6631
6632         * win32/gstelements.vcproj:
6633         * win32/gstoptimalscheduler.vcproj:
6634           fixes for the Release build
6635
6636 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6637
6638         * win32/config.h:
6639           update the version number
6640
6641 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6642
6643         * win32/GStreamer.vcproj:
6644           add gstinterface to the build
6645
6646 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6647
6648         * win32/gstreamer.def:
6649           add many definitions needed by plugins,
6650           GST_CAT_DEFAULT only available in the Debug build ?
6651
6652 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6653
6654         * gst/gstelement.c: (gst_element_set_eos_recursive):
6655           various whitespace fixes.
6656           doc fix, fixes #148497
6657
6658 2004-07-25  Benjamin Otte  <otte@gnome.org>
6659
6660         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
6661           don't delay links on the sink elements, it causes unnegotiated
6662           links.
6663         * gst/elements/gsttypefindelement.c:
6664         (gst_type_find_element_base_init):
6665           add our padtemplates, we indeed do have some.
6666         * gst/elements/gsttypefindelement.c:
6667         (gst_type_find_element_handle_event),
6668         (gst_type_find_element_chain):
6669           don't push data when typefinding failed.
6670         * gst/gstpad.c: (gst_pad_link_fixate):
6671           check that no fixate function returns empty caps.
6672         * gst/gstpad.c: (gst_pad_push):
6673           check that the link is negotiated before data gets pushed.
6674         * tools/gst-register.c: (main):
6675           don't assert (fixes #148283)
6676
6677 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6678
6679         * docs/gst/gstreamer-sections.txt:
6680         * docs/gst/tmpl/gstconfig.sgml:
6681           add GST_PLUGIN_EXPORT definition
6682
6683 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6684
6685         * gst/gstplugin.h:
6686         * gst/gstconfig.h.in:
6687         * win32/gstconfig.h:
6688         * win32/gstelements.def:
6689         * win32/gstelements.vcproj:
6690         * win32/gstoptimalscheduler.def:
6691         * win32/gstoptimalscheduler.vcproj:
6692         * win32/gstspider.def:
6693         * win32/gstspider.vcproj:
6694           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
6695
6696 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6697
6698         * docs/gst/gstreamer-sections.txt:
6699           remove GST_CAT_DEFAULT because the type has changed
6700
6701 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6702
6703         * win32/gstbytestream.vcproj:
6704         * win32/gstelements.vcproj:
6705         * win32/gst-inspect.vcproj:
6706         * win32/gst-launch.vcproj:
6707         * win32/gstoptimalscheduler.vcproj:
6708         * win32/GStreamer.vcproj:
6709         * win32/gst-register.vcproj:
6710         * win32/gstspider.vcproj:
6711         * win32/msvc71.sln:
6712           Copy the files where needed after building, The testsuite will be
6713           built separately
6714
6715 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6716
6717         * win32/config.h:
6718         * win32/README.txt:
6719         * docs/manual/win32.xml:
6720         Fixed the plugin and GStreamer location
6721
6722 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6723
6724         * win32/gstreamer.def:
6725         More exports for the plugins
6726
6727 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6728
6729         * gst/gstinfo.h:
6730         Marc was right, we need to export literally GST_CAT_DEFAULT
6731
6732 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6733
6734         * win32/config.h:
6735         NLS crashes in gettext, disabled until this is solved
6736
6737 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6738
6739         * win32/gst-inspect.vcproj:
6740         * win32/gst-launch.vcproj:
6741         Should use NLS when available
6742
6743 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6744
6745         * gst/registries/gstxmlregistry.c:
6746         removing the file doesn't seem to be a good idea on Linux
6747
6748 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6749
6750         * gst/registries/gstxmlregistry.c:
6751         Remove the registry before renaming the tempfile (needed for Windows)
6752
6753 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6754
6755         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
6756         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
6757         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
6758         * gst/elements/gstmultifilesrc.h:
6759         Added newmedia property so it generates newmedia events between each
6760         file when property is set, as well as fixed eos handling
6761
6762 2004-07-22  David Schleef  <ds@schleef.org>
6763
6764         * gst/gststructure.c: (gst_structure_id_empty_new),
6765         (gst_structure_empty_new):  Set type field correctly.
6766         * gst/gststructure.h: Check type field correctly.
6767         * testsuite/caps/Makefile.am:
6768         * testsuite/caps/structure.c: (test1), (main): Add a very small
6769         test for structures.
6770
6771 2004-07-22  David Schleef  <ds@schleef.org>
6772
6773         * docs/random/ds/0.9-suggested-changes: more comments
6774         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
6775
6776 2004-07-22  Benjamin Otte  <otte@gnome.org>
6777
6778         * gst/gstelementfactory.c: (gst_element_register):
6779           set the factory in the class struct, so gst_element_get_factory
6780           actually works
6781         * gst/parse/grammar.y:
6782           set element to playing when it gets unlocked as we can't rely on the
6783           bin state - all elements in the bin state might still be locked in
6784           NULL)
6785
6786 2004-07-22  Benjamin Otte  <otte@gnome.org>
6787
6788         * gst/gstelement.c: (gst_element_set_state_func):
6789           make this a static function
6790
6791 2004-07-22  Wim Taymans  <wim@fluendo.com>
6792
6793         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6794         (gst_opt_scheduler_pad_link):
6795         fix 147894-2 and the group_link problem.
6796
6797 2004-07-22  Wim Taymans  <wim@fluendo.com>
6798
6799         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6800         (handoff_identity), (main):
6801         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6802         (handoff_identity), (main):
6803         * testsuite/schedulers/Makefile.am:
6804         * testsuite/schedulers/group_link.c: (main):
6805         Show bug in scheduler when linking chain and loop based element 
6806         where the chain based element was not yet in a group.
6807
6808 2004-07-21  Benjamin Otte  <otte@gnome.org>
6809
6810         * gst/.cvsignore:
6811         * gst/autoplug/.cvsignore:
6812         * gst/elements/.cvsignore:
6813         * gst/indexers/.cvsignore:
6814         * libs/gst/bytestream/.cvsignore:
6815         * libs/gst/control/.cvsignore:
6816         * libs/gst/getbits/.cvsignore:
6817         * testsuite/states/.cvsignore:
6818         * testsuite/threads/.cvsignore:
6819           keep this up to date, since I seem to be the only one who cares
6820           about not missing files on commits (editor's note: no you don't,
6821           but feel free to change them at the time you add stuff instead
6822           of later on)
6823
6824 2004-07-21  Benjamin Otte  <otte@gnome.org>
6825
6826         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6827         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
6828         (gst_bin_child_state_change_func), (set_kid_state_func),
6829         (gst_bin_set_state), (gst_bin_change_state_norecurse):
6830           make state changes work correctly and reentrant (so removing
6831           elements from bins during state changes of bins doesn't cause
6832           segfaults or even wrong states)
6833           add debugging category and debugging output to print children states
6834         * gst/gstbin.c: (gst_bin_dispose): 
6835           add some assertion checks
6836         * gst/gstbin.h:
6837         * gst/gstbin.c: (gst_bin_sync_children_state):
6838           deprecate this function - it just does gst_bin_set_state (bin,
6839           GST_STATE (bin)) 
6840         * testsuite/threads/queue.c: (main):
6841           don't use gst_bin_sync_children_state anymore
6842         * testsuite/states/Makefile.am:
6843         * testsuite/states/bin.c:
6844           test that the state changes of bins work as expected
6845         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
6846           some adjustments to change states correctly, too
6847         * gst/gstthread.c: (gst_thread_change_state):
6848           don't enable/disable "threadsafe" properties, they're unused and
6849           cause random segfaults
6850         * testsuite/threads/Makefile.am:
6851           the queue check randomly passes now, ignore it
6852
6853 2004-07-21  Benjamin Otte  <otte@gnome.org>
6854
6855         * gst/gstpad.c:
6856           check if data is NULL before outputting debug info. (fixes #145100)
6857
6858 2004-07-21  Benjamin Otte  <otte@gnome.org>
6859
6860         * gst/schedulers/entryscheduler.c:
6861         (gst_entry_scheduler_loop_wrapper),
6862         (gst_entry_scheduler_chain_wrapper),
6863         (gst_entry_scheduler_get_wrapper):
6864           reset the state when the cothread starts, so we don't get assertion
6865           failures on restarting of cothreads
6866
6867 2004-07-20  Benjamin Otte  <otte@gnome.org>
6868
6869         * gst/gstelement.c: (gst_element_link_pads_filtered):
6870           use correct sinkpad, if only sinkpad is specified, but not srcpad
6871           (fixes #147889)
6872         * gst/gstelement.c: (gst_element_set_state_func),
6873         (gst_element_change_state): ref/unref the element, signal handlers
6874         could get rid of the element otherwise
6875
6876 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6877
6878         * docs/random/ds/0.9-suggested-changes:
6879           Make note about renaming fixed-list to array.
6880         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
6881         (_gst_value_initialize):
6882           Add array intersections.
6883         * testsuite/caps/intersect2.c: (main):
6884           Add test for array intersections.
6885
6886 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6887
6888         * configure.ac: back to cvs
6889
6890 === release 0.8.4 ===
6891
6892 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6893
6894         * configure.ac:
6895           releasing 0.8.4, "Paella"
6896           bump libtool versioning
6897
6898 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6899
6900         * po/LINGUAS:
6901         * po/ca.po:
6902           adding Catalan translation (Jordi Mallach)
6903
6904 2004-07-20  Wim Taymans  <wim@fluendo.com>
6905
6906         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6907         (handoff_identity), (main):
6908         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6909         (handoff_identity), (main):
6910         * testsuite/schedulers/Makefile.am:
6911         Added failing testcase for variant of #147894
6912
6913 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6914
6915         patch by: David Moore
6916
6917         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
6918         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
6919         (group_migrate_connected):
6920         * testsuite/schedulers/Makefile.am:
6921           fix for #142813 (Deadlock in optimal scheduler)
6922
6923 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6924
6925         patch by: Wim Taymans
6926
6927         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
6928         (gst_opt_scheduler_schedule_run_queue),
6929         (gst_opt_scheduler_get_wrapper), (get_group),
6930         (group_migrate_connected):
6931         * testsuite/schedulers/Makefile.am:
6932           fix for #147819 (Add some checks in the opt scheduler)
6933
6934 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6935
6936         patch by: Benjamin Otte
6937
6938         * gst/gstelementfactory.c: (__gst_element_details_set):
6939           fix for #147929: running gst-register in non-utf8 locale can cause
6940           invalid registry
6941
6942 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6943
6944         patch by: Wim Taymans
6945
6946         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
6947         (group_has_element), (element_get_reachables_func),
6948         (group_migrate_connected):
6949           fix for #147894 (opt scheduler decoupled elements mismanagement)
6950         * testsuite/schedulers/Makefile.am:
6951           testsuite app now passes
6952
6953 2004-07-19  Wim Taymans  <wim@fluendo.com>
6954
6955         * testsuite/schedulers/147819.c: (handoff_identity1),
6956         (handoff_identity2), (main):
6957         * testsuite/schedulers/Makefile.am:
6958         Added testcase for bug 147819
6959
6960 2004-07-19  Wim Taymans  <wim@fluendo.com>
6961
6962         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6963         (handoff_identity), (main):
6964         * testsuite/schedulers/Makefile.am:
6965         Added testcase for bug 147894
6966
6967 2004-07-16  Wim Taymans  <wim@fluendo.com>
6968
6969         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
6970         * testsuite/schedulers/142183.c: (handoff_identity), (main):
6971         * testsuite/schedulers/Makefile.am:
6972         Added testsuite for bug 142183 in its two incarnations. Refcount
6973         is not increased for scheduled elements and threadsafe properties
6974         mutexes are not properly unlocked.
6975
6976 2004-07-16  Wim Taymans  <wim@fluendo.com>
6977
6978         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
6979         (create_chain), (destroy_chain), (create_group), (destroy_group),
6980         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
6981         (group_dec_link), (gst_opt_scheduler_pad_link),
6982         (group_inc_links_for_element), (group_migrate_connected):
6983         Call group_inc_link with the proper src->sink ordering -- 
6984         break this, and we break sort_chain. patch from wingo for bug
6985         147713.
6986         Partially revert patch 1.89. When adding a loop based element to 
6987         the scheduler, the links to other groups are automatically followed
6988         and incremented. This should not happen because the bin will call
6989         pad_link explicitly for those connection, resulting in them counted 
6990         twice. Results in assertion failure on pipeline cleanup.
6991
6992 2004-07-16  Wim Taymans  <wim@fluendo.com>
6993
6994         * testsuite/schedulers/143777-2.c: (main):
6995         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
6996         (main):
6997         * testsuite/schedulers/Makefile.am:
6998         Added cleanup code to testcase 143777-2.
6999         Added testcase to show bug 147713, does not really show the
7000         deadlock as I can't figure out how to trigger it, but it does
7001         demonstrate bad ordering in the scheduler.
7002
7003 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7004
7005         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7006           change strndup to g_strndup.  Fixes #147707
7007
7008 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7009
7010         * po/af.po:
7011         * po/az.po:
7012         * po/cs.po:
7013         * po/en_GB.po:
7014         * po/fr.po:
7015         * po/nl.po:
7016         * po/sr.po:
7017         * po/sv.po:
7018         * po/tr.po:
7019         * po/uk.po:
7020           updated translations
7021
7022 2004-07-16  Benjamin Otte  <otte@gnome.org>
7023
7024         * gst/gstvalue.c: (gst_greatest_common_divisor):
7025           use ints and return ints, fractions only use ints, too, so this
7026           avoids accidently casting multiplications to unsigned
7027         (gst_value_lcopy_fraction): it's ints, not uint32
7028         (gst_value_set_fraction): disallow minint, multiplying and negation
7029           are broken with it
7030         (gst_value_fraction_multiply): fix to make large numbers work and get
7031         rid of the assumption that the multiplication of two ints fits an
7032         int64 - dunno if that's true for all systems
7033         * testsuite/caps/Makefile.am:
7034         * testsuite/caps/fraction-multiply-and-zero.c:
7035         (check_multiplication), (check_equal), (zero_test), (main):
7036           add tests for all the stuff above
7037         * testsuite/caps/value_compare.c: (test1):
7038           fix comment
7039         * tests/.cvsignore:
7040         * testsuite/caps/.cvsignore:
7041         * testsuite/debug/.cvsignore:
7042         * testsuite/dlopen/.cvsignore:
7043         * testsuite/states/.cvsignore:
7044           get up to date
7045
7046 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7047
7048         * docs/manual/bins-api.xml:
7049         * docs/manual/factories.xml:
7050         * docs/manual/helloworld.xml:
7051         * docs/manual/links-api.xml: 
7052           fixes for out of date info, incorrect info and grammar
7053
7054 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7055
7056         * docs/manual/pads.xml:
7057         * docs/manual/pads-api.xml: grammar fix
7058
7059 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7060
7061         * docs/manual/pads-api.xml: typo + grammar fix
7062
7063 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7064
7065         * docs/gst/gstreamer-sections.txt:
7066           add new symbols
7067         * docs/gst/tmpl/gstelement.sgml:
7068         * docs/gst/tmpl/gstpad.sgml:
7069         * docs/gst/tmpl/gsttypes.sgml:
7070         * docs/gst/tmpl/gstvalue.sgml:
7071           update docs
7072         * gst/gststructure.c: (gst_structure_set_valist),
7073         (gst_structure_from_abbr), (gst_structure_to_abbr):
7074         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7075         (gst_greatest_common_divisor), (gst_value_init_fraction),
7076         (gst_value_copy_fraction), (gst_value_collect_fraction),
7077         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7078         (gst_value_get_fraction_numerator),
7079         (gst_value_get_fraction_denominator),
7080         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7081         (gst_value_deserialize_fraction),
7082         (gst_value_transform_fraction_string),
7083         (gst_value_transform_string_fraction),
7084         (gst_value_compare_fraction), (_gst_value_initialize):
7085         * gst/gstvalue.h:
7086           adding GstFraction GValue type, get/set, and multiply
7087         * testsuite/caps/Makefile.am:
7088         * testsuite/caps/fraction.c: (test), (main):
7089         * testsuite/caps/string-conversions.c: (main):
7090         * testsuite/caps/value_compare.c: (test1), (main):
7091           add regression tests for GstFraction
7092
7093 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7094         
7095         * docs/manual/init-api.xml: Grammar fix
7096
7097 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7098
7099         * docs/manual/states.xml: Fix inconsistent information
7100
7101 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7102
7103         * gst/gstelement.c: (gst_element_set_state):
7104         * gst/gstpad.c: (gst_pad_try_set_caps):
7105         * gst/gststructure.c:
7106         * gst/gstthread.c: (gst_thread_child_state_change):
7107         * gst/gstvalue.c: (gst_value_compare_double):
7108         * gst/gstvalue.h:
7109         * testsuite/parse/parse1.c: (main):
7110           debugging additions and style cleanups
7111
7112 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7113
7114         * docs/manual/states.xml: Grammar fix
7115
7116 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7117
7118         * docs/manual/pads.xml: Grammar fix
7119
7120 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7121
7122         * docs/manual/elements.xml: Fixed image reference
7123
7124 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7125
7126         * docs/manual/goals.xml: Grammar fix
7127
7128 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7129
7130         * docs/manual/motivation.xml:
7131         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7132
7133 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7134
7135         * docs/manual/motivation.xml: Fix spelling
7136
7137 2004-07-15  Benjamin Otte  <otte@gnome.org>
7138
7139         * gst/gstelement.h: 
7140           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7141           strings.
7142         * gst/gstelement.c (gst_element_class_init):
7143           GError's are boxed, not objects
7144         * gst/gstmarshal.list:
7145           update list for the fixed error signal
7146
7147 2004-07-14  Andy Wingo  <wingo@pobox.com>
7148
7149         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7150         there all along, but the function wasn't. (guile-gstreamer's build
7151         system uses the address of the function -- I wasn't actually
7152         trying to use this.)
7153
7154 2004-07-14  Andy Wingo  <wingo@pobox.com>
7155
7156         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7157         as gst_pad_proxy_pad_link) just link to every other pad when they
7158         are called. In the case where the graph has cycles, this will mean
7159         that a call to try_set_caps will recurse. Allow this recursion
7160         and return OK, while we wait for the first try_set_caps to give a
7161         proper return value.
7162         (gst_pad_link_call_link_functions): Since this function is the
7163         only one to set the NEGOTIATING flag on a pad, if the flag is set
7164         it means that the link functions have indirectly recursed. If this
7165         happens, error out to avoid infinite recursion and an eventual
7166         SEGV.
7167         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7168         (gst_pad_proxy_getcaps): Intersect the result with the template
7169         caps to ensure that the return value is valid.
7170
7171 2004-07-14  Andy Wingo  <wingo@pobox.com>
7172
7173         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7174         one refcount, the calling function is the owner of the buffer.
7175
7176 2004-07-14  Wim Taymans  <wim@fluendo.com>
7177
7178         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7179         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7180         Fix stupid warning when an element is to be migrated but
7181         is already migrated.
7182
7183 2004-07-14  Wim Taymans  <wim@fluendo.com>
7184
7185         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7186         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7187         Make sure that a single non-loop-based element does not 
7188         end up in a group. This fixes the testsuite again.
7189
7190 2004-07-14  Wim Taymans  <wim@fluendo.com>
7191
7192         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7193         (add_to_group), (merge_groups), (schedule_group),
7194         (gst_opt_scheduler_get_wrapper), (group_elements),
7195         (group_dec_link), (gst_opt_scheduler_pad_link),
7196         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7197         (gst_opt_scheduler_iterate):
7198         move isolated groups to a new chain.
7199         Emit a warning instead of segfaulting in some error cases.
7200         Fix a bug where the link count between groups was not calculated 
7201         correctly. Fixes #144510.
7202
7203 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7204         * gst/elements/gstfilesrc.c:
7205           Binary files support under Windows now OK
7206       
7207 2004-07-13  Benjamin Otte  <otte@gnome.org>
7208
7209           compatibility fixes for Solaris 8/gcc 2.95
7210         * configure.ac:
7211           include libintl libs in LDFLAGS
7212         * gstvalue.c (gst_value_deserialize_buffer):
7213           cast isxdigit stuff to int to silence compiler warning
7214
7215 2004-07-12  Benjamin Otte  <otte@gnome.org>
7216
7217         * gst/gsttypes.h:
7218           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7219           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7220           just causes support madness
7221         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7222           make it work without this
7223         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7224         (gst_file_index_commit):
7225           glib IO channels don't want binary mode
7226         * testsuite/bytestream/filepadsink.c: (main):
7227         * testsuite/bytestream/test1.c: (read_param_file):
7228           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7229
7230 2004-07-12  Benjamin Otte  <otte@gnome.org>
7231
7232         * gst/gstelement.c: (gst_element_class_init),
7233         (gst_element_set_state), (gst_element_set_state_func):
7234           virutalize gst_element_set_state, use set_state member in class
7235           struct that was already added in 0.7 for this.
7236         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7237         (gst_bin_change_state):
7238           make gst_bin_foreach works similar to other foreach functions, plug
7239           memleaks in it. Make functions using it work with the new approach.
7240           Document gst_bin_foreach, so it can be exported if we want to
7241         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7242           use virtualized set_state to make set_state on bins set the state of
7243           all its children.
7244
7245 2004-07-12  Benjamin Otte  <otte@gnome.org>
7246
7247         * configure.ac:
7248           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7249           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7250         * gst/gstpad.c: (gst_pad_alloc_buffer):
7251           allow buffer_alloc functions to return NULL and allocate a normal
7252           buffer in that case
7253
7254 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7255         * gst/elements/gstfilesink.c:
7256         * gst/elements/gstfilesrc.c:
7257         * gst/indexers/gstfileindex.c:
7258         * gst/gsttypes.h:
7259         * testsuite/bytestream/filepadsink.c:
7260         * testsuite/bytestream/test1.c:
7261           Handle binary files under Windows
7262
7263 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7264         * docs/manual/win32.xml:
7265         * win32/config.h:
7266         * win32/gst-register.vcproj:
7267         * win32/gstreamer.def:
7268           Update to another gettext public build
7269
7270 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7271         * gst/gstplugin.c:
7272           Fix an impossible C syntax
7273         * win32/config.h:
7274           Disable i18n under Windows for the moment
7275         * win32/gst-register.vcproj:
7276           Use this configuration
7277
7278 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7279         * docs/manual/quotes.xml:
7280           Keep the quotes file alive
7281         * docs/random/ds/0.9-suggested-changes:
7282           Add the suggestion of including a 'rowstride' as part of video
7283           format caps
7284
7285 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7286
7287         * gst/gstelement.c: (gst_element_set_state),
7288         (gst_element_change_state):
7289           d'oh.  Set PENDING state correctly before forcing bin to change.
7290         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7291         (gst_structure_parse_fixed_list):
7292         * gst/schedulers/gstoptimalscheduler.c:
7293         (gst_opt_scheduler_state_transition):
7294         * testsuite/states/parent.c: (main):
7295           remove comment now that it's fixed.
7296
7297 2004-07-11  Benjamin Otte  <otte@gnome.org>
7298
7299         * gst/gstclock.h:
7300           GST_SECOND shouldn't cause a conversion to unsigned.
7301         * testsuite/clock/.cvsignore:
7302         * testsuite/clock/Makefile.am:
7303         * testsuite/clock/signedness.c: (main):
7304           make sure it never will again
7305
7306 2004-07-11  Andy Wingo  <wingo@pobox.com>
7307
7308         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7309         whose state is higher than the bin state, raise the bin state to
7310         ensure that bin state := highest child state.
7311         
7312 2004-07-11  Andy Wingo  <wingo@pobox.com>
7313
7314         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7315         procedure on the children of a bin. Assumes that the procedure can
7316         change the set of children.
7317         (set_kid_state_func): New static function.
7318         (gst_bin_change_state): Use gst_bin_foreach to call
7319         set_kid_state_func. Fixes a bug: if a child had a state-change
7320         handler that removes it from the bin, there would be a segfault.
7321         Hopefully it should also work in the case where the state-change
7322         handler on one child adds or removes other children. In any case,
7323         fixes should go to gst_bin_foreach.
7324
7325 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7326
7327         * gst/gstelement.c: (gst_element_set_state):
7328           compatibility fix for latest plugins release.  Change loop back
7329           to while {}
7330
7331 2004-07-09  Wim Taymans  <wim@fluendo.com>
7332
7333         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7334         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7335         (gst_thread_main_loop):
7336         Since remove is virtual in GstBin we must not assume the 
7337         elements GList to have anothing useful.
7338         Add some more logging to GstThread and be a bit more paranoid
7339         when resetting the scheduler.
7340         Set the state of the bin to NULL before removing the children.
7341
7342 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7343
7344         * testsuite/threads/Makefile.am:
7345         * testsuite/threads/threadg.c:
7346           added test to check if problem when removing all elements from a
7347           GstThread before setting GstThread state to NULL
7348
7349 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7350
7351         * docs/gst/tmpl/gstelement.sgml:
7352         * docs/gst/tmpl/gsttypes.sgml:
7353         * gst/gstbin.c: (gst_bin_change_state):
7354         * gst/gstelement.c: (gst_element_set_state),
7355         (gst_element_change_state):
7356           rework so that for bins we try to set the state on all children
7357           as well even if the bin is in the correct state already.
7358           change while to do so at least one iteration is done.
7359           For regular elements, we fall back to the previous behaviour for
7360           now since we first need a new plugins release.
7361         * testsuite/states/parent.c: (main):
7362           test for this case
7363           Fixes #123774
7364
7365 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7366
7367         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7368         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7369         (gst_queue_release_locks), (gst_queue_change_state),
7370         (gst_queue_set_property):
7371           add proper lock debugging.  Change dispose to finalize, since
7372           we're freeing mutexes and other stuff which should happen only once.
7373
7374 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7375
7376         * docs/gst/tmpl/gstelement.sgml:
7377         * docs/gst/tmpl/gstplugin.sgml:
7378         * docs/gst/tmpl/gsttypes.sgml:
7379         * docs/pwg/building-state.xml:
7380         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7381         * gst/gstelement.c: (gst_element_change_state):
7382         * gst/gstthread.c: (gst_thread_change_state):
7383           catch wrong state changes in element base class.
7384
7385 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7386
7387         * gst/gstinfo.h:
7388           clean up layout a little.
7389
7390 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7391
7392         * configure.ac:
7393         * testsuite/Makefile.am:
7394         * testsuite/states/Makefile.am:
7395         * testsuite/states/parent.c: (main):
7396           re-enable states testsuite dir.  Add test for state changes and
7397           parent behaviour
7398
7399 2004-07-09  Wim Taymans  <wim@fluendo.com>
7400
7401         * gst/schedulers/gstoptimalscheduler.c:
7402         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7403         (element_get_reachables_func), (element_get_reachables),
7404         (debug_element), (rechain_group), (group_migrate_connected),
7405         (gst_opt_scheduler_pad_unlink):
7406         Do not try to migrate decoupled elements to a new group since
7407         they are not added to groups.
7408
7409 2004-07-08  Benjamin Otte  <otte@gnome.org>
7410
7411         * gst/gstelement.c: (gst_element_error_func):
7412           make reentrant (= allow removing elements in error handler)
7413
7414 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7415
7416         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7417         (gst_pad_send_event), (gst_pad_call_chain_function):
7418           events sent to elements below PAUSED cannot be handled, so
7419           don't try to
7420
7421 2004-07-08  Wim Taymans  <wim@fluendo.com>
7422
7423         * gst/schedulers/gstoptimalscheduler.c:
7424         (chain_recursively_migrate_group), (create_group),
7425         (schedule_group), (gst_opt_scheduler_pad_link),
7426         (group_elements_set_visited), (element_get_reachables_func),
7427         (element_get_reachables), (group_can_reach_group), (debug_element),
7428         (rechain_group), (group_migrate_connected),
7429         (gst_opt_scheduler_pad_unlink):
7430         * testsuite/schedulers/Makefile.am:
7431         Implemented group splitting and rechaining.
7432         Fixes 143777 and 143777-2 in the testsuite.
7433
7434 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7435
7436         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7437           extra debugging
7438         * gst/gstevent.h:
7439         * gst/gstinfo.c: (gst_debug_log_default):
7440           print time nicely.  add thread pointer until someone figures out
7441           a completely portable way of getting at thread id's.
7442         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
7443         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
7444         (gst_pad_call_chain_function):
7445           extra debugging
7446         * gst/schedulers/gstoptimalscheduler.c:
7447         (get_group_schedule_function), (loop_group_schedule_function),
7448         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
7449         (pad_clear_queued), (gst_opt_scheduler_iterate):
7450           rename BUFPEN and friends to DATAPEN since that's what they are.
7451
7452 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7453
7454         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7455         * gst/gstbuffer.h:
7456         * gst/gstpad.c:
7457           cleanups and debugging
7458
7459 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7460
7461         * configure.ac:
7462         * gst/gstvalue.c: (gst_value_compare_enum),
7463         (gst_value_serialize_enum), (gst_value_deserialize_enum),
7464         (gst_value_can_compare), (gst_value_compare):
7465         * testsuite/Makefile.am:
7466         * testsuite/enumcaps/Makefile.am:
7467         * testsuite/enumcaps/enumcaps.c:
7468           Fix enum serialization, deserialization, comparison in caps, add
7469           a test to ensure that this continues working in the future.
7470
7471 2004-07-06  David Schleef  <ds@schleef.org>
7472
7473         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7474         Fix memleak.
7475
7476 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7477
7478         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
7479         * gst/gstplugin.h:
7480         * gst/registries/gstxmlregistry.c:
7481         (plugin_times_older_than_recurse), (plugin_times_older_than),
7482         (gst_xml_registry_parse_padtemplate):
7483           only rebuild registry when actual plugins have a newer time than
7484           the registry.  Fixes #145520
7485
7486 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7487
7488         * docs/manual/manual.xml:
7489         * docs/manual/win32.xml:
7490           add chapter on win32 building.  fixes #142422
7491
7492 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7493
7494         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
7495
7496         * gst/autoplug/gstspider.c: (gst_spider_init),
7497         (gst_spider_dispose):
7498           fix spider memleaks.  fixes #137863
7499
7500 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7501
7502         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
7503
7504         * gst/schedulers/gstoptimalscheduler.c:
7505         (gst_opt_scheduler_pad_unlink):
7506           fix SIGBUS error, fixes #145338
7507
7508 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7509
7510         * gst/gstobject.c: (gst_object_replace):
7511         * gst/gstscheduler.c: (gst_scheduler_get_clock):
7512         * gst/gstsystemclock.c: (gst_system_clock_obtain):
7513           clean up clock lifecycle.  Fixes #109831
7514
7515 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7516
7517         * po/LINGUAS:
7518         * po/cs.po:
7519           added Czech translation (Miloslav Trmac)
7520
7521 2004-07-04  David Schleef  <ds@schleef.org>
7522
7523         * tools/Makefile.am:
7524         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
7525
7526 2004-07-04  David Schleef  <ds@schleef.org>
7527
7528         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
7529
7530 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7531
7532         * gst/gstbin.c: (gst_bin_restore_thyself):
7533           chain to parent restore so the bins get restored correctly
7534           in the editor
7535
7536 2004-07-03  David Schleef  <ds@schleef.org>
7537
7538         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7539         Actually do something in these functions, like before the big
7540         caps change.  (bug #145137)
7541
7542 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7543
7544         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
7545         (gst_element_get_compatible_pad_filtered):
7546         * gst/gstthread.c: (gst_thread_main_loop):
7547           more debugging
7548
7549 2004-07-02  David Schleef  <ds@schleef.org>
7550
7551         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
7552         * gst/gstobject.h:
7553         * gst/gstparse.h:
7554         * gst/gsttrace.h:
7555         * gst/gstxml.h:
7556
7557 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7558
7559         * gst/gstpad.c: (gst_pad_check_schedulers),
7560         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7561         (gst_pad_link_prepare):
7562           revert until testsuite is fixed
7563
7564 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7565
7566         * testsuite/Makefile.am:
7567         * testsuite/caps/filtercaps.c: (main):
7568         * testsuite/clock/clock1.c: (main):
7569         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
7570           fix some more tests
7571
7572 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7573
7574         * testsuite/cleanup/cleanup1.c: (create_pipeline):
7575         * testsuite/cleanup/cleanup2.c: (create_pipeline):
7576         * testsuite/cleanup/cleanup4.c: (main):
7577           fix testsuite
7578
7579 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7580
7581         * libs/gst/control/control.c:
7582         * libs/gst/control/dparam.c:
7583         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
7584         * libs/gst/control/dparammanager.c:
7585         * libs/gst/control/dparammanager.h:
7586         * testsuite/dynparams/Makefile.am:
7587         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
7588         (gst_dptest_change_state), (gst_dptest_chain), (main):
7589           fix testcase for dparams
7590           add debugging category
7591
7592 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7593
7594         * testsuite/Rules:
7595           change path
7596
7597 2004-07-02  Benjamin Otte  <otte@gnome.org>
7598
7599         * tests/.cvsignore:
7600         * tests/Makefile.am:
7601         * tests/mass_elements.c: (gst_get_current_time), (main):
7602           add simple benchmark to test various speeds of fakesrc ! identity !
7603           identity ! ... ! fakesink.
7604           Usage: mass_elements [num_identities] [num_buffers]
7605           If not specified they default to 1000.
7606
7607 2004-07-02  Benjamin Otte  <otte@gnome.org>
7608
7609         * gst/gstpad.c: (gst_pad_check_schedulers),
7610         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7611         (gst_pad_link_prepare):
7612           check that pads that get linked belong to the same manager. The old
7613           code allowed linking elements before putting them into bins, so it
7614           worked to link them and then put them in different threads, which
7615           lead to weird behaviour.
7616           Since this effectively disallows linking elements before putting
7617           them in a bin, some applications might not work after this and error
7618           out. If these applications are too critical, we might need to revert
7619           that patch. Please test this before the next release...
7620
7621 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7622
7623         * gst/gstpad.c: (gst_pad_get_caps):
7624           throw an error if the getcaps function does not return a subset of
7625           the template caps.
7626         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
7627           make disconts without position info an error in debugging
7628         * tests/spidey_bench.c: (handoff), (main):
7629           don't count first try when averaging
7630
7631 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7632
7633         * gst/gstplugin.c: (gst_plugin_load_file):
7634           figure out problem with dynamic test
7635
7636 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7637
7638         * docs/gst/Makefile.am:
7639           fix docs build
7640
7641 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7642
7643         * po/POTFILES.in:
7644         * po/af.po:
7645         * po/az.po:
7646         * po/en_GB.po:
7647         * po/fr.po:
7648         * po/nl.po:
7649         * po/sr.po:
7650         * po/sv.po:
7651         * po/tr.po:
7652         * po/uk.po:
7653         * tools/gst-register.c: (plugin_added_func), (main):
7654           i18n-ize -register, fix plural
7655
7656 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7657
7658         * gst/elements/gstidentity.c: (gst_identity_class_init),
7659         (gst_identity_init), (gst_identity_chain),
7660         (gst_identity_set_property), (gst_identity_get_property):
7661         * gst/elements/gstidentity.h:
7662           check for perfect stream
7663
7664 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7665
7666         * gst/elements/gstidentity.c: (gst_identity_chain):
7667           print offset_end
7668
7669 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7670
7671         * docs/gst/Makefile.am:
7672         * docs/gst/gstreamer-docs.sgml:
7673           doc fixes
7674
7675 2004-06-24  David Schleef  <ds@schleef.org>
7676
7677         * autogen.sh:  Remove call to env, since the buildbot isn't
7678         broken anymore.
7679
7680 2004-06-24  Wim Taymans  <wim@fluendo.com>
7681
7682         * gst/elements/Makefile.am:
7683         * gst/elements/gstelements.c:
7684         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
7685         (gst_multifdsink_class_init), (gst_multifdsink_init),
7686         (gst_multifdsink_add), (gst_multifdsink_remove),
7687         (gst_multifdsink_clear), (gst_multifdsink_chain),
7688         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
7689         * gst/elements/gstmultifdsink.h:
7690         Added an element that writes to multiple filedescriptors at once.
7691
7692 2004-06-24  Benjamin Otte  <otte@gnome.org>
7693
7694         * gst/parse/grammar.y:
7695           don't try to link elements before they have been added to bins
7696
7697 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7698
7699         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
7700         (gst_file_pad_get_length):
7701         * libs/gst/bytestream/filepad.h:
7702           add 2 new functions
7703
7704 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7705
7706         * docs/gst/gstreamer-sections.txt:
7707         remove from docs, the define that Benjamin removed from gstelement.h
7708
7709 2004-06-22  Benjamin Otte  <otte@gnome.org>
7710
7711         * gst/gstelement.h:
7712           remove define that referenced a nonexisting GstElement struct member
7713
7714 2004-06-20  Benjamin Otte  <otte@gnome.org>
7715
7716         * gst/gstdata.c: (gst_data_is_writable):
7717           whoops, return values were wrong, so writable data was marked as
7718           non-writable and vice versa. (fixes #143953, spotted by Francis
7719           Labonte)
7720           Shows how rarely we need to copy data ;)
7721
7722 2004-06-20  Benjamin Otte  <otte@gnome.org>
7723
7724         * testsuite/schedulers/.cvsignore:
7725         * testsuite/schedulers/Makefile.am:
7726         * testsuite/schedulers/143777-2.c: (main):
7727           add test for opt breakage in bug #143777
7728
7729 2004-06-20  Benjamin Otte  <otte@gnome.org>
7730
7731         * gst/gstpad.c: (gst_pad_call_chain_function):
7732           check for if we were unlinked while inside the chainfunction (fixes
7733           entrygthread having issues with #143777)
7734         * testsuite/schedulers/143777.c: (main):
7735         * testsuite/schedulers/Makefile.am:
7736           add a test for that fix
7737
7738 2004-06-20  Benjamin Otte  <otte@gnome.org>
7739
7740         * gst/gstvalue.c: (gst_value_set_int_range):
7741           test that start is smaller then end
7742         * libs/gst/bytestream/Makefile.am:
7743         * libs/gst/bytestream/filepad.c: 
7744         * libs/gst/bytestream/filepad.h:
7745           add GstFilePad - a pad that behaves like a FILE*
7746         * testsuite/bytestream/.cvsignore:
7747         * testsuite/bytestream/Makefile.am:
7748         * testsuite/bytestream/filepadsink.c: 
7749           test for the GstFilePad
7750
7751 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7752
7753         * gst/elements/gstidentity.c: (gst_identity_class_init),
7754         (gst_identity_init), (gst_identity_set_clock),
7755         (gst_identity_chain), (gst_identity_set_property),
7756         (gst_identity_get_property):
7757         * gst/elements/gstidentity.h:
7758         * gst/gstclock.c: (gst_clock_id_wait):
7759           add a "sync" property to sync to the clock
7760
7761 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7762
7763         * gst/gstelementfactory.c: (gst_element_factory_create):
7764           make the freakin "elementfactory bla has no type" message more
7765           useful. So we actually can do something when someone shows up
7766           complaining about it.
7767
7768 2004-06-15  Johan Dahlin  <johan@gnome.org>
7769
7770         * tools/gst-inspect.c (main): Fallback to plugin if no element is
7771         found. This matches the old behavior better. Thanks to Thomas for
7772         pointing out.
7773
7774 2004-06-14  David Schleef  <ds@schleef.org>
7775
7776         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
7777         -fomit-frame-pointer.  Appears to generate correct code in
7778         other cases as well.
7779
7780 2004-06-14  Johan Dahlin  <johan@gnome.org>
7781
7782         * tools/gst-inspect.c (main): Add two new command line options: -a
7783         to print all elements and -n to print the name on each line. Also
7784         fix some error reporting.
7785         (main): Simplify, remove -n and always print names if -a is specified
7786
7787 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
7788
7789         * win32/gstconfig.h:
7790         * win32/GSTreamer.vcproj:
7791         * win32/Makefile:
7792         * gst/gstconfig.h.in:
7793         * gst/gst.h:
7794         * gst/gstbin.h:
7795         * gst/gstelement.h:
7796         * gst/gstevent.h:
7797         * gst/gstobject.h:
7798         * gst/gstpad.h:
7799         * docs/gst/gstreamer-sections.txt:
7800         * docs/gst/tmpl/gstconfig.sgml:
7801           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
7802
7803 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7804         * docs/gst/gstreamer-sections.txt:
7805         * docs/gst/tmpl/gstconfig.sgml:
7806         Add the GSTREAMER_EXPORT macro to the docs
7807
7808 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7809
7810         * tools/gst-compprep.c: (handle_xmlerror), (main):
7811         Add a check for the version that introduced SetStructuredError to fix
7812         the build on FC1
7813
7814 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7815
7816         * win32/msvc71.sln:
7817         * win32/testsuite/:
7818           prepare to compile the testsuite with MSVC
7819
7820 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7821
7822         * docs/manual/win32.xml:
7823           attempt to transform the Win32 README into an XML doc
7824
7825 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7826
7827         * gst/gst.c:
7828         * gst/gstbin.*:
7829         * gst/config.h.in:
7830         * gst/gstelement.*:
7831         * gst/gstevent.h:
7832         * gst/gstobject.*:
7833         * gst/gstpad.h:
7834         * tools/gst-register.c:
7835         * win32/gstreamer.def:
7836           extern symbols are now exported for the Windows DLL
7837
7838 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7839
7840         * gst/gstinfo.h:
7841           fix a problem to enable/disable DEBUG under MSVC
7842
7843 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7844
7845         * win32/:
7846           enable more debug code in DEBUG build
7847
7848 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7849
7850         * win32/config.h:
7851         * gst/gst-i18n-app.h:
7852           enable NLS under Windows
7853
7854 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
7855         * tools/gst-compprep.c: (handle_xmlerror), (main):
7856           Make an error that baffled me a bit clearer
7857
7858 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7859
7860         * gst/gstqueue.c:
7861           don't use g_queue_get_length () because it's 2.4, use ->length
7862
7863 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
7864
7865         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
7866
7867         * tools/gst-inspect.c: (print_signal_info):
7868           don't free random data twice. (fixes #144185)
7869
7870 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7871
7872         * gst/gstqueue.c:
7873         * gst/gstqueue.h:
7874           fix removing from the wrong queue on event timeout
7875           fix disposing of the event queue by casting correctly
7876           add mutexes for handling the event queue
7877           someone was sleeping when fixing queue last time around :)
7878
7879 2004-06-10  Johan Dahlin  <johan@gnome.org>
7880
7881         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
7882         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
7883
7884 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7885
7886         * docs/random/gdp:
7887         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
7888         * libs/gst/dataprotocol/dataprotocol.c:
7889         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7890         (gst_dp_buffer_from_header):
7891         * libs/gst/dataprotocol/dataprotocol.h:
7892         * libs/gst/dataprotocol/dp-private.h:
7893           rev version to 0.1, add buffer flags and copy them
7894
7895 2004-06-09  Johan Dahlin  <johan@gnome.org>
7896
7897         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
7898         the flags from the buffer we're copying.
7899
7900 2004-06-09  Wim Taymans  <wim@fluendo.com>
7901
7902         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
7903         * gst/elements/gstidentity.c: (gst_identity_init),
7904         (gst_identity_chain):
7905         Print more buffer info in fakesink.
7906         Make identity output similar to fakesink.
7907
7908 2004-06-07  Daniel Gazard  <dany42@free.fr>
7909
7910         reviewed by Benjamin Otte  <otte@gnome.org>
7911
7912         * configure.ac:
7913           fix cross compiling not working. (fixes #143741)
7914
7915 2004-06-07  Benjamin Otte  <otte@gnome.org>
7916
7917         * gst/gstelement.c: (gst_element_set_time_delay):
7918           add failure check
7919         * gst/gstinfo.h:
7920           put brackets around macro arguments of GST_TIME_ARGS, add note to
7921           move it to correct header in 0.9
7922
7923 2004-06-07  Benjamin Otte  <otte@gnome.org>
7924
7925         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
7926         (gst_file_index_load), (_file_index_id_save_entries),
7927         (gst_file_index_commit), (gst_file_index_add_association),
7928         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
7929         (gst_file_index_plugin_init):
7930           make debugging use a default category
7931
7932 2004-06-06  David Moore  <dcm@acm.org>
7933
7934         reviewed by Benjamin Otte  <otte@gnome.org>
7935
7936         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
7937         (gst_fdsrc_change_state):
7938           reset offset counter when going READY => PAUSED. (fixes #142903)
7939
7940 2004-06-06  ed@catmur.co.uk
7941
7942         reviewed by Benjamin Otte  <otte@gnome.org>
7943
7944         * gst/registries/gstxmlregistry.c:
7945         (gst_xml_registry_rebuild_recurse):
7946           don't rely on g_dir_open to figure out if a file is a directory, use
7947           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
7948           directories. (fixes #142850)
7949
7950 2004-06-06  Benjamin Otte  <otte@gnome.org>
7951
7952         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
7953           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
7954         * libs/gst/bytestream/adapter.c:
7955         * libs/gst/bytestream/adapter.h:
7956           fix copyright in header and typo in debugging category name
7957
7958 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7959
7960         * configure.ac:
7961           bump nano to cvs
7962
7963 === release 0.8.3 ===
7964
7965 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7966
7967         * configure.ac:
7968           update libtool versioning
7969           do a new release
7970         * docs/gst/tmpl/gstelement.sgml:
7971         * docs/gst/tmpl/gsttypes.sgml:
7972         * gst/gstinfo.c: (_gst_debug_init):
7973           put back GST_CAT_DATAFLOW to fix API breakage
7974
7975 2004-06-04  David Schleef  <ds@schleef.org>
7976
7977         * autogen.sh: Add a temporary 'env' to test buildbot problems.
7978
7979 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7980
7981         * configure.ac:
7982           bump nano to cvs
7983
7984 === release 0.8.2 ===
7985
7986 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7987
7988         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
7989           check GST_DEBUG environment variable which is parsed the same way
7990           as --gst-debug=
7991
7992 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7993
7994         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
7995                             gstmd5sink.c gstshaper.c gsttee.c
7996                             gsttypefindelement.c
7997         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
7998
7999           - removing trailing commas at end of enums
8000             it is correct C99 code but C90 compilers would complain
8001             (AIX, Forte, ...)
8002             ('should' fix #143290, at least partially)
8003
8004 2004-05-27  Wim Taymans  <wim@fluendo.com>
8005
8006         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8007         (chain_group_set_enabled), (create_group), (add_to_group),
8008         (merge_groups), (setup_group_scheduler), (group_elements),
8009         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8010         Don't try to follow the pad connections with other groups
8011         when a loop based element is added to the scheduler because
8012         the bin will inform the scheduler about the pad links a little
8013         later.
8014
8015 2004-05-27  Wim Taymans  <wim@fluendo.com>
8016
8017         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8018         (remove_from_chain), (chain_group_set_enabled),
8019         (setup_group_scheduler), (group_element_set_enabled),
8020         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8021         (gst_opt_scheduler_show):
8022         Elements without a group can do a state change as well, just wait
8023         with the setup of the scheduling function when it is added to a
8024         chain.
8025
8026 2004-05-27  Wim Taymans  <wim@fluendo.com>
8027
8028         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8029         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8030         (merge_groups), (setup_group_scheduler),
8031         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8032         (gst_opt_scheduler_show):
8033         Fixes to maintain internal consistency of the scheduler data
8034         structures. 
8035          - adding an enabled group to a chain should increment the
8036            number of enabled elements in that chain.
8037          - removing an enabled group from a chain could disable the
8038            chain.
8039          - removing a disabled group from a chain could enable the
8040            chain.
8041          - add g_assert when internal inconsistency is detected.
8042          - adding an element to a group could increase the number of
8043            links this group has with other groups.
8044          - merging two groups also merges the chains.
8045          - also show group links in the _show method.
8046            
8047
8048 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8049
8050         * gst/gstcaps.c: (gst_caps_structure_simplify):
8051           don't print error messages when there is no error
8052         * gst/gstvalue.c: (gst_value_compare_int_range):
8053           compare the second value, too
8054         * testsuite/caps/Makefile.am:
8055         * testsuite/caps/random.c: (assert_on_error), (main):
8056           add tests to make sure the two things above are checked for
8057
8058 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8059
8060         * configure.ac:
8061         * libs/gst/dataprotocol/Makefile.am:
8062         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8063         * libs/gst/dataprotocol/dataprotocol.h:
8064           wrap header in GST_ENABLE_NEW.  make code use it
8065
8066 2004-05-23  Johan Dahlin  <johan@gnome.org>
8067
8068         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8069         so verbose and print GstElement signal names all the time.
8070
8071 2004-05-22  David Schleef  <ds@schleef.org>
8072
8073         * gst/registries/gstxmlregistry.c:
8074         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8075         (bug #142957)
8076
8077 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8078
8079         * configure.ac:
8080           scrub cflags for glib2 so gcc doesn't complain when glib is in
8081           /usr/local
8082
8083 2004-05-21  Johan Dahlin  <johan@gnome.org>
8084
8085         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8086         __GNUC__, patch from Brian Cameron, fixes bug #142804
8087
8088 2004-05-20  David Schleef  <ds@schleef.org>
8089
8090         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8091         comparison code.  (bug #142819)
8092
8093 2004-05-20  Wim Taymans  <wim@fluendo.com>
8094
8095         * gst/gstbuffer.c: (gst_buffer_default_copy):
8096         * gst/gstbuffer.h:
8097         Added Comment to a flag.
8098         copy relevant flags in _buffer_copy.
8099
8100 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8101
8102         reviewed by: Wim Taymans <wim at fluendo dot com>
8103
8104         * gst/gstbuffer.h:
8105           add GST_BUFFER_IN_CAPS buffer flag
8106         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8107         (gst_structure_parse_any_list), (gst_structure_parse_list),
8108         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8109         * gst/gstvalue.c: (gst_value_serialize_any_list),
8110         (gst_value_transform_any_list_string),
8111         (gst_value_list_prepend_value), (gst_value_list_append_value),
8112         (gst_value_list_get_size), (gst_value_list_get_value),
8113         (gst_value_transform_list_string),
8114         (gst_value_transform_fixed_list_string),
8115         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8116         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8117         (_gst_value_initialize):
8118         * gst/gstvalue.h:
8119           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8120           < , > as a format.
8121         * testsuite/caps/string-conversions.c: (main):
8122           add regression tests for < >
8123
8124 2004-05-20  Johan Dahlin  <johan@gnome.org>
8125
8126         * docs/gst/Makefile.am (all-local): Re-add
8127
8128 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8129
8130         * docs/gst/Makefile.am:
8131         * docs/gst/gstreamer-docs.sgml:
8132         * docs/libs/Makefile.am:
8133         * docs/libs/gstreamer-libs-docs.sgml:
8134           fix distcheck issues
8135
8136 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8137
8138         * libs/gst/dataprotocol/Makefile.am:
8139           add to autotest
8140
8141 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8142
8143         * libs/gst/dataprotocol/Makefile.am:
8144         * libs/gst/dataprotocol/dataprotocol.c:
8145         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8146         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8147         * libs/gst/dataprotocol/dp-private.h:
8148           use GST macros to read/write fixed length ints
8149           add some more asserts
8150
8151 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8152
8153         * docs/libs/gstreamer-libs-docs.sgml:
8154         * docs/libs/gstreamer-libs-sections.txt:
8155           remove idct and putbits
8156         * configure.ac:
8157         * docs/libs/tmpl/gstdataprotocol.sgml:
8158         * libs/gst/Makefile.am:
8159         * libs/gst/dataprotocol/Makefile.am:
8160         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8161         (buffer_test), (caps_test), (event_test), (main):
8162         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8163         (gst_dp_dump_byte_array), (gst_dp_init),
8164         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8165         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8166         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8167         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8168         (gst_dp_validate_header), (gst_dp_validate_payload),
8169         (gst_dp_validate_packet), (plugin_init):
8170         * libs/gst/dataprotocol/dataprotocol.h:
8171         * libs/gst/dataprotocol/dp-private.h:
8172           add dataprotocol
8173
8174 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8175
8176         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8177           fix int variable deserialization and add a helper so we can actually
8178           debug this.
8179
8180 2004-05-18  David Schleef  <ds@schleef.org>
8181
8182         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8183           argv[0].  Calling yourself is probably not the best way to
8184           construct a test like this, btw.
8185
8186 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8187
8188         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8189           don't claim to be more intelligent than a scheduler when the
8190           scheduler claims the pipeline is stopped
8191         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8192         (safe_cothread_destroy),
8193         (gst_entry_scheduler_remove_all_cothreads),
8194         (gst_entry_scheduler_reset), (_remove_cothread),
8195         (gst_entry_scheduler_state_transition):
8196           hold off cothread destruction if we're not in main cothread
8197         * configure.ac:
8198         * testsuite/Makefile.am:
8199           add new test dir
8200         * testsuite/schedulers/.cvsignore:
8201         * testsuite/schedulers/Makefile.am:
8202           add tests
8203         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8204           check relinking and adding/removing elements from a running pipeline
8205         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8206           check unlinking in a running pipeline
8207         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8208           check unreffing a running pipeline
8209         * testsuite/schedulers/useless_iteration.c: (main):
8210           check iterating a pipeline that contains running threads works
8211
8212 2004-05-18  David Schleef  <ds@schleef.org>
8213
8214         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8215           is false.
8216
8217 2004-05-18  Wim Taymans  <wim@fluendo.com>
8218
8219         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8220         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8221         Fixed an error introduced with patch for 1.63. When setting
8222         a get based element as the entry point in a group, make sure
8223         to mark the group as GET based.
8224
8225 2004-05-18  Wim Taymans  <wim@fluendo.com>
8226
8227         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8228         (setup_group_scheduler), (loop_group_schedule_function),
8229         (gst_opt_scheduler_pad_link):
8230         Added some more debug info and fixed a bug where the group
8231         type was set to LOOP but it was in fact unknown.
8232
8233 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8234
8235         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8236           make resetting scheduler work twice in a row
8237
8238 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8239
8240         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8241         (CREATE_USERIALIZATION), (_gst_value_initialize),
8242         (gst_value_compare_float), (gst_value_serialize_float),
8243         (gst_value_deserialize_float), (gst_value_compare_enum),
8244         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8245           add serialization and comparison functions for long, int64, enum and
8246           float values
8247         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8248           use best serialization function in type hierarchy instead of only a
8249           matching one. This is required for enums to work.
8250         * gst/parse/grammar.y:
8251           use gst_caps_deserialize
8252         * testsuite/parse/Makefile.am:
8253           parse1 now works
8254         * testsuite/parse/parse1.c: (main):
8255           remove aggregator check, aggregator is broken, this test works now
8256           but fails because of bug #138012
8257         * testsuite/parse/parse2.c: (main):
8258           s/xvideosink/xvimagesink - this test looks a lot like we should
8259           disable it
8260
8261 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8262
8263         * gst/gstelement.c: (gst_element_class_init):
8264           whoops, store the signal id correctly
8265         * gst/schedulers/gstbasicscheduler.c:
8266         (gst_basic_scheduler_chain_wrapper):
8267           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8268           chain function isn't linked
8269
8270 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8271         * configure.ac:
8272         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8273         support until we decide where the flags should be used
8274         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8275         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8276         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8277         Output refused caps in the debug info
8278
8279 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8280
8281         * gst/elements/gstidentity.c: (gst_identity_chain):
8282           add duration debug
8283         * gst/gstinfo.c: (gst_debug_log_default):
8284           add timestamp
8285
8286 2004-05-13  Benjamin Otte  <otte@gnome.org>
8287
8288         * gst/gstpipeline.c: (gst_pipeline_dispose),
8289         (gst_pipeline_change_state):
8290           call gst_scheduler_reset on dispose (fixes #141416)
8291
8292 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8293
8294         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8295           compute mapsize correctly
8296         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8297           use correct datatypes when calling a varargs function
8298         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8299           push a DISCONT event as first thing
8300         * gst/gst_private.h:
8301         * gst/gstinfo.c: (_gst_debug_init):
8302           remove GST_DATAFLOW debugging category
8303         * gst/gstbin.c: (gst_bin_iterate):
8304           use GST_SCHEDULING category
8305         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8306         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8307         (gst_pad_call_get_function):
8308           add GST_DATAFLOW to easily track flow of buffers or events.
8309         * gst/gstqueue.c: (gst_queue_get_type),
8310         (gst_queue_handle_pending_events), (gst_queue_chain),
8311         (gst_queue_get), (gst_queue_handle_src_event):
8312           use own static debugging category GST_DATAFLOW for dataflow,
8313           use DEBUG category for showing which path events go, use LOG
8314           category for buffers.
8315
8316 2004-05-10  David Schleef  <ds@schleef.org>
8317
8318         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8319
8320 2004-05-10  David Schleef  <ds@schleef.org>
8321
8322         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8323         symbols, because otherwise we don't know what they are.  Thanks,
8324         the GStreamer team.
8325         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8326
8327 2004-05-10  David Schleef  <ds@schleef.org>
8328
8329         (from Steve Lhomme)
8330         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8331         are deleted.  Fix.
8332         * win32/Makefile.inspect:
8333         * win32/Makefile.launch:
8334         * win32/Makefile.register:
8335
8336 2004-05-10  David Schleef  <ds@schleef.org>
8337
8338         * gst/gstinfo.h: Add missing inline function.
8339         * gst/gsttrace.c: add include
8340         * gst/parse/grammar.y: remove unused code
8341         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8342         more portable.
8343         * tools/gst-register.c: wrap unistd.h
8344         
8345         More additions/fixes from Steve for the MSVC build.
8346         * win32/GStreamer.vcproj:
8347         * win32/Makefile:
8348         * win32/Makefile.inspect:
8349         * win32/Makefile.launch:
8350         * win32/Makefile.register:
8351         * win32/README.txt:
8352         * win32/gst-inspect.vcproj:
8353         * win32/gst-launch.vcproj:
8354         * win32/gst-register.vcproj:
8355         * win32/gstbytestream.def:
8356         * win32/gstbytestream.vcproj:
8357         * win32/gstconfig.h:
8358         * win32/gstelements.def:
8359         * win32/gstelements.vcproj:
8360         * win32/gstenumtypes.c:
8361         * win32/gstenumtypes.h:
8362         * win32/gstoptimalscheduler.def:
8363         * win32/gstoptimalscheduler.vcproj:
8364         * win32/gstreamer.def:
8365         * win32/gstspider.def:
8366         * win32/gstspider.vcproj:
8367         * win32/gstversion.h:
8368         * win32/msvc71.sln:
8369
8370 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8371
8372         * gst/gstelement.c: (gst_element_class_init),
8373         (gst_element_no_more_pads):
8374         * gst/gstelement.h:
8375           add gst_element_no_more_pads and the "no-more-pads" signal
8376
8377 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8378
8379         * gst/gstregistry.c: (gst_registry_add_plugin):
8380           refuse to add plugins when a plugin with same name is already
8381           registered. Fixes a bunch of "How to remove plugins?" issues.
8382           May lead to other problems though, let's test
8383
8384 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8385
8386         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8387         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8388         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8389
8390 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8391
8392         * tests/Makefile.am: fix am16 issue
8393
8394 2004-05-09  Benjamin Otte  <otte@gnome.org>
8395
8396         * libs/gst/bytestream/Makefile.am:
8397           we should indeed add .c files to makefiles or they won't be built
8398           (d'oh)
8399
8400 2004-05-08  Benjamin Otte  <otte@gnome.org>
8401
8402         * gst/gstpad.c: (gst_pad_proxy_fixate):
8403           really reduce the set of caps
8404
8405 2004-05-08  Benjamin Otte  <otte@gnome.org>
8406
8407         * tests/Makefile.am:
8408         * tests/spidey_bench.c: (handoff), (main):
8409           add benchmark to test how long spider needs to create a pipeline
8410
8411 2004-05-08  Benjamin Otte  <otte@gnome.org>
8412
8413         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8414           mark links as unengaged when unnegotiating instead of deactivating.
8415           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8416
8417 2004-05-08  Benjamin Otte  <otte@gnome.org>
8418
8419         * docs/manual/helloworld.xml:
8420           s/audiosink/osssink (patch by Patrick Guimond)
8421
8422 2004-05-07  David Schleef  <ds@schleef.org>
8423
8424         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8425         since it contains important stuff.
8426
8427 2004-05-07  David Schleef  <ds@schleef.org>
8428
8429         * testsuite/caps/caps.c: (test3), (main): A check for appending
8430         ANY caps.
8431
8432 2004-05-07  David Schleef  <ds@schleef.org>
8433
8434         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8435         which may contain commas.  Fixes detection of -Wa,-mregnames
8436
8437 2004-05-06  David Schleef  <ds@schleef.org>
8438
8439         Changes to handle compilers that don't have variadic macro
8440         support.  In particular, glib headers define some inlines
8441         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
8442         builds.
8443         * gst/Makefile.am:
8444         * gst/cothreads.c:
8445         * gst/elements/gstfdsink.c:
8446         * gst/elements/gstfdsrc.c:
8447         * gst/elements/gstfilesink.c:
8448         * gst/elements/gstfilesrc.c:
8449         * gst/gst_private.h:
8450         * gst/gstatomic.c:
8451         * gst/gstcaps.c: (gst_caps_append):
8452         * gst/gstcpu.c: (gst_cpuid_i386):
8453         * gst/gstelement.c:
8454         * gst/gsterror.c:
8455         * gst/gstfilter.c:
8456         * gst/gstinfo.h:
8457         * gst/gstprobe.c:
8458         * gst/gstquery.c:
8459         * gst/gstregistry.c:
8460         * gst/gststructure.c:
8461         * gst/gsttaginterface.c:
8462         * gst/gsttrace.c: (gst_trace_new):
8463         * gst/gsttrashstack.c:
8464         * gst/gsturi.c:
8465         * gst/gstvalue.c:
8466         * gst/parse/grammar.y:
8467         * gst/parse/parse.l:
8468         * tools/gst-inspect.c: (main):
8469         * tools/gst-launch.c: (main):
8470         * tools/gst-xmlinspect.c: (PUT_STRING):
8471
8472 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8473
8474         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8475         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8476         * gst/elements/gstfilesrc.h:
8477           send NEW_MEDIA events correctly
8478         * gst/elements/gsttypefindelement.c: (start_typefinding),
8479         (gst_type_find_element_handle_event):
8480           restart typefinding when we get a NEW_MEDIA event
8481         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
8482         (gst_bin_dispose):
8483           don't die when someone removes elements in callbacks
8484         * gst/gstelement.c: (gst_element_change_state):
8485           improve debugging
8486         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
8487           we need a NEW_MEDIA event to engage a link
8488         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
8489           don't g_print debugging stuff
8490         * testsuite/caps/simplify.c: (check_caps):
8491
8492 2004-05-04  Benjamin Otte  <otte@gnome.org>
8493
8494         * gst/parse/grammar.y:
8495           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
8496
8497 2004-05-04  Benjamin Otte  <otte@gnome.org>
8498
8499         * testsuite/caps/renegotiate.c: (main):
8500           improve output in error case
8501
8502 2004-05-04  Benjamin Otte  <otte@gnome.org>
8503
8504         * gst/parse/grammar.y:
8505           fix assert to not trigger when there's no error argument
8506         * gst/parse/parse.l:
8507           fix definition of caps to allow more than two structures
8508         * testsuite/caps/Makefile.am:
8509         * testsuite/caps/renegotiate.c: (main):
8510           it's sinesrc and works in that case
8511
8512 2004-05-04  Wim Taymans  <wim@fluendo.com>
8513
8514         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8515         (group_dec_link), (gst_opt_scheduler_pad_unlink):
8516         when removing an element from a group, we always need to
8517         decrement the link count that this group had with other 
8518         groups through the element.
8519         added an extra assert to catch inconsistencies when decrementing
8520         the link count.
8521
8522 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8523
8524         * configure.ac:
8525         * docs/gst/Makefile.am:
8526         * docs/gst/gstreamer-sections.txt:
8527         * docs/gst/tmpl/gstcompat.sgml:
8528         * examples/appreader/Makefile.am:
8529         * examples/cutter/Makefile.am:
8530         * examples/events/Makefile.am:
8531         * examples/helloworld/Makefile.am:
8532         * examples/helloworld2/Makefile.am:
8533         * examples/launch/Makefile.am:
8534         * examples/manual/Makefile.am:
8535         * examples/mixer/Makefile.am:
8536         * examples/pingpong/Makefile.am:
8537         * examples/plugins/Makefile.am:
8538         * examples/queue/Makefile.am:
8539         * examples/queue2/Makefile.am:
8540         * examples/queue3/Makefile.am:
8541         * examples/queue4/Makefile.am:
8542         * examples/retag/Makefile.am:
8543         * examples/thread/Makefile.am:
8544         * examples/typefind/Makefile.am:
8545         * examples/xml/Makefile.am:
8546         * gst/Makefile.am:
8547         * gst/autoplug/Makefile.am:
8548         * gst/elements/Makefile.am:
8549         * gst/gstcompat.h:
8550         * gst/indexers/Makefile.am:
8551         * gst/parse/Makefile.am:
8552         * gst/registries/Makefile.am:
8553         * gst/schedulers/Makefile.am:
8554         * libs/gst/bytestream/Makefile.am:
8555         * libs/gst/control/Makefile.am:
8556         * libs/gst/getbits/Makefile.am:
8557         * po/af.po:
8558         * po/az.po:
8559         * po/en_GB.po:
8560         * po/fr.po:
8561         * po/nl.po:
8562         * po/sr.po:
8563         * po/sv.po:
8564         * po/tr.po:
8565         * po/uk.po:
8566         * tests/Makefile.am:
8567         * tests/bufspeed/Makefile.am:
8568         * tests/instantiate/Makefile.am:
8569         * tests/memchunk/Makefile.am:
8570         * tests/muxing/Makefile.am:
8571         * tests/negotiation/Makefile.am:
8572         * tests/probes/Makefile.am:
8573         * tests/sched/Makefile.am:
8574         * tests/seeking/Makefile.am:
8575         * tests/threadstate/Makefile.am:
8576         * testsuite/caps/Makefile.am:
8577         * testsuite/cleanup/Makefile.am:
8578         * testsuite/dlopen/Makefile.am:
8579         * testsuite/dynparams/Makefile.am:
8580         * testsuite/plugin/Makefile.am:
8581         * testsuite/states/Makefile.am:
8582         * tools/Makefile.am:
8583           reorganize compile/link flags to be consistent
8584           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
8585
8586 2004-05-04  David Schleef  <ds@schleef.org>
8587
8588         The "once more, with feeling" check-in.
8589         * testsuite/caps/Makefile.am: dist caps_strings
8590         * testsuite/caps/renegotiate.c: (main): This test triggers a
8591           segfault in the core.  Marking as failing.
8592
8593 2004-05-03  David Schleef  <ds@schleef.org>
8594
8595         * testsuite/caps/deserialize.c: (main): Fix problems noticed
8596           by the build bots.
8597         * testsuite/caps/renegotiate.c: (main): Same.
8598
8599 2004-05-03  David Schleef  <ds@schleef.org>
8600
8601         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
8602
8603 2004-05-03  David Schleef  <ds@schleef.org>
8604
8605         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
8606           variable to find our source file.
8607
8608 2004-05-03  David Schleef  <ds@schleef.org>
8609
8610         * configure.ac:  Link plugins with libgstreamer and dependent
8611           libraries
8612         * testsuite/caps/Makefile.am:
8613         * testsuite/caps/caps_strings:
8614         * testsuite/caps/deserialize.c: (main): Add a little test to slog
8615           through a file of caps strings and test each one
8616
8617 2004-05-04  Benjamin Otte  <otte@gnome.org>
8618
8619         * libs/gst/bytestream/Makefile.am:
8620         * libs/gst/bytestream/adapter.c: 
8621         * libs/gst/bytestream/adapter.h:
8622           add GstAdapter, similar to bytestream, but doesn't require ugly event
8623           handling or uglier loopbased elements
8624
8625 2004-05-03  David Schleef  <ds@schleef.org>
8626
8627         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
8628         * testsuite/caps/erathostenes.c:
8629         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
8630
8631 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8632
8633         * docs/pwg/pwg.xml:
8634           remove hardcoded stylesheet path (duh)
8635         * docs/random/release:
8636         * docs/gst/gstreamer-sections.txt:
8637         * gst/Makefile.am:
8638         * gst/gst.h:
8639         * gst/gst_private.h:
8640         * gst/gstcaps.c:
8641         * gst/gstevent.c:
8642         * gst/gstformat.c:
8643         * gst/gstinfo.c:
8644         * gst/gstinfo.h:
8645         * gst/gstinterface.c:
8646         * gst/gstmemchunk.c:
8647         * gst/gstprobe.c:
8648         * gst/gstquery.c:
8649         * gst/gstregistry.c:
8650         * gst/gstregistrypool.c:
8651         * gst/gststructure.c:
8652         * gst/gsttaginterface.c:
8653         * gst/gstthread.c:
8654         * gst/gsttrace.c:
8655         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
8656         * gst/gsturi.c:
8657         * gst/gstvalue.c:
8658           deprecate gst_info; remove gstlog.h
8659    
8660
8661 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8662
8663         * Makefile.am:
8664         * po/en_GB.po:
8665         * po/sv.po:
8666         * po/uk.po:
8667           updated translations
8668
8669 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8670
8671         * gst/gstbin.c: (gst_bin_dispose):
8672           better debugging
8673
8674 2004-05-03  Johan Dahlin  <johan@gnome.org>
8675
8676         * gst/schedulers/gstoptimalscheduler.c
8677         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
8678         really is a GstElement. Avoids critical when running gst-launch -v
8679         and a oggdemux/decoding pipeline.
8680
8681 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8682
8683         * docs/gst/tmpl/gstpipeline.sgml :
8684         * docs/manual/elements-api.xml :
8685                 doc fix by Patrick Guimond (Protector) from devel ML
8686                 reviewed by ronald
8687
8688 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8689
8690         * docs/gst/Makefile.am :
8691         * docs/libs/Makefile.am :
8692                 apply a patch from Arwed v. Merkatz so that gtk-doc
8693                 generated docs install (same for .devhelp file)
8694                 (fixes part 1 of #138836)
8695
8696 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8697
8698         * docs/faq/dependencies.xml: typo
8699         * docs/faq/getting.xml :
8700             - fix download URL for new gstreamer site
8701             - hide sf.net download page as latest version aren't there
8702             - fix apt URLs
8703             - fill "get via CVS" paragraph (link to dev page on the site)
8704         * docs/faq/general.xml:
8705             hide status tables as they no more exists
8706             change case on plugins license file to reflect reality
8707         * docs/faq/troubleshooting.xml:
8708             remove the wiki question/answer as there is no more wiki
8709
8710 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8711
8712         * gst/gsterror.h:
8713           include the headers needed for declarations used in this header
8714
8715 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8716
8717         * docs/random/uraeus/gstreamer_and_midi.txt :
8718           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
8719           (fixes #132288)
8720
8721 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
8722
8723         reviewed by Benjamin Otte  <otte@gnome.org>
8724
8725         * gst/schedulers/gthread-cothreads.h:
8726           free allocated data for main cothread, too when destroying context
8727           (fixes #141417)
8728
8729 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8730
8731         * docs/manual/goals.xml : remove duplicated paragraph at end 
8732         of doc page (fixes #141448)
8733
8734 2004-04-29  David Schleef  <ds@schleef.org>
8735
8736         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
8737         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
8738
8739 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8740
8741         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8742           fix property
8743         * gst/gstcaps.c:
8744           fix doc string
8745         * po/POTFILES.in:
8746           rename typefind source file
8747
8748 2004-04-28  David Schleef  <ds@schleef.org>
8749
8750         Several new files from Steve Lhomme's MSVC patch (bug #141317):
8751         * win32/GStreamer.vcproj:
8752         * win32/Makefile:
8753         * win32/config.h:
8754         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
8755         (_trewinddir), (_ttelldir), (_tseekdir):
8756         * win32/dirent.h:
8757         * win32/gst-inspect.vcproj:
8758         * win32/gst-launch.vcproj:
8759         * win32/gst-register.vcproj:
8760         * win32/gstbytestream.vcproj:
8761         * win32/gstelements.vcproj:
8762         * win32/gstoptimalscheduler.vcproj:
8763         * win32/gstspider.vcproj:
8764         * win32/gtchar.h:
8765         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
8766         * win32/mman.h:
8767         * win32/mman.inl:
8768         * win32/msvc71.sln:
8769
8770 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8771
8772         * gst/gst.c: (init_post):
8773         * gst/gstinfo.c:
8774           remove useless _gst_progname stuff
8775         * tools/gst-inspect.c: (print_field), (print_caps):
8776           improve caps output
8777
8778 2004-04-28  David Schleef  <ds@schleef.org>
8779
8780         Disable parsing of a lot of files that aren't part of the
8781         exported API.  Move corresponding template files to old/,
8782         waiting for removal when they don't contain anything
8783         interesting.
8784         * docs/gst/Makefile.am:
8785         * docs/gst/gstreamer-sections.txt:
8786         * docs/gst/tmpl/cothreads.sgml:
8787         * docs/gst/tmpl/cothreads_compat.sgml:
8788         * docs/gst/tmpl/gettext.sgml:
8789         * docs/gst/tmpl/gobject2gtk.sgml:
8790         * docs/gst/tmpl/grammar.tab.sgml:
8791         * docs/gst/tmpl/gst-i18n-app.sgml:
8792         * docs/gst/tmpl/gst-i18n-lib.sgml:
8793         * docs/gst/tmpl/gst_private.sgml:
8794         * docs/gst/tmpl/gstaggregator.sgml:
8795         * docs/gst/tmpl/gstarch.sgml:
8796         * docs/gst/tmpl/gstatomic_impl.sgml:
8797         * docs/gst/tmpl/gstbufferstore.sgml:
8798         * docs/gst/tmpl/gstdata_private.sgml:
8799         * docs/gst/tmpl/gstdisksink.sgml:
8800         * docs/gst/tmpl/gstdisksrc.sgml:
8801         * docs/gst/tmpl/gstelementfactory.sgml:
8802         * docs/gst/tmpl/gstextratypes.sgml:
8803         * docs/gst/tmpl/gstfakesink.sgml:
8804         * docs/gst/tmpl/gstfakesrc.sgml:
8805         * docs/gst/tmpl/gstfdsink.sgml:
8806         * docs/gst/tmpl/gstfdsrc.sgml:
8807         * docs/gst/tmpl/gstfilesink.sgml:
8808         * docs/gst/tmpl/gstfilesrc.sgml:
8809         * docs/gst/tmpl/gsthttpsrc.sgml:
8810         * docs/gst/tmpl/gstidentity.sgml:
8811         * docs/gst/tmpl/gstindexfactory.sgml:
8812         * docs/gst/tmpl/gstmarshal.sgml:
8813         * docs/gst/tmpl/gstmd5sink.sgml:
8814         * docs/gst/tmpl/gstmultidisksrc.sgml:
8815         * docs/gst/tmpl/gstmultifilesrc.sgml:
8816         * docs/gst/tmpl/gstpadtemplate.sgml:
8817         * docs/gst/tmpl/gstpipefilter.sgml:
8818         * docs/gst/tmpl/gstschedulerfactory.sgml:
8819         * docs/gst/tmpl/gstsearchfuncs.sgml:
8820         * docs/gst/tmpl/gstshaper.sgml:
8821         * docs/gst/tmpl/gstspider.sgml:
8822         * docs/gst/tmpl/gstspideridentity.sgml:
8823         * docs/gst/tmpl/gststatistics.sgml:
8824         * docs/gst/tmpl/gsttee.sgml:
8825         * docs/gst/tmpl/gsttimecache.sgml:
8826         * docs/gst/tmpl/gsttypefind.sgml:
8827         * docs/gst/tmpl/gsttypefindfactory.sgml:
8828         * docs/gst/tmpl/gstxmlregistry.sgml:
8829         * docs/gst/tmpl/gthread-cothreads.sgml:
8830         * docs/gst/tmpl/old/cothreads.sgml:
8831         * docs/gst/tmpl/old/cothreads_compat.sgml:
8832         * docs/gst/tmpl/old/gettext.sgml:
8833         * docs/gst/tmpl/old/gobject2gtk.sgml:
8834         * docs/gst/tmpl/old/grammar.tab.sgml:
8835         * docs/gst/tmpl/old/gst-i18n-app.sgml:
8836         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
8837         * docs/gst/tmpl/old/gst_private.sgml:
8838         * docs/gst/tmpl/old/gstaggregator.sgml:
8839         * docs/gst/tmpl/old/gstarch.sgml:
8840         * docs/gst/tmpl/old/gstatomic_impl.sgml:
8841         * docs/gst/tmpl/old/gstbufferstore.sgml:
8842         * docs/gst/tmpl/old/gstdata_private.sgml:
8843         * docs/gst/tmpl/old/gstdisksink.sgml:
8844         * docs/gst/tmpl/old/gstdisksrc.sgml:
8845         * docs/gst/tmpl/old/gstelementfactory.sgml:
8846         * docs/gst/tmpl/old/gstextratypes.sgml:
8847         * docs/gst/tmpl/old/gstfakesink.sgml:
8848         * docs/gst/tmpl/old/gstfakesrc.sgml:
8849         * docs/gst/tmpl/old/gstfdsink.sgml:
8850         * docs/gst/tmpl/old/gstfdsrc.sgml:
8851         * docs/gst/tmpl/old/gstfilesink.sgml:
8852         * docs/gst/tmpl/old/gstfilesrc.sgml:
8853         * docs/gst/tmpl/old/gsthttpsrc.sgml:
8854         * docs/gst/tmpl/old/gstidentity.sgml:
8855         * docs/gst/tmpl/old/gstindexfactory.sgml:
8856         * docs/gst/tmpl/old/gstmarshal.sgml:
8857         * docs/gst/tmpl/old/gstmd5sink.sgml:
8858         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
8859         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
8860         * docs/gst/tmpl/old/gstpadtemplate.sgml:
8861         * docs/gst/tmpl/old/gstpipefilter.sgml:
8862         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
8863         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
8864         * docs/gst/tmpl/old/gstshaper.sgml:
8865         * docs/gst/tmpl/old/gstspider.sgml:
8866         * docs/gst/tmpl/old/gstspideridentity.sgml:
8867         * docs/gst/tmpl/old/gststatistics.sgml:
8868         * docs/gst/tmpl/old/gsttee.sgml:
8869         * docs/gst/tmpl/old/gsttimecache.sgml:
8870         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
8871         * docs/gst/tmpl/old/gstxmlregistry.sgml:
8872         * docs/gst/tmpl/old/gthread-cothreads.sgml:
8873         * docs/gst/tmpl/old/types.sgml:
8874         * docs/gst/tmpl/types.sgml:
8875
8876         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
8877         gtkdoc-scan doesn't like files with the same name in different
8878         directories.
8879         * gst/elements/Makefile.am:
8880         * gst/elements/gstelements.c:
8881         * gst/elements/gsttypefind.c: 
8882         * gst/elements/gsttypefind.h:
8883         * gst/elements/gsttypefindelement.c:
8884         * gst/elements/gsttypefindelement.h:
8885
8886 2004-04-28  David Schleef  <ds@schleef.org>
8887
8888         A bunch of portability fixes, derived from Steve Lhomme's MSVC
8889         patch (bug #141317):
8890         * gst/gst-i18n-lib.h: Allow disabling gettext.
8891         * gst/gstatomic_impl.h: disable warning when it's dumb.
8892         * gst/gstclock.c: fix include
8893         * gst/gstcompat.h: fix variadic macro
8894         * gst/gstinfo.c: fix include
8895         * gst/gstmacros.h: add defines for inlines on MSVC
8896         * gst/gstplugin.c: fix includes
8897         * gst/gstregistry.c: fix includes
8898         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
8899         * gst/gstsystemclock.c: fix include
8900         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
8901         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
8902         * gst/registries/gstxmlregistry.c:
8903         (gst_xml_registry_parse_element_factory): fix use of non-portable
8904         functions
8905         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
8906         * libs/gst/control/dparammanager.h: same
8907
8908 2004-04-28  David Schleef  <ds@schleef.org>
8909
8910         Move a bunch of unused files to old/ with names that are
8911         not case-insensitive-unique.  These files still contain some
8912         useful information that needs to be merged into gstbin.sgml,
8913         etc., so they shouldn't be deleted yet.
8914         * docs/gst/tmpl/GstBin.sgml:
8915         * docs/gst/tmpl/GstBuffer.sgml:
8916         * docs/gst/tmpl/GstCaps.sgml:
8917         * docs/gst/tmpl/GstClock.sgml:
8918         * docs/gst/tmpl/GstCompat.sgml:
8919         * docs/gst/tmpl/GstData.sgml:
8920         * docs/gst/tmpl/GstElement.sgml:
8921         * docs/gst/tmpl/GstEvent.sgml:
8922         * docs/gst/tmpl/GstIndex.sgml:
8923         * docs/gst/tmpl/GstStructure.sgml:
8924         * docs/gst/tmpl/GstTag.sgml:
8925         * docs/gst/tmpl/old/GstBin.sgml:
8926         * docs/gst/tmpl/old/GstBuffer.sgml:
8927         * docs/gst/tmpl/old/GstCaps.sgml:
8928         * docs/gst/tmpl/old/GstClock.sgml:
8929         * docs/gst/tmpl/old/GstCompat.sgml:
8930         * docs/gst/tmpl/old/GstData.sgml:
8931         * docs/gst/tmpl/old/GstElement.sgml:
8932         * docs/gst/tmpl/old/GstEvent.sgml:
8933         * docs/gst/tmpl/old/GstIndex.sgml:
8934         * docs/gst/tmpl/old/GstStructure.sgml:
8935         * docs/gst/tmpl/old/GstTag.sgml:
8936
8937 2004-04-28  David Schleef  <ds@schleef.org>
8938
8939         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
8940         (gst_caps_append), (gst_caps_append_structure),
8941         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
8942         (gst_caps_set_simple), (gst_caps_set_simple_valist),
8943         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
8944         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
8945         (gst_caps_intersect), (gst_caps_normalize),
8946         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
8947         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
8948         * gst/gstcaps.h: use GST_IS_CAPS().
8949
8950 2004-04-26  David Schleef  <ds@schleef.org>
8951
8952         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
8953         assembly.  gcc doesn't handle it correctly. (bug #141083)
8954         * gst/gsttrashstack.h: same
8955
8956 2004-04-25  Benjamin Otte  <otte@gnome.org>
8957
8958         * gst/gstelement.c: (gst_element_change_state):
8959           fix assertion to do an int comparison
8960
8961 2004-04-25  Benjamin Otte  <otte@gnome.org>
8962
8963         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8964           better debugging output on error
8965
8966 2004-04-25  Benjamin Otte  <otte@gnome.org>
8967
8968         * gst/gstcaps.c: (gst_caps_subtract):
8969           fix memleak
8970
8971 2004-04-23  Benjamin Otte  <otte@gnome.org>
8972
8973         * gst/gstvalue.c: (gst_value_compare_buffer),
8974         (_gst_value_initialize):
8975           add comparison function for buffers
8976
8977 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8978
8979         * docs/pwg/pwg.xml:
8980           Just found out that this so-called "ima-wav" format is really
8981           just "dvi adpcm" (according to the MS WAV documentation). So
8982           renaming it. We didn't use it yet anyway.
8983
8984 2004-04-23  Benjamin Otte  <otte@gnome.org>
8985
8986         * gst/gstcaps.c: (gst_caps_is_always_compatible):
8987           call gst_caps_is_subset
8988
8989 2004-04-23  Benjamin Otte  <otte@gnome.org>
8990
8991         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
8992         (gst_caps_is_subset):
8993           add documentation
8994
8995 2004-04-23  Benjamin Otte  <otte@gnome.org>
8996           
8997         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
8998         (gst_caps_structure_subtract), (gst_caps_subtract),
8999         (gst_caps_structure_figure_out_union),
9000         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9001           fix simplifying and subtracting not working correctly with optional
9002           properties
9003           solve assorted problems that make it now simplify ebven more
9004         * docs/gst/tmpl/gstcaps.sgml:
9005         * gst/gstcaps.h:
9006           make gst_caps_do_simplify return a bool to indicate if it simplified
9007         * testsuite/caps/simplify.c: (main):
9008           add more checks. The tests is quite a bit useless right now because
9009           the core is heavily simplifying itself.
9010         * testsuite/caps/caps.h:
9011           fix caps to contain all optional properties
9012
9013 2004-04-22  Benjamin Otte  <otte@gnome.org>
9014
9015         * docs/gst/tmpl/gstcaps.sgml:
9016         * docs/gst/tmpl/gstfilesrc.sgml:
9017         * docs/gst/tmpl/gststructure.sgml:
9018         * docs/gst/tmpl/gstvalue.sgml:
9019           update for recent API changes
9020         * gst/gstcaps.c: (gst_caps_do_simplify):
9021           fix to stop trying with a freed structure
9022         * gst/gstpad.c: (gst_pad_link_fixate):
9023           simplify caps
9024         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9025           remove C++ comment
9026         * gst/gstpad.h:
9027           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9028         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9029         (gst_structure_to_string):
9030           keep the correct type when using lists of ranges
9031         * gst/gstvalue.c: (gst_value_list_prepend_value),
9032         (gst_value_list_append_value):
9033           copy the value before adding to the list (d'oh)
9034         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9035         (gst_value_subtract_int_range_int_range):
9036           handle overflows correctly
9037         * gst/gstvalue.c: (gst_value_subtract_from_list):
9038           fix memleak
9039         * testsuite/caps/caps.h:
9040           add a caps that caused segfaults
9041
9042 2004-04-22  Benjamin Otte  <otte@gnome.org>
9043
9044         * testsuite/refcounting/pad.c: (main):
9045           fix test
9046
9047 2004-04-22  Benjamin Otte  <otte@gnome.org>
9048
9049         * gst/gstcaps.c: (gst_caps_subtract):
9050           allow subtracting ANY and EMPTY from ANY caps
9051
9052 2004-04-22  Benjamin Otte  <otte@gnome.org>
9053
9054         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9055         (gst_caps_union):
9056           only simplify in functions that create new caps. Simplifying in
9057           gst_caps_append breaks tests.
9058
9059 2004-04-22  Benjamin Otte  <otte@gnome.org>
9060
9061         * gst/gstcaps.c: (gst_caps_structure_simplify):
9062           unset GValue after use
9063         * gst/gstcaps.c: (gst_caps_append), 
9064         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9065           use gst_caps_simplify (reduces registry size by 30%)
9066         * gst/gstpad.c: (gst_pad_template_new):
9067           don't allow NULL caps
9068
9069 2004-04-22  Benjamin Otte  <otte@gnome.org>
9070
9071         * docs/gst/gstreamer-sections.txt:
9072           add gst_caps_do_simplify
9073         * gst/gstcaps.c:
9074           add documentation for gst_caps_do_simplify
9075         * gst/gstvalue.h:
9076           fix typo in gst_value_register_subtract_func declaration for gst-doc
9077
9078 2004-04-22  Benjamin Otte  <otte@gnome.org>
9079
9080         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9081           fix bug when converting from empty string.
9082         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9083         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9084           use gst_caps_new_empty to allocate a new caps. Only that function
9085           allocates memory for caps now.
9086         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9087         (gst_caps_remove_structure):
9088           add ability to remove one structure (but not to header yet)
9089         * gst/gstcaps.c: (gst_caps_compare_structures),
9090         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9091         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9092         * gst/gstcaps.h:
9093           add gst_caps_do_simplify that tries to simplify a caps in place.
9094           Deprecate old gst_caps_simplify function.
9095         * testsuite/caps/caps.h:
9096           add caps.h containing a common set of caps to test against.
9097         * testsuite/caps/sets.c: (check_caps), (main):
9098           use it.
9099         * testsuite/caps/.cvsignore:
9100         * testsuite/caps/Makefile.am:
9101         * testsuite/caps/simplify.c: (check_caps), (main):
9102           add test to check correctness and efficency of caps simplification.
9103
9104 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9105
9106         reviewed by Benjamin Otte  <otte@gnome.org>
9107
9108         * gst/gstparse.c: (_gst_parse_escape):
9109           Free the GString used in _gst_parse_escape()
9110
9111 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9112
9113         * gst/gstpad.c: (gst_pad_link_negotiate):
9114           refuse to link if the link is not possible
9115         * configure.ac:
9116         * testsuite/Makefile.am:
9117         * testsuite/negotiation/.cvsignore:
9118         * testsuite/negotiation/Makefile.am:
9119         * testsuite/negotiation/pad_link.c: (main):
9120           add test that checks the above behaviour
9121
9122 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9123
9124         * docs/gst/gstreamer-sections.txt:
9125           add newly added API
9126
9127 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9128
9129         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9130         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9131         (gst_filesrc_open_file), (gst_filesrc_close_file),
9132         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9133         * gst/elements/gstfilesrc.h:
9134           add support for non-regular files (#140734)
9135
9136 2004-04-21  Benjamin Otte  <otte@gnome.org>
9137
9138         * gst/gstpad.c: (gst_pad_link_fixate):
9139           add sophisticated error checking code to see if fixation functions
9140           did their fixation right
9141
9142 2004-04-21  Benjamin Otte  <otte@gnome.org>
9143
9144         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9145           check for ANY caps before appending/unioning
9146         * gst/gstcaps.c: (gst_caps_is_subset),
9147         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9148         (gst_caps_structure_subtract), (gst_caps_subtract):
9149         * gst/gstcaps.h:
9150           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9151           the API. deprecate gst_caps_is_equal_fixed
9152         * gst/gstpad.c: (gst_pad_try_set_caps):
9153         * gst/gstqueue.c: (gst_queue_link):
9154           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9155         * gst/gststructure.c: (gst_structure_get_name_id):
9156         * gst/gststructure.h:
9157           add function gst_structure_get_name_id
9158         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9159         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9160         (gst_value_subtract_int_range_int_range),
9161         (gst_value_subtract_double_double_range),
9162         (gst_value_subtract_double_range_double),
9163         (gst_value_subtract_double_range_double_range),
9164         (gst_value_subtract_from_list), (gst_value_subtract_list),
9165         (gst_value_can_intersect), (gst_value_subtract),
9166         (gst_value_can_subtract), (gst_value_register_subtract_func),
9167         (_gst_value_initialize):
9168         * gst/gstvalue.h:
9169           add support for subtracting values from each other. Note that
9170           subtracting means subtracting as in set theory. Required for caps
9171           stuff above.
9172         * testsuite/caps/.cvsignore:
9173         * testsuite/caps/Makefile.am:
9174         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9175         * testsuite/caps/sets.c: (check_caps), (main):
9176         * testsuite/caps/subtract.c: (check_caps), (main):
9177           add tests for subtraction and equality code.
9178
9179 2004-04-20  David Schleef  <ds@schleef.org>
9180
9181         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9182         * gst/indexers/Makefile.am:
9183         * gst/schedulers/Makefile.am:
9184         * libs/gst/bytestream/Makefile.am:
9185         * libs/gst/control/Makefile.am:
9186         * libs/gst/getbits/Makefile.am:
9187
9188 2004-04-20  David Schleef  <ds@schleef.org>
9189
9190         * common/as-libtool.mak: Fine-tune DLL building.
9191         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9192         (like gst-plugins)
9193         * examples/plugins/Makefile.am: remove plugindir
9194         * gst/autoplug/Makefile.am: DLL building fixes
9195         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9196         Windows.
9197         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9198         * gst/indexers/Makefile.am: DLL building fixes
9199         * gst/schedulers/Makefile.am: DLL building fixes.
9200         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9201         * libs/gst/control/Makefile.am: same
9202         * libs/gst/getbits/Makefile.am: same
9203         * testsuite/Makefile.am: New dlopen directory
9204         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9205         when dlopened.
9206         * testsuite/dlopen/dlopen_gst.c: (main): same
9207         * testsuite/dlopen/loadgst.c: (do_test): same
9208
9209 2004-04-20  David Schleef  <ds@schleef.org>
9210
9211         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9212         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9213
9214 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9215
9216         * gst/gstelement.c: (gst_element_wait),
9217         (gst_element_set_time_delay), (gst_element_change_state):
9218           Use GST_TIME_*
9219
9220 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9221
9222         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9223         (gst_spider_identity_plug):
9224           improve debugging messages
9225         * gst/gstbin.c: (gst_bin_remove_func):
9226           make sure the state_change function is only called with simple state
9227           transitions
9228
9229 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9230
9231         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9232         (gst_fakesink_set_property), (gst_fakesink_chain):
9233         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9234         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9235         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9236         * gst/elements/gstidentity.c: (gst_identity_chain),
9237         (gst_identity_set_property):
9238         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9239         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9240           add warnings to _set_property for unknown arguments
9241           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9242
9243 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9244
9245         * Makefile.am:
9246         * docs/manuals.mak:
9247           add .po file download snippet
9248           fix a bug in the doc makefile
9249
9250 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9251
9252         * Makefile.am:
9253         * po/LINGUAS:
9254         * po/en_GB.po:
9255           Added en_GB translation (Gareth Owen)
9256
9257 2004-04-20  Johan Dahlin  <johan@gnome.org>
9258
9259         * gst/gstpad.c (_invent_event): Clean up
9260
9261 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9262
9263         * testsuite/caps/filtercaps.c: (main):
9264           fix test to test things correctly (caps are complicated)
9265
9266 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9267
9268         * testsuite/caps/Makefile.am:
9269         * testsuite/caps/filtercaps.c: (main):
9270           add test (that doesn't work right now, but should)
9271
9272 2004-04-19  David Schleef  <ds@schleef.org>
9273
9274         * configure.ac: Add test for allowing unaligned access.  Add define
9275         to put in gstconfig.h.
9276         * docs/gst/gstreamer-sections.txt: New symbols
9277         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9278         * docs/gst/tmpl/gstfilesrc.sgml:
9279         * docs/gst/tmpl/gstparse.sgml:
9280         * docs/gst/tmpl/gsttypes.sgml:
9281         * docs/gst/tmpl/gstutils.sgml:
9282         * docs/gst/tmpl/gstvalue.sgml:
9283         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9284         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9285         on most !i386/!powerpc architectures.  From Daniel Gazard
9286         <daniel.gazard@free.fr>.  (bug #140156)
9287         * po/af.po: Check in changes made by gettext.
9288         * po/az.po:
9289         * po/fr.po:
9290         * po/nl.po:
9291         * po/sr.po:
9292         * po/sv.po:
9293
9294 2004-04-20  Benjamin Otte  <otte@gnome.org>
9295
9296         * gst/schedulers/entryscheduler.c: 
9297         (gst_entry_scheduler_yield):
9298           refuse to yield when decoupled elements insist on doing that.
9299           At least it's better than crashing
9300
9301 2004-04-19  David Schleef  <ds@schleef.org>
9302
9303         * docs/libs/Makefile.am: Change sinclude to include
9304         * docs/gst/Makefile.am: same
9305         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9306
9307 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9308
9309         * po/LINGUAS:
9310         * po/uk.po:
9311           Added Ukrainian translation (Maxim V. Dziumanenko)
9312
9313 2004-04-19  Johan Dahlin  <johan@gnome.org>
9314
9315         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9316         checking here, do it before calling the function.
9317         Clean up, use for loops instead of while loops while iterating
9318         over lists.
9319
9320         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9321         in debug message.
9322         (gst_spider_create_and_plug): Improve debug message.
9323         General: Replace while loops which iterates over GLists with for
9324         loops. Which are much cleaner, improves readability, especially
9325         for gst_spider_identity_plug
9326
9327         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9328         fixes bug 140477
9329
9330 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9331
9332         * po/LINGUAS:
9333         * po/tr.po:
9334           Added Turkish translation (Baris Cicek)
9335
9336 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9337
9338         * docs/faq/troubleshooting.xml:
9339           Mention gst-register in the FAQ (fixes 139045).
9340
9341 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9342
9343         * docs/gst/gstreamer-sections.txt:
9344
9345 2004-04-17  Benjamin Otte  <otte@gnome.org>
9346
9347         * gst/gstelement.c: (gst_element_dispose):
9348           simplify
9349         * gst/gstpad.c: (gst_pad_call_chain_function):
9350           don't create loads of events due to bad macro usage
9351
9352 2004-04-16  David Schleef  <ds@schleef.org>
9353
9354         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9355         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9356         * gst/gstvalue.c: (gst_value_serialize_buffer),
9357         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9358         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9359         to indicate types that are fixed wrt caps or not.  Switching to
9360         this function fixes (bug #140298).
9361         * gst/gstvalue.h:
9362
9363 2004-04-16  David Schleef  <ds@schleef.org>
9364
9365         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9366         for GST_UNALIGNED_ACESS, since we essentially know which archs
9367         are ok.
9368
9369 2004-04-17  Benjamin Otte  <otte@gnome.org>
9370
9371         * docs/gst/Makefile.am:
9372           ignore gst/parse directory when building docs (fixes #140205)
9373
9374 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9375
9376         * testsuite/refcounting/mem.c: (vmsize):
9377           do error checking
9378
9379 2004-04-16  Johan Dahlin  <johan@gnome.org>
9380
9381         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9382         and gst_pad_call_get_function.
9383
9384 2004-04-15  David Schleef  <ds@schleef.org>
9385
9386         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9387         checks if we can access unaligned memory.
9388         * configure.ac: Use it.
9389
9390 2004-04-16  Benjamin Otte  <otte@gnome.org>
9391
9392         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9393         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9394         * gst/elements/gstfilesrc.h:
9395           s/seek_happened/need_discont/ and require discont before sending any
9396           data
9397
9398 2004-04-15  David Schleef  <ds@schleef.org>
9399
9400         * gst/gstvalue.c: (gst_value_serialize_buffer),
9401         (gst_value_deserialize_buffer), (_gst_value_initialize):
9402         Register these types as fundamental types. (bug #140015)
9403
9404 2004-04-16  Benjamin Otte  <otte@gnome.org>
9405
9406         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9407         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9408         (gst_pad_pull):
9409           implement enforcing discont events before buffers are passed. This
9410           allows state changes of only some elements and later correctly going
9411           on where they left off (or in short: you can now set audio sinks to
9412           NULL to release the device when the pipeline is paused)
9413         * gst/gstpad.c: (gst_pad_call_chain_function),
9414         (gst_pad_call_get_function):
9415         * gst/gstpad.h:
9416           add gst_pad_call_chain_function and gst_pad_call_get_function for
9417           scheduler interaction. They are required because of the changes
9418           above.
9419         * gst/schedulers/entryscheduler.c: (get_buffer),
9420         (gst_entry_scheduler_chain_wrapper),
9421         (gst_entry_scheduler_get_wrapper),
9422         (gst_entry_scheduler_state_transition),
9423         (gst_entry_scheduler_pad_link):
9424         * gst/schedulers/gstbasicscheduler.c:
9425         (gst_basic_scheduler_chain_wrapper),
9426         (gst_basic_scheduler_src_wrapper),
9427         (gst_basic_scheduler_chainhandler_proxy),
9428         (gst_basic_scheduler_gethandler_proxy),
9429         (gst_basic_scheduler_cothreaded_chain),
9430         (gst_basic_scheduler_chain_elements):
9431         * gst/schedulers/gstoptimalscheduler.c:
9432         (get_group_schedule_function), (pad_clear_queued),
9433         (gst_opt_scheduler_pad_link):
9434           use the new functions instead of calling get/chain-functions
9435           directly.
9436
9437 2004-04-15  David Schleef  <ds@schleef.org>
9438
9439         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9440         * docs/gst/tmpl/gstinfo.sgml: same
9441         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
9442         gtk-doc put here.
9443         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
9444         * examples/queue/queue.c: (main):  We iterate pipelines, not
9445         bins.  (bug #139996)
9446
9447 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9448
9449         * docs/pwg/advanced-types.xml:
9450           Add MS RLE support. Also document Qt RLE although I have no sample
9451           files for that yet. And document an extra property for ADPCM.
9452
9453 2004-04-15  David Schleef  <ds@schleef.org>
9454
9455         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
9456         (_gst_plugin_fault_handler_setup):  Disable more stuff on
9457         Windows.
9458
9459 2004-04-15  David Schleef  <ds@schleef.org>
9460
9461         * gst/gstinfo.c: (_gst_debug_init): Change some internal
9462         symbol names to not conflict with new gstinfo.h symbols.
9463         * gst/gstinfo.h: Add inline functions for all those crazy
9464         compilers that don't know how to handle variadic macros (MSVC).
9465
9466 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9467
9468         * configure.ac: bump nano to 1
9469
9470 === release 0.8.1 ===
9471
9472 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9473
9474         * NEWS:
9475         * RELEASE:
9476         * configure.ac:
9477           releasing 0.8.1, "Snow Brigade"
9478
9479 2004-04-14  David Schleef  <ds@schleef.org>
9480
9481         * testsuite/Makefile.am: define tests_ignore
9482         * testsuite/Rules: Added new tests_ignore, which get compiled,
9483         but not run (generally because they're inconsistent or have
9484         heisenbugs).  Now we can ensure all the .c files compile in
9485         testsuite/.
9486         * testsuite/bins/Makefile.am: define tests_ignore
9487         * testsuite/bytestream/Makefile.am:
9488         * testsuite/caps/Makefile.am:
9489         * testsuite/clock/Makefile.am:
9490         * testsuite/debug/Makefile.am:
9491         * testsuite/debug/global.c: (gst_debug_log_one),
9492         (gst_debug_log_two): Fix compilation problem.
9493         * testsuite/dynparams/Makefile.am:
9494         * testsuite/elements/Makefile.am:
9495         * testsuite/ghostpads/Makefile.am:
9496         * testsuite/indexers/Makefile.am:
9497         * testsuite/parse/Makefile.am:
9498         * testsuite/plugin/Makefile.am:
9499         * testsuite/refcounting/Makefile.am:
9500         * testsuite/refcounting/element_pad.c: (main): Don't return leak
9501         results, because it's not calculated correctly.
9502         * testsuite/refcounting/pad.c: (main): same
9503         * testsuite/states/Makefile.am:
9504         * testsuite/tags/Makefile.am:
9505         * testsuite/threads/Makefile.am:
9506
9507 2004-04-14  David Schleef  <ds@schleef.org>
9508
9509         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
9510         generating bad code around the cpu detection asm code.
9511
9512 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9513
9514         * tools/gst-inspect.c: (print_element_info):
9515           print numeric version of rank as well, since we added some - 1
9516           rank values to elements
9517
9518 2004-04-13  David Schleef  <ds@schleef.org>
9519
9520         * configure.ac:  Disable various code when compiling for MinGW.
9521         * gst/elements/Makefile.am:
9522         * gst/elements/gstelements.c:
9523         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9524         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
9525         * gst/registries/gstxmlregistry.c: (make_dir):
9526
9527 2004-04-13  David Schleef  <ds@schleef.org>
9528
9529         * gst/Makefile.am:
9530         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
9531         assembly.
9532         * gst/gstcpuid_i386.s: remove
9533
9534 2004-04-13  David Schleef  <ds@schleef.org>
9535
9536         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
9537         seems to think it needs to be done.
9538         * docs/gst/tmpl/gstfakesink.sgml:
9539         * docs/gst/tmpl/gstfakesrc.sgml:
9540         * docs/gst/tmpl/gstfdsink.sgml:
9541         * docs/gst/tmpl/gstfdsrc.sgml:
9542         * docs/gst/tmpl/gstfilesink.sgml:
9543         * docs/gst/tmpl/gstfilesrc.sgml:
9544         * docs/gst/tmpl/gstidentity.sgml:
9545         * docs/gst/tmpl/gstmd5sink.sgml:
9546         * docs/gst/tmpl/gstmultifilesrc.sgml:
9547         * docs/gst/tmpl/gstpipefilter.sgml:
9548         * docs/gst/tmpl/gstshaper.sgml:
9549         * docs/gst/tmpl/gstspider.sgml:
9550         * docs/gst/tmpl/gstspideridentity.sgml:
9551         * docs/gst/tmpl/gststatistics.sgml:
9552         * docs/gst/tmpl/gsttee.sgml:
9553         * docs/gst/tmpl/gsttypefind.sgml:
9554         * docs/gst/tmpl/gstutils.sgml:
9555
9556 2004-04-13  David Schleef  <ds@schleef.org>
9557
9558         * configure.ac: Changes to remove POSIXisms (mmap in this case)
9559         and to build DLLs on Windows.
9560         * gst/Makefile.am:
9561         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9562         (gst_filesrc_open_file):
9563         * gst/schedulers/Makefile.am:
9564
9565 2004-04-13  David Schleef  <ds@schleef.org>
9566
9567         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
9568         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
9569         fixating lists.
9570
9571 2004-04-12  David Schleef  <ds@schleef.org>
9572
9573         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
9574         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
9575         to using it.
9576         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
9577         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
9578         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
9579         * gst/gststructure.c: (gst_structure_set_valist),
9580         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
9581         support for buffers.
9582         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
9583         intended to be const.
9584         * gst/gsttag.h: same
9585         * gst/gstvalue.c: (gst_value_serialize_buffer),
9586         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
9587         to (de)serialize buffers.
9588         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
9589         * testsuite/caps/string-conversions.c: (main):
9590         * testsuite/caps/value_serialize.c: add new test
9591
9592 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9593
9594         * docs/pwg/advanced-types.xml:
9595           Document MS video 1 (video/x-msvideocodec) mimetype/format.
9596
9597 2004-04-11  Benjamin Otte  <otte@gnome.org>
9598
9599         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
9600           rename categories to basic_*
9601         * gst/schedulers/gstbasicscheduler.c: 
9602         (gst_basic_scheduler_chain_wrapper),
9603         (gst_basic_scheduler_chainhandler_proxy),
9604         (gst_basic_scheduler_gethandler_proxy),
9605         (gst_basic_scheduler_eventhandler_proxy):
9606           debugging category fixes - put common stuff in log category
9607         * gst/schedulers/gstbasicscheduler.c: 
9608         (gst_basic_scheduler_chain_elements):
9609           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
9610           active and linking two active chains
9611
9612 2004-04-10  Benjamin Otte  <otte@gnome.org>
9613
9614         * docs/pwg/intro-preface.xml:
9615           fix dead links and remove reference to Wiki
9616
9617 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9618
9619         * gst/schedulers/gstbasicscheduler.c:
9620           make sure we can switch back to the main function if we're still in
9621           the main function (supposed to fix #139617)
9622         * gst/schedulers/gthread-cothreads.h:
9623           don't throw an error when switching to the same cothread
9624
9625 2004-04-09  Benjamin Otte  <otte@gnome.org>
9626
9627         * gst/gstbin.c: (gst_bin_get_type):
9628         * gst/gstclock.c: (gst_clock_get_type):
9629         * gst/gstindex.c: (gst_index_get_type):
9630         * gst/gstobject.c: (gst_object_get_type),
9631         (gst_signal_object_get_type):
9632         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
9633         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
9634         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
9635         * gst/gstqueue.c: (gst_queue_get_type):
9636         * gst/gstregistry.c: (gst_registry_get_type):
9637         * gst/gstsystemclock.c: (gst_system_clock_get_type):
9638         * gst/gstthread.c: (gst_thread_get_type):
9639           don't use memchunks for these objects, use malloc instead
9640
9641 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9642
9643         * docs/gst/.cvsignore:
9644         * docs/gst/Makefile.am:
9645         * docs/gst/gstreamer-sections.txt:
9646         * docs/gst/tmpl/gstaggregator.sgml:
9647         * docs/gst/tmpl/gstbuffer.sgml:
9648         * docs/gst/tmpl/gstclock.sgml:
9649         * docs/gst/tmpl/gstelement.sgml:
9650         * docs/gst/tmpl/gstfakesink.sgml:
9651         * docs/gst/tmpl/gstfakesrc.sgml:
9652         * docs/gst/tmpl/gstfdsink.sgml:
9653         * docs/gst/tmpl/gstfdsrc.sgml:
9654         * docs/gst/tmpl/gstfilesink.sgml:
9655         * docs/gst/tmpl/gstfilesrc.sgml:
9656         * docs/gst/tmpl/gstidentity.sgml:
9657         * docs/gst/tmpl/gstindex.sgml:
9658         * docs/gst/tmpl/gstinfo.sgml:
9659         * docs/gst/tmpl/gstmd5sink.sgml:
9660         * docs/gst/tmpl/gstmultifilesrc.sgml:
9661         * docs/gst/tmpl/gstpad.sgml:
9662         * docs/gst/tmpl/gstpipefilter.sgml:
9663         * docs/gst/tmpl/gstpipeline.sgml:
9664         * docs/gst/tmpl/gstpluginfeature.sgml:
9665         * docs/gst/tmpl/gstqueue.sgml:
9666         * docs/gst/tmpl/gstregistry.sgml:
9667         * docs/gst/tmpl/gstscheduler.sgml:
9668         * docs/gst/tmpl/gstshaper.sgml:
9669         * docs/gst/tmpl/gstspider.sgml:
9670         * docs/gst/tmpl/gstspideridentity.sgml:
9671         * docs/gst/tmpl/gststatistics.sgml:
9672         * docs/gst/tmpl/gstsystemclock.sgml:
9673         * docs/gst/tmpl/gsttee.sgml:
9674         * docs/gst/tmpl/gstthread.sgml:
9675         * docs/gst/tmpl/gsttypefind.sgml:
9676         * docs/gst/tmpl/gstutils.sgml:
9677           further doc build fixes
9678
9679 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9680
9681         * docs/gst/Makefile.am:
9682           make docs exit on scanning problems
9683           fix nonsrcdir build issues
9684         * docs/gst/gstreamer-sections.txt:
9685           adding stuff from -unused
9686         * gst/gstqueue.h:
9687           create GstQueueSize
9688         * gst/schedulers/cothreads_compat.h:
9689           fix cothread warnings
9690
9691 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9692
9693         * docs/gst/gstreamer-sections.txt:
9694           remove defines deprecated by Benjamin
9695
9696 2004-04-07  Benjamin Otte  <otte@gnome.org>
9697
9698         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9699           when the buffer is complete, don't check if other buffers are needed
9700         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
9701           check that the offset is >0 so we don't try to read before the
9702           beginning of the file
9703         * gst/gstpad.c: (gst_pad_set_pad_template):
9704           sink the template, so we don't end up with 130k pad templates
9705
9706 2004-04-06  Benjamin Otte  <otte@gnome.org>
9707
9708         * gst/autoplug/gstspider.c: (gst_spider_link_add):
9709           don't ref the element, adding already reffed it. And we didn't unref
9710           it later anyway... (huge memleak when you used many spider elements)
9711         * gst/gstelement.c: (gst_element_base_class_finalize):
9712         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
9713         (gst_element_register):
9714         * gst/gsturi.c: (gst_element_make_from_uri):
9715           use gst_object_(un)ref instead of g_object(un)ref
9716
9717 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9718
9719         * gst/gstbuffer.h:
9720           remove macro that wouldn't work anymore because struct member has
9721           been removed.
9722         * gst/schedulers/entryscheduler.c: (schedule_forward):
9723           fix segfault for unconnected pads
9724         
9725 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9726
9727         reviewed by David Schleef <ds@schleef.org>
9728
9729         * gst/gstinfo.h:
9730           *_FORMAT modifiers should require putting a % in front of them for
9731           consistency reasons.
9732
9733 2004-04-05  Colin Walters  <walters@redhat.com>
9734
9735         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
9736         space.
9737
9738 2004-04-05  Benjamin Otte  <otte@gnome.org>
9739
9740         * configure.ac:
9741         * gst/Makefile.am:
9742         * gst/gst_private.h:
9743         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
9744           add support for detecting if GStreamer runs inside valgrind.
9745           requires valgrind (d'oh) and --enable-debug for correct cdetection.
9746           print a big message in valgrind that GStreamer has detected it's
9747           running inside and might now use different code.
9748         * gst/gstmemchunk.c: (populate), (free_area),
9749         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
9750         (gst_mem_chunk_free):
9751           flag memchunks for valgrind, so it can detect leaking of chunks.
9752           This allows detecting leaks of GstBuffer and GstEvent correctly
9753           inside valgrind.
9754
9755 2004-04-05  David Schleef  <ds@schleef.org>
9756
9757         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
9758           jensgr@gmx.net (Jens Granseuer)
9759
9760 2004-04-05  David Schleef  <ds@schleef.org>
9761
9762         * gst/gstbuffer.c: (_gst_buffer_sub_free),
9763         (gst_buffer_default_free), (gst_buffer_default_copy),
9764         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
9765         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
9766         structures in one place.
9767
9768 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9769
9770         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
9771           (GST_TIME_FORMAT, GST_TIME_ARGS)
9772
9773 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9774
9775         * testsuite/elements/Makefile.am:
9776           disable test until it stops breaking make distcheck
9777
9778 2004-04-05  Johan Dahlin  <johan@gnome.org>
9779
9780         * po/sv.po: Updated translation
9781
9782 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9783
9784         * gst/gstplugin.c: (gst_plugin_load_file):
9785           fix segfault for when original plugin was loaded statically
9786
9787 2004-04-05  Benjamin Otte  <otte@gnome.org>
9788
9789         * testsuite/debug/category.c: (main):
9790         * testsuite/debug/commandline.c: (main):
9791         * testsuite/debug/output.c: (main):
9792           fix tests to work again with debugging enabled
9793
9794 2004-04-05  Benjamin Otte  <otte@gnome.org>
9795
9796         * gst/schedulers/gstbasicscheduler.c:
9797         (gst_basic_scheduler_pad_link):
9798           fix to work with recent scheduling changes
9799
9800 2004-04-05  Benjamin Otte  <otte@gnome.org>
9801
9802         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
9803         prepareChangeLog doesn't work when cvs indents):
9804           don't throw an error when no element can be scheduled, there's too
9805           many weird reasons why it doesn't work. Return STOPPED instead.
9806           decoupled elemts' schedulability doesn't depend on bufpens.
9807
9808 2004-04-04  Benjamin Otte  <otte@gnome.org>
9809
9810         * gst/schedulers/gstbasicscheduler.c:
9811         (gst_basic_scheduler_pad_select):
9812           fix uninitialized variable warnings
9813
9814 2004-04-04  Benjamin Otte  <otte@gnome.org>
9815
9816         * gst/gstpad.c: (gst_pad_collect_valist):
9817           fix uninitialized variable warning
9818         * gst/schedulers/entryscheduler.c: (schedule_forward):
9819           fix shadowed variable
9820
9821 2004-04-04  Benjamin Otte  <otte@gnome.org>
9822
9823         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
9824         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
9825         (gst_pad_select):
9826         * gst/gstpad.h:
9827         * gst/gstscheduler.c: (gst_scheduler_pad_select),
9828         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
9829         * gst/gstscheduler.h:
9830           implement gst_pad_collect as replacement for gst_pad_select.
9831           deprecate gst_pad_select and gst_scheduler_(un)lock_element
9832           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
9833           new pad_select, lock and unlock calls.
9834         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
9835         * gst/cothreads.h:
9836         * gst/schedulers/cothreads_compat.h:
9837         * gst/schedulers/gthread-cothreads.h:
9838           remove unused cothread_lock and cothread_unlock calls
9839         * gst/schedulers/entryscheduler.c:
9840         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
9841         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
9842         (gst_entry_scheduler_pad_select):
9843           update to new API
9844         * gst/schedulers/gstbasicscheduler.c:
9845         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
9846         (gst_basic_scheduler_pad_select):
9847           remove useless lock and unlock calls, update pad_select to new API
9848           (untested)
9849         * gst/schedulers/gstoptimalscheduler.c:
9850         (gst_opt_scheduler_class_init):
9851           remove useless select, lock and unlock function calls
9852         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
9853           use gst_pad_collect instead of gst_pad_select
9854
9855 2004-04-04  Benjamin Otte  <otte@gnome.org>
9856
9857         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
9858         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
9859         (schedule_next_element), (print_entry):
9860           add can_schedule_pad to handle element states.
9861           add schedule_forward to select the correct entry to schedule next
9862
9863 2004-04-03  Benjamin Otte  <otte@gnome.org>
9864
9865         * gst/schedulers/entryscheduler.c: 
9866           remove unused variable, fix error inside Rb, fix compile warning in
9867           unreachable code
9868
9869 2004-04-03  Benjamin Otte  <otte@gnome.org>
9870
9871         * gst/schedulers/entryscheduler.c:
9872           completely revamp the inner workings, so it's a lot easier to
9873           understand and extend
9874
9875 2004-04-03  Andy Wingo  <wingo@pobox.com>
9876
9877         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
9878         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
9879         This allows better introspection of pipeline topology.
9880         (add_to_chain): Don't do trickery to put loop elements first;
9881         rather, queue a chain sort by marking the chain as dirty.
9882         (remove_from_chain): Mark the chain dirty.
9883         (sort_chain): New function. Sorts the group list so that terminal
9884         sinks are first. This means elements on the sink side will be
9885         preferentially sscheduled before elements on the src side of the
9886         pipeline.
9887         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
9888         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
9889         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
9890         (group_inc_link): Change argument and variable names to match the
9891         new link structure member names (src and sink).
9892         (group_dec_link): Add some description
9893
9894 2004-04-03  Benjamin Otte  <otte@gnome.org>
9895
9896         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9897         * gst/gstinfo.h:
9898         * testsuite/debug/category.c: (main):
9899         * testsuite/debug/commandline.c: (main):
9900         * testsuite/debug/output.c: (main):
9901         * testsuite/debug/printf_extension.c: (main):
9902           fix to successfully build and test with --disable-gst-debug
9903           configure switch (fixes #138705)
9904
9905 2004-04-03  Benjamin Otte  <otte@gnome.org>
9906
9907         * docs/pwg/building-boiler.xml:
9908           add cvs login line and s/anonymous/anoncvs/
9909
9910 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
9911
9912         reviewed by Benjamin Otte  <otte@gnome.org>
9913
9914         * gst/gststructure.c: (gst_structure_free):
9915           memleak fix: free fields array (partial fix for #134839)
9916
9917 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9918
9919         * docs/random/ds/0.9-suggested-changes:
9920           Add a note to change handoff use in fakesrc to be usable in
9921           a more generic way (fakesrc should be renamed to appsrc or so).
9922         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9923           Change signal type to scope, so we can fill the buffer in the
9924           handoff handler (that's the whole use of this signal...).
9925
9926 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9927
9928         * docs/pwg/other-ntoone.xml:
9929           Document muxers and n-to-1 elements.
9930
9931 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
9932
9933         * gst/registries/gstxmlregistry.c
9934         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
9935         determine if a file is a G_MODULE. The old one discards paths
9936         containing "so" somewhere in the middle. My home directory is
9937         called "soto". Go figure...
9938
9939 2004-03-31  David Schleef  <ds@schleef.org>
9940
9941         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
9942         to eventually deprecate gst_buffer_merge().  (bug: #136408)
9943         * gst/gstbuffer.h:
9944
9945 2004-03-31  David Schleef  <ds@schleef.org>
9946
9947         * gst/gstvalue.c: (gst_value_union_int_int_range),
9948         (gst_value_union_int_range_int_range), (gst_value_can_union),
9949         (gst_value_union), (_gst_value_initialize):  Add some union
9950         implementations.  We didn't have any previously.
9951         * testsuite/caps/Makefile.am:
9952         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
9953         (gst_audioscale_getcaps), (test_caps), (main): A little test
9954         that is the same as the caps manipulation in audioscale.
9955
9956 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9957
9958         * docs/faq/general.xml:
9959           add entry about "does gst support format X?"
9960
9961 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9962
9963         * gst/gstthread.c:
9964           fix docs
9965         * gst/gstutils.h:
9966           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
9967
9968 2004-03-30  Benjamin Otte  <otte@gnome.org>
9969
9970         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9971           set the offset of the buffer to the requested offset
9972         * gst/elements/gsttypefind.c: (stop_typefinding):
9973           revert patch 1.18 (which I unfortunately don't know the reason for).
9974           This is needed to allow downstream elements to seek. Otherwise
9975           typefind might overwrite a previous seek by downstream elements.
9976           This lead to errors with id3tag and typefind on some mp3s.
9977         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
9978         (gst_entry_scheduler_iterate):
9979           be more verbose when debugging
9980
9981 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9982
9983         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9984           make sure we don't get NULL strings
9985
9986 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9987
9988         * gst/gstcaps.c:
9989         * gst/gstelement.c:
9990         * gst/gstelementfactory.c: (gst_element_factory_get_type):
9991         * gst/gstindex.c: (gst_index_resolver_get_type),
9992         (gst_index_get_type), (gst_index_factory_get_type):
9993         * gst/gstinfo.c:
9994         * gst/gstpad.c:
9995         * gst/gstplugin.c:
9996         * gst/gsturi.c: (gst_uri_handler_get_type):
9997         * gst/gstvalue.c:
9998           first batch of documentation fixes
9999
10000 2004-03-29  David Schleef  <ds@schleef.org>
10001
10002         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10003         * docs/gst/gstreamer-docs.sgml:  More hacking
10004         * docs/gst/gstreamer-sections.txt:
10005         * docs/gst/tmpl/cothreads_compat.sgml:
10006         * docs/gst/tmpl/gstcaps.sgml:
10007         * docs/gst/tmpl/gstclock.sgml:
10008         * docs/gst/tmpl/gstelement.sgml:
10009         * docs/gst/tmpl/gstevent.sgml:
10010         * docs/gst/tmpl/gstpad.sgml:
10011         * docs/gst/tmpl/gstutils.sgml:
10012         * docs/gst/tmpl/gstxml.sgml:
10013         * docs/gst/tmpl/gthread-cothreads.sgml:
10014         * docs/random/ds/0.9-suggested-changes:
10015         * gst/elements/gstfakesink.h: doc fixes
10016         * gst/elements/gstfakesrc.h: doc fixes
10017         * gst/gstcaps.c: doc fixes
10018         * gst/gstcaps.h: doc fixes
10019         * gst/gstelement.c: doc fixes
10020         * gst/gstelement.h: doc fixes
10021         * gst/gstindex.c: doc fixes
10022         * gst/gstinfo.c: doc fixes
10023         * gst/gstpad.c: doc fixes
10024         * gst/gstpad.h: doc fixes
10025         * gst/gstplugin.c: doc fixes
10026         * gst/gsttypefind.h: doc fixes
10027         * gst/gsturi.c: doc fixes
10028         * gst/gstvalue.c: doc fixes
10029
10030 2004-03-29  Colin Walters  <walters@redhat.com>
10031
10032         * gst/registries/gstxmlregistry.c (get_time)
10033         (plugin_times_older_than_recurse):
10034         Use the result of stat to determine whether a path is a file,
10035         so we don't attempt to opendir() files.
10036
10037 2004-03-29  Benjamin Otte  <otte@gnome.org>
10038
10039         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10040           print caps in debugging output when setting caps failed
10041         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10042         (schedule_next_element), (get_buffer), (run_chainhandler),
10043         (element_may_start), (gst_entry_scheduler_chain_handler),
10044         (gst_entry_scheduler_get_handler),
10045         (gst_entry_scheduler_state_transition),
10046         (gst_entry_scheduler_pad_link):
10047           make this scheduler a testcase for mandatory
10048           discont-before-first-buffer which is needed if we want to allow apps
10049           to release the sound device.
10050           add SCHED_ASSERT macro to print scheduler state before an assertion
10051           triggers.
10052
10053 2004-03-29  Benjamin Otte  <otte@gnome.org>
10054
10055         * COPYING:
10056           replace by LGPL (former COPYING.LIB). The core is completely
10057           licensed LGPL.
10058         * COPYING.LIB:
10059           remove
10060
10061 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10062
10063         * po/af.po:
10064         * po/sv.po:
10065           updated Afrikaans and Swedish
10066
10067 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10068
10069         * po/LINGUAS:
10070         * po/az.po:
10071           adding Azerbaijani (Mətin Əmirov)
10072
10073 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10074
10075         * gst/gstelement.h: 
10076         * gst/gstelement.c (gst_element_set_time_delay): New function for
10077         setting element time taking into account a hardware buffering
10078         delay.
10079         (gst_element_set_time): Now just an invocation of
10080         gst_element_set_time_delay.
10081         * gst/gstclock.h: 
10082         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10083         allowing to set event times in the future.
10084         (gst_clock_get_event_time): Now just an invocation of
10085         gst_clock_get_event_time_delay.
10086
10087 2004-03-28  Benjamin Otte  <otte@gnome.org>
10088
10089         * gst/gstbin.c: (gst_bin_set_element_sched),
10090         (gst_bin_unset_element_sched):
10091           don't add decoupled elements to schedulers - otherwise it's
10092           impossible to control if a link to a decoupled element was already
10093           removed from a scheduler or not.
10094         * gst/schedulers/cothreads_compat.h:
10095         * gst/schedulers/gthread-cothreads.h:
10096           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10097           is no "unused" warning.
10098         * gst/schedulers/Makefile.am:
10099         * gst/schedulers/entryscheduler.c:
10100           add new scheduler, based on ideas from talking to David and Martin.
10101           It's supposed to be small and correct. Currently it's also slow (but
10102           it's not noticable)
10103         * examples/retag/retag.c: (main):
10104         * testsuite/bytestream/test1.c: (main):
10105           fix missing NULLs at end of variadic functions
10106         * testsuite/elements/.cvsignore:
10107           update
10108
10109 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10110
10111         * gst/gstevent.h:
10112         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10113
10114 2004-03-25  David Schleef  <ds@schleef.org>
10115
10116         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10117         * docs/gst/tmpl/gstaggregator.sgml:
10118         * docs/gst/tmpl/gstautoplugfactory.sgml:
10119         * docs/gst/tmpl/gstbin.sgml:
10120         * docs/gst/tmpl/gstbuffer.sgml:
10121         * docs/gst/tmpl/gstbufferstore.sgml:
10122         * docs/gst/tmpl/gstfakesink.sgml:
10123         * docs/gst/tmpl/gstfakesrc.sgml:
10124         * docs/gst/tmpl/gstmd5sink.sgml:
10125         * docs/gst/tmpl/gstreamer-unused.sgml:
10126         * docs/gst/tmpl/gstsearchfuncs.sgml:
10127         * docs/gst/tmpl/gstshaper.sgml:
10128         * docs/gst/tmpl/gstspider.sgml:
10129         * docs/gst/tmpl/gsttee.sgml:
10130         * docs/gst/tmpl/gstutils.sgml:
10131         * docs/gst/tmpl/gstvalue.sgml:
10132         * docs/gst/tmpl/gstxml.sgml:
10133         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10134         and we don't support it.
10135         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10136         (gst_use_threads), (gst_has_threads): same
10137         * gst/gstthreaddummy.c: same
10138         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10139         * gst/autoplug/gstspider.h: same
10140         * gst/elements/gstaggregator.h: Remove bogus function from header
10141         * gst/elements/gstfakesink.h: same
10142         * gst/elements/gstfakesrc.h: same
10143         * gst/elements/gstmd5sink.h: same
10144         * gst/elements/gstshaper.h: same
10145         * gst/elements/gsttee.h: same
10146         * gst/gstbin.c: doc fixes
10147         * gst/gstbin.h: Remove unused definition.
10148         * gst/gstbuffer.c: doc fixes
10149         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10150         * gst/gstfilter.c: doc fixes
10151         * gst/gsttag.c: doc fixes
10152         * gst/gstvalue.c: doc fixes
10153
10154 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10155
10156         * docs/pwg/advanced-types.xml:
10157           Document typefinding.
10158         * docs/pwg/other-oneton.xml:
10159           Document one-to-n elements, demuxers and parsers.
10160
10161 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10162
10163         reviewed by: David Schleef  <ds@schleef.org>
10164
10165         * configure.ac: Check bison version (bug #127838)
10166
10167 2004-03-25  David Schleef  <ds@schleef.org>
10168
10169         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10170         * docs/gst/gstreamer-sections.txt:
10171         * docs/gst/tmpl/gstautoplug.sgml:
10172         * docs/gst/tmpl/gststaticautoplug.sgml:
10173         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10174         * docs/gst/tmpl/gstutils.sgml:
10175         * docs/gst/tmpl/gstxml.sgml:
10176
10177 2004-03-24  David Schleef  <ds@schleef.org>
10178
10179         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10180         manual being such complete crap, that I decided to do major
10181         hacking of it.  This checkin replaces any fine tuning that
10182         may have been done previously, with the benefit of actually
10183         being complete for much of the API that was changed since
10184         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10185         * docs/gst/gstreamer-sections.txt:
10186         * docs/gst/tmpl/GstBin.sgml:
10187         * docs/gst/tmpl/GstBuffer.sgml:
10188         * docs/gst/tmpl/GstCaps.sgml:
10189         * docs/gst/tmpl/GstClock.sgml:
10190         * docs/gst/tmpl/GstCompat.sgml:
10191         * docs/gst/tmpl/GstData.sgml:
10192         * docs/gst/tmpl/GstElement.sgml:
10193         * docs/gst/tmpl/GstEvent.sgml:
10194         * docs/gst/tmpl/GstIndex.sgml:
10195         * docs/gst/tmpl/GstStructure.sgml:
10196         * docs/gst/tmpl/GstTag.sgml:
10197         * docs/gst/tmpl/cothreads.sgml:
10198         * docs/gst/tmpl/cothreads_compat.sgml:
10199         * docs/gst/tmpl/gettext.sgml:
10200         * docs/gst/tmpl/grammar.tab.sgml:
10201         * docs/gst/tmpl/gst-i18n-app.sgml:
10202         * docs/gst/tmpl/gst-i18n-lib.sgml:
10203         * docs/gst/tmpl/gst.sgml:
10204         * docs/gst/tmpl/gst_private.sgml:
10205         * docs/gst/tmpl/gstaggregator.sgml:
10206         * docs/gst/tmpl/gstarch.sgml:
10207         * docs/gst/tmpl/gstatomic.sgml:
10208         * docs/gst/tmpl/gstatomic_impl.sgml:
10209         * docs/gst/tmpl/gstbin.sgml:
10210         * docs/gst/tmpl/gstbuffer.sgml:
10211         * docs/gst/tmpl/gstbufferstore.sgml:
10212         * docs/gst/tmpl/gstcaps.sgml:
10213         * docs/gst/tmpl/gstclock.sgml:
10214         * docs/gst/tmpl/gstcompat.sgml:
10215         * docs/gst/tmpl/gstconfig.sgml:
10216         * docs/gst/tmpl/gstcpu.sgml:
10217         * docs/gst/tmpl/gstdata.sgml:
10218         * docs/gst/tmpl/gstdata_private.sgml:
10219         * docs/gst/tmpl/gstelement.sgml:
10220         * docs/gst/tmpl/gstenumtypes.sgml:
10221         * docs/gst/tmpl/gsterror.sgml:
10222         * docs/gst/tmpl/gstevent.sgml:
10223         * docs/gst/tmpl/gstfakesink.sgml:
10224         * docs/gst/tmpl/gstfakesrc.sgml:
10225         * docs/gst/tmpl/gstfilesink.sgml:
10226         * docs/gst/tmpl/gstfilter.sgml:
10227         * docs/gst/tmpl/gstindex.sgml:
10228         * docs/gst/tmpl/gstinfo.sgml:
10229         * docs/gst/tmpl/gstinterface.sgml:
10230         * docs/gst/tmpl/gstlog.sgml:
10231         * docs/gst/tmpl/gstmacros.sgml:
10232         * docs/gst/tmpl/gstmarshal.sgml:
10233         * docs/gst/tmpl/gstmd5sink.sgml:
10234         * docs/gst/tmpl/gstmultifilesrc.sgml:
10235         * docs/gst/tmpl/gstobject.sgml:
10236         * docs/gst/tmpl/gstpad.sgml:
10237         * docs/gst/tmpl/gstparse.sgml:
10238         * docs/gst/tmpl/gstpipeline.sgml:
10239         * docs/gst/tmpl/gstplugin.sgml:
10240         * docs/gst/tmpl/gstpluginfeature.sgml:
10241         * docs/gst/tmpl/gstqueue.sgml:
10242         * docs/gst/tmpl/gstreamer-unused.sgml:
10243         * docs/gst/tmpl/gstregistry.sgml:
10244         * docs/gst/tmpl/gstregistrypool.sgml:
10245         * docs/gst/tmpl/gstscheduler.sgml:
10246         * docs/gst/tmpl/gstsearchfuncs.sgml:
10247         * docs/gst/tmpl/gstshaper.sgml:
10248         * docs/gst/tmpl/gstspider.sgml:
10249         * docs/gst/tmpl/gstspideridentity.sgml:
10250         * docs/gst/tmpl/gststructure.sgml:
10251         * docs/gst/tmpl/gstsystemclock.sgml:
10252         * docs/gst/tmpl/gsttag.sgml:
10253         * docs/gst/tmpl/gsttaginterface.sgml:
10254         * docs/gst/tmpl/gsttee.sgml:
10255         * docs/gst/tmpl/gstthread.sgml:
10256         * docs/gst/tmpl/gsttrace.sgml:
10257         * docs/gst/tmpl/gsttrashstack.sgml:
10258         * docs/gst/tmpl/gsttypefind.sgml:
10259         * docs/gst/tmpl/gsttypes.sgml:
10260         * docs/gst/tmpl/gsturi.sgml:
10261         * docs/gst/tmpl/gsturitype.sgml:
10262         * docs/gst/tmpl/gstutils.sgml:
10263         * docs/gst/tmpl/gstvalue.sgml:
10264         * docs/gst/tmpl/gstversion.sgml:
10265         * docs/gst/tmpl/gstxml.sgml:
10266         * docs/gst/tmpl/gstxmlregistry.sgml:
10267         * docs/gst/tmpl/gthread-cothreads.sgml:
10268         * docs/gst/tmpl/types.sgml:
10269
10270 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10271
10272         * docs/pwg/other-sink.xml:
10273         * docs/pwg/other-source.xml:
10274           Documentation on how to write source and sink elements. Other
10275           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10276           manager, autoplugger) are all still pending.
10277
10278 2004-03-25  Benjamin Otte  <otte@gnome.org>
10279
10280         * testsuite/elements/Makefile.am:
10281         * testsuite/elements/gst-compprep-check:
10282           add check to make sure gst-compprep works
10283         * testsuite/elements/gst-inspect-check.in:
10284           improve initialization output
10285         * testsuite/Makefile.am:
10286         * testsuite/gst-inspect-check:
10287           remove old file
10288
10289 2004-03-24  David Schleef  <ds@schleef.org>
10290
10291         * testsuite/elements/Makefile.am:
10292         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10293         to the testsuite.
10294
10295 2004-03-24  Benjamin Otte  <otte@gnome.org>
10296
10297         * libs/gst/control/dparam.c: (gst_dparam_attach),
10298         (gst_dparam_detach):
10299         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10300           fix lvalue casts for real
10301
10302 2004-03-24  Benjamin Otte  <otte@gnome.org>
10303
10304         * gst/schedulers/gstbasicscheduler.c:
10305         (gst_basic_scheduler_src_wrapper):
10306         * gst/schedulers/gstoptimalscheduler.c:
10307         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10308         (pad_clear_queued), (gst_opt_scheduler_add_element),
10309         (gst_opt_scheduler_remove_element):
10310           fix GStreamer to not have issues with lvalue casts anymore (fixes
10311           #136841)
10312
10313 2004-03-24  Benjamin Otte  <otte@gnome.org>
10314
10315         * gst/gstelement.c:
10316           add documentation about a gobject quirk where the object hasn't the
10317           correct class pointer set on initialization
10318         * gst/schedulers/gstbasicscheduler.c:
10319         (gst_basic_scheduler_src_wrapper):
10320           make sure to not run into an infinite loop
10321
10322 2004-03-22  Benjamin Otte  <otte@gnome.org>
10323
10324         * gst/gstutils.c: (gst_util_dump_mem):
10325         * gst/gstutils.h:
10326           first argument of gst_util_dump_mem should be const
10327
10328 2004-03-22  Johan Dahlin  <johan@gnome.org>
10329
10330         * gst/gstvalue.h: Clean up a little bit.
10331
10332 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10333
10334         reviewed by Benjamin Otte  <otte@gnome.org>
10335
10336         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10337         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10338         (gst_aggregator_class_init), (gst_aggregator_init):
10339         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10340         (gst_filesrc_dispose), (gst_filesrc_set_location):
10341         * gst/elements/gstidentity.c: (gst_identity_finalize),
10342         (gst_identity_class_init), (gst_identity_chain):
10343         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10344         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10345         (gst_statistics_class_init):
10346         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10347         (gst_tee_get_property):
10348           clean up used memory in this elements correctly on teardown (closes
10349           #137279)
10350
10351 2004-03-20  Colin Walters  <walters@redhat.com>
10352
10353         * gst/registries/gstxmlregistry.c:
10354         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10355         registry saving atomic.
10356
10357 2004-03-20  Colin Walters  <walters@redhat.com>
10358
10359         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10360         Just use
10361         access() instead of actually creating and deleting files.
10362
10363 2004-03-18  David Schleef  <ds@schleef.org>
10364
10365         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10366         (bug #137625)
10367
10368 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10369
10370         * po/sv.po: updated translation (Christian Rose)
10371
10372 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10373
10374         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10375         (gst_filesink_get_query_types), (_do_init),
10376         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10377           return FALSE silently
10378         * po/af.po: updated translation (Petri Jooste)
10379
10380 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10381
10382         * Makefile.am:
10383         * configure.ac:
10384           dist common properly
10385         * po/af.po:
10386         * po/fr.po:
10387         * po/nl.po:
10388         * po/sr.po:
10389         * po/sv.po:
10390           refreshing translations
10391
10392 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10393
10394         * po/LINGUAS:
10395         * po/sv.po:
10396         * po/af.po:
10397           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10398
10399 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10400
10401         * Makefile.am: use common/release.mak
10402
10403 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10404
10405         * docs/faq/gst-uninstalled:
10406           adding gst-monkeysaudio to the list of possible plugin dirs
10407
10408 2004-03-16  David Schleef  <ds@schleef.org>
10409
10410         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10411         (gst_init_check_with_popt_table):  Fix some gettext strings to
10412         make them easier to translate.  Required making the strings
10413         non-const.
10414
10415 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10416
10417         * configure.ac: bump nano to 1
10418
10419 === release 0.8.0 ===
10420
10421 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10422
10423         * configure.ac: release 0.8.0, "Executive Slacks"
10424
10425 2004-03-16  Johan Dahlin  <johan@gnome.org>
10426
10427         * gst/schedulers/gstoptimalscheduler.c
10428         (gst_opt_scheduler_pad_unlink): Remove double ;,
10429         spotted by Scott Wheeler
10430
10431 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10432
10433         * configure.ac: bump libtool version
10434
10435 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10436
10437         * gst/gstcaps.h:
10438         * gst/gststructure.h:
10439           add reserved padding
10440
10441 2004-03-15  Benjamin Otte  <otte@gnome.org>
10442
10443         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10444           set the first parameter for select call correctly.
10445           (fixes #137230)
10446
10447 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10448
10449         * *.c,*.h: don't mix tabs and spaces
10450
10451 2004-03-15  Johan Dahlin  <johan@gnome.org>
10452
10453         * gst/schedulers/gstoptimalscheduler.c
10454         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
10455         crash on MPEG playback. My boolean arithmetic is a bit rusty.
10456
10457         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
10458         
10459 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10460
10461         * testsuite/Rules:
10462           fix gst-register rules
10463
10464 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10465
10466         * testsuite/Rules:
10467           use versioned gst-register
10468
10469 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10470
10471         * docs/libs/gstreamer-libs-sections.txt:
10472           remove </SUBSECTION>
10473         * gst/gstplugin.c:
10474         * gst/gstregistry.c: (gst_registry_add_plugin):
10475         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
10476         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
10477           add debugging and fix some comment blocks
10478
10479 2004-03-15  Johan Dahlin  <johan@gnome.org>
10480
10481         * *.h: Revert indent changes.
10482         
10483 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10484
10485         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
10486           g_error_free the g_error
10487         * tools/gst-feedback-m.m:
10488           check for other versions of gstreamer
10489         * tools/gst-indent:
10490           use sh, not bash
10491
10492 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10493
10494         * tools/gst-register.c: do not spill paths when registries are not
10495           writable, until we fix the "user running gst-register" case.
10496
10497 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10498
10499         * *.c, *.h: commit of gst-indent run on core
10500
10501 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10502
10503         * tools/gst-indent:
10504         * tools/Makefile.am:
10505           add our indentation style as a script
10506
10507 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10508
10509         * po/sr.po:
10510         * po/LINGUAS:
10511           added Serbian translation
10512
10513 2004-03-13  Benjamin Otte  <otte@gnome.org>
10514
10515         * gst/gstelement.c:
10516           add documentation note about gst_element_found_tags_for_pad not
10517           being usable in getfunctions. (see #137042)
10518
10519 2004-03-12  David Schleef  <ds@schleef.org>
10520
10521         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
10522         change API right now!  Readd gst_caps_is_simple() macro.
10523         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
10524         uninitialized variable.  I'd bet this caused crashes.
10525         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
10526
10527 2004-03-12  Johan Dahlin  <johan@gnome.org>
10528
10529         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
10530         * gst/gstcaps.h: Clean up
10531
10532         * gst/gst.c (init_post): call gst_caps_get_type() instead of
10533         _gst_caps_initalize()
10534
10535         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
10536         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
10537
10538         * gst/gststructure.c (gst_structure_get_type): Ditto
10539
10540         * gst/gststructure.h: Ditto
10541         
10542 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10543
10544         * gst/gstqueue.c: (gst_queue_init):
10545           Reset default max. values in queues. Reason is simply to avoid
10546           braindead use. If you want wider values, use the properties. The
10547           default is supposed to always work. Wider values would make this
10548           beast a memory hog by default (250 full-PAL RGB32 video frames?
10549           That's 440 MB! No thank you).
10550
10551 2004-03-10  David Schleef  <ds@schleef.org>
10552
10553         * tools/gst-run.c: (main):  Fix crash when no relevant tools
10554         were found.  (bug #136793)
10555
10556 2004-03-10  Johan Dahlin  <johan@gnome.org>
10557
10558         * gst/schedulers/gstoptimalscheduler.c
10559         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
10560         links to elements within the same group, so we can finally remove
10561         that annoying warning. Refactor the code a little bit
10562         (group_dec_links_for_element): Split out
10563
10564 2004-03-09  David Schleef  <ds@schleef.org>
10565
10566         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
10567         (bug #134863)
10568
10569 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10570
10571         * configure.ac: first bug fix due to major/minor bump
10572
10573 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10574
10575         * configure.ac: bump nano to 1
10576
10577 === release 0.7.6 ===
10578
10579 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10580
10581         * NEWS:
10582         * RELEASE:
10583         * configure.ac:
10584           releasing 0.7.6, "Almost"
10585         * po/fr.po:
10586         * po/nl.po:
10587         * tools/Makefile.am:
10588         * tools/gst-feedback-m.m:
10589           unversioned source
10590
10591 2004-03-09  Johan Dahlin  <johan@gnome.org>
10592
10593         Reviewed by: Thomas Vander Stichele
10594
10595         * gst/gstelement.c (gst_element_class_init): register second
10596         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
10597         language bindings can (de)marshall correctly.
10598
10599         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
10600
10601         * gst/gsterror.c (gst_g_error_get_type): New function
10602
10603         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
10604         with VOID:OBJECT,OBJECT,STRING 
10605
10606 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
10607
10608         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
10609         Free a leaked g_timer on early returns.
10610
10611 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10612
10613         * docs/pwg/advanced-types.xml:
10614           Add cinepak description.
10615
10616 2004-03-07  David Schleef  <ds@schleef.org>
10617
10618         * docs/random/mimetypes:  Added cinepak description
10619
10620 2004-03-07  Andy Wingo  <wingo@pobox.com>
10621
10622         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
10623
10624         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
10625         there are no links to other groups when a group is destroyed.
10626         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
10627         removed from a group, make sure the link count to elements linked
10628         to other pads is appropriately decremented. This really fixes
10629         #135672.
10630
10631         The 1.60->1.61 patch has been reapplied in light of this fix.
10632
10633         * gst/gstelement.c (gst_element_dispose): Really protect against
10634         multiple invocations this time.
10635
10636 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10637
10638         * docs/gst/gstreamer-sections.txt:
10639         * docs/gst/tmpl/gsttag.sgml:
10640           remove some deprecated functions, document some existing ones
10641         * gst/gsttag.c: (gst_tag_get_flag):
10642         * gst/gsttag.h:
10643           add accessor function
10644
10645 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10646
10647         * docs/gst/gstreamer-sections.txt:
10648         * docs/gst/tmpl/gsttag.sgml:
10649         * docs/gst/tmpl/gstxml.sgml:
10650         * gst/gsttag.c: (gst_tag_get_flag):
10651         * gst/gsttag.h:
10652
10653 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
10654
10655         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
10656         leak
10657
10658 2004-03-05  David Schleef  <ds@schleef.org>
10659
10660         * REQUIREMENTS: Add bison and flex.
10661         * configure.ac: Fix comment about bison.
10662         * docs/random/ds/0.9-suggested-changes: yer ma
10663         * tools/gst-inspect.c: (print_element_info):  Fix warning.
10664
10665 2004-03-05  Benjamin Otte  <otte@gnome.org>
10666
10667         * gst/gstelement.c: (gst_element_error_full):
10668           revert recent recursive state changing commit - messing with other
10669           elements' states is evil and should be done by apps only.
10670
10671 2004-03-05  Benjamin Otte  <otte@gnome.org>
10672
10673         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
10674           check for empty intersection instead of NULL caps
10675         (gst_element_get_compatible_pad_filtered):
10676           remove old workaround that is only a bug nowadays
10677
10678 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10679
10680         * gst/gstelement.c: (gst_element_error_full):
10681           make elements try to recursively change state to PAUSED on all
10682           parents after an error to suppress ensuing warnings
10683         * gst/parse/grammar.y:
10684           make it check if it was able to sync the state, and throw an error
10685           if not, so stuff like
10686           oggdemux ! vorbisdec ! osssink gets caught
10687
10688 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10689
10690         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
10691           it contains lib64; use AS_AC_EXPAND to handle it properly
10692
10693 2004-03-05  David Schleef  <ds@schleef.org>
10694
10695         * gst/gstcpuid_i386.s:  Remove unused code
10696         * libs/gst/getbits/getbits.c: (gst_getbits_init),
10697         (gst_getbits_newbuf): Remove MMX code
10698         * libs/gst/getbits/getbits.h: Remove MMX code
10699
10700 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
10701
10702         * debian/.cvsignore:
10703         * debian/README.Debian:
10704         * debian/changelog:
10705         * debian/control:
10706         * debian/control.in:
10707         * debian/copyright:
10708         * debian/gstreamer-core-libs-dev.files:
10709         * debian/gstreamer-core-libs.files:
10710         * debian/gstreamer-core.files:
10711         * debian/gstreamer-core.postinst:
10712         * debian/gstreamer-core.postrm:
10713         * debian/gstreamer-doc.files:
10714         * debian/gstreamer-doc.links:
10715         * debian/gstreamer-doc.lintian:
10716         * debian/gstreamer-runtime.files:
10717         * debian/gstreamer-runtime.manpages:
10718         * debian/gstreamer-runtime.postinst:
10719         * debian/gstreamer-runtime.postrm:
10720         * debian/gstreamer-tools.files:
10721         * debian/gstreamer-tools.manpages:
10722         * debian/libgstreamer-dev.files:
10723         * debian/libgstreamer0.4.1.files:
10724         * debian/libgstreamerVERSION.files:
10725         * debian/rules:
10726         Debian package info not maintained here.
10727
10728 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10729
10730         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10731         * gst/gstbin.c: (gst_bin_class_init):
10732         * gst/gstelement.c: (gst_element_class_init):
10733         * gst/gstindex.c: (gst_index_class_init):
10734         * gst/gstobject.c: (gst_object_class_init),
10735         (gst_signal_object_class_init):
10736         * gst/gstpad.c: (gst_pad_template_class_init):
10737         * gst/gstregistry.c: (gst_registry_class_init):
10738         * gst/gsturi.c: (gst_uri_handler_base_init):
10739         * gst/gstxml.c: (gst_xml_class_init):
10740         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10741         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
10742           make all signal names use dashes instead of underscore
10743
10744 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10745
10746         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
10747
10748 2004-03-03  Benjamin Otte  <otte@gnome.org>
10749
10750         * gst/schedulers/gstoptimalscheduler.c:
10751           revert last commit by Andy Wingo. It causes segfaults on unreffing
10752           in Rhythmbox. (see bug #135672)
10753
10754 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10755
10756         * po/fr.po: fix typo
10757
10758 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10759
10760         * tools/gst-inspect.c: (main): 
10761         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
10762
10763 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10764
10765         * configure.ac:
10766           get GLIB_ONLY and POPT flags for the nonversioned binaries
10767         * tools/Makefile.am:
10768           use them
10769
10770 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10771
10772         * gst/gst.c: (init_post):
10773           change so that GST_REGISTRY now is where the global registry gets
10774           saved, since that is where plugins now get attached to first, and
10775           spilled over to the user registry.  Note that in the case of using
10776           GST_REGISTRY env var, we don't want to affect any real registries
10777           beyond the one given by this var, and thus we don't set a user
10778           registry to spill to.  So make sure GST_REGISTRY is writable.
10779
10780 2004-03-01  David Schleef  <ds@schleef.org>
10781
10782         * AUTHORS:  Added some names.  Add yourself if you're missing.
10783
10784 2004-03-01  David Schleef  <ds@schleef.org>
10785
10786         * MAINTAINERS: Add
10787
10788 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
10789
10790         * configure.ac:
10791           remove whitespace
10792         * docs/gst/tmpl/gstbuffer.sgml:
10793         * docs/gst/tmpl/gstdata.sgml:
10794         * docs/gst/tmpl/gstreamer-unused.sgml:
10795         * docs/gst/tmpl/gstxml.sgml:
10796           doc update
10797         * docs/manuals.mak:
10798           add a FIXME
10799         * docs/pwg/intro-preface.xml:
10800         * docs/pwg/pwg.xml:
10801           remove GNOME
10802         * gst/gst.c: (init_post):
10803           try GST_PLUGIN_PATH paths for the _global_registry first
10804         * gst/gstelement.h:
10805           add the error message as well, otherwise (null) debug info doesn't
10806           make much sense
10807         * tools/gst-register.c: (main):
10808           spill paths to next registry if this registry is not writable
10809         * po/fr.po:
10810         * po/nl.po:
10811           translation updates
10812
10813 2004-03-01  Johan Dahlin  <johan@gnome.org>
10814
10815         * gst/gstbuffer.c (_gst_buffer_initialize): 
10816         * gst/gstdata.c (gst_data_get_type): 
10817         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
10818         instead of ref, since some applications that uses GBoxed
10819         routines depends on a function that actually returns a copy.
10820
10821 2004-02-27  Benjamin Otte  <otte@gnome.org>
10822
10823         * gst/gstbuffer.h:
10824           remove gst_buffer_free, use gst_data_unref
10825         * gst/gstdata.c: (gst_data_get_type):
10826           use refcounting in GstData GBoxed registration
10827         * gst/gstdata.h:
10828           remove gst_data_free, use gst_data_unref
10829
10830 2004-02-27  Johan Dahlin  <johan@gnome.org>
10831
10832         * gst/gstdata.c (gst_data_get_type): New function, register
10833         GstData as a GBoxed type.
10834
10835         * gst/gstdata.h (GST_TYPE_DATA): New macro
10836
10837 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
10838
10839         * Makefile.am:
10840         * gstreamer.spec.in:
10841           put back RELEASE
10842         * gst/Makefile.am:
10843           clean up non-disting of built files
10844         * testsuite/debug/commandline.c:
10845           test fix for option rename
10846
10847 2004-02-26  David Schleef  <ds@schleef.org>
10848
10849         * configure.ac:  We don't really need glib-2.3.  Also remove
10850         some unneeded checks for library functions.
10851         * gst/Makefile.am:  Instead, we need to not dist files created
10852         by glib-genmarshal.
10853
10854 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10855
10856         * configure.ac:
10857           bump glib required version to 2.3.0 for g_value_takes_boxed
10858
10859  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
10860
10861         * common/m4/gst-docs.m4
10862         change flavour text from enable to disable as enable is our default
10863         closes bug Bug 135304
10864
10865 === release 0.7.5 ===
10866  
10867  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10868  
10869         * NEWS:
10870           instate NEWS file
10871         * Makefile.am:
10872         * gstreamer.spec.in:
10873         * RELEASE:
10874           put back release
10875         * configure.ac:
10876         * docs/random/release:
10877           more updates
10878
10879 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10880
10881         * gst/gsttag.c: (_gst_tag_initialize):
10882         * po/fr.po:
10883         * po/nl.po:
10884           remove hyphen from codec tags
10885
10886 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10887
10888         * gst/parse/Makefile.am:
10889           fix dependency so that a make from a clean build works the first
10890           time
10891
10892 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10893
10894         * docs/random/release:
10895           update release strategy
10896         * po/fr.po:
10897           auto-update po file
10898         * po/nl.po:
10899           update dutch translation
10900
10901 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
10902
10903         * docs/manual/debugging.xml:
10904         fix manual for new debugging system
10905
10906 2004-02-25  Andy Wingo  <wingo@pobox.com>
10907
10908         * gst/gstpad.c (gst_pad_link_prepare): Re-add
10909         gst_pad_link_prepare. Please email the list with specific reasons
10910         for reverting.
10911
10912 2004-02-24  Andy Wingo  <wingo@pobox.com>
10913
10914         * gst/gstelement.c (gst_element_dispose): Protect against multiple
10915         invocations.
10916
10917         * gst/schedulers/gstoptimalscheduler.c:
10918         I added a mess of prototypes at the top of the file by way of
10919         documentation. Some of the operations on chains and groups were
10920         re-organized.
10921
10922         (create_group): Added a type argument so if the group is enabled,
10923         the setup_group_scheduler knows what to do.
10924         (group_elements): Added a type argument here, too, to be passed on
10925         to create_group.
10926         (group_element_set_enabled): If an unlinked PLAYING element is
10927         added to a bin, we have to create a new group to hold the element,
10928         and this function will be called before the group is added to the
10929         chain. Thus we have a valid case for group->chain==NULL. Instead
10930         of calling chain_group_set_enabled, just set the flag on the group
10931         (the chain's status will be set when the group is added to it).
10932         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
10933         Setup the group scheduler when the group is enabled, not
10934         specifically when an element goes PAUSED->PLAYING. This means
10935         PLAYING elements can be added, linked, and scheduled into a
10936         PLAYING pipeline, as was intended.
10937         (add_to_group): Don't ref the group twice. I don't know when this
10938         double-ref got in here. Removing it has the potential to cause
10939         segfaults if other parts of the scheduler are buggy. If you find
10940         that the scheduler is segfaulting for you, put in an extra ref
10941         here and see if that hacks over the underlying issue. Of course,
10942         then find out what code is unreffing a group it doesn't own...
10943         (create_group): Make the extra refcount floating, and remove it
10944         after adding the element. This means that...
10945         (unref_group): Destroy when the refcount reaches 0, not 1, like
10946         every other refcounted object in the known universe.
10947         (remove_from_group): When a group becomes empty, set it to be not
10948         active, and remove it from its chain. Don't unref it again,
10949         there's no floating reference any more.
10950         (destroy_group): We have to remove the group from the chain in
10951         remove_from_group (rather than here) to break refcounting cycles
10952         (the chain always has a ref on the group). So assert that
10953         group->chain==NULL.
10954         (ref_group_by_count): Removed, it was commented out anyway.
10955         (merge_chains): Use the remove_from_chain and add_to_chain
10956         primitives to do the reparenting, instead of rolling our own
10957         implementation.
10958         (add_to_chain): The first non-disabled group in the chain's group
10959         list will be the entry point for the chain. Because buffers can
10960         accumulate in loop elements' peer bufpens, we preferentially
10961         schedule loop groups before get groups to avoid unnecessary
10962         execution of get-based groups when the bufpens are already full.
10963         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
10964         (get_group_schedule_function): Ditto.
10965         (loop_group_schedule_function): Ditto.
10966         (gst_opt_scheduler_loop_wrapper): Ditto.
10967         (gst_opt_scheduler_iterate): Ditto.
10968
10969         I understand the opt scheduler now, yippee!
10970
10971         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
10972         (gst_pad_get_name, gst_pad_set_chain_function) 
10973         (gst_pad_set_get_function, gst_pad_set_event_function) 
10974         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
10975         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
10976         (gst_pad_set_query_function, gst_pad_get_query_types) 
10977         (gst_pad_get_query_types_default) 
10978         (gst_pad_set_internal_link_function) 
10979         (gst_pad_set_formats_function, gst_pad_set_link_function) 
10980         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
10981         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
10982         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
10983         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
10984         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
10985         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
10986         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
10987         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
10988         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
10989         (gst_pad_event_default_dispatch, gst_pad_event_default) 
10990         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
10991         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
10992         (gst_pad_get_formats_default, gst_pad_get_formats): Better
10993         argument checks, and some doc fixes.
10994
10995         (gst_pad_custom_new_from_template): Um, does anyone
10996         use these functions? Actually make a custom pad instead of a
10997         normal one.
10998         (gst_pad_try_set_caps): Transpose some checks.
10999         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11000         the pad is in negotiation.
11001         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11002         
11003         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11004
11005         * gst/gstelement.h: 
11006         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11007         on the list.
11008
11009 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11010
11011         * gst/gstbin.c: (gst_bin_add):
11012           add error for not being able to add elements
11013
11014 2004-02-22  Julien MOUTTE <julien@moutte.net>
11015
11016         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11017         audio-codec and video-codec.
11018
11019 2004-02-22  Benjamin Otte  <otte@gnome.org>
11020
11021         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11022
11023         * autogen.sh:
11024           replace test -e with test -x for mkinstalldirs to be more portable.
11025           (fixes #134816)
11026
11027 2004-02-22  Benjamin Otte  <otte@gnome.org>
11028
11029         * gst/gstpad.c:
11030           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11031           too noisy
11032         * gst/gsttag.c: (_gst_tag_initialize):
11033         * gst/gsttag.h:
11034           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11035         * libs/gst/control/dparam.c: (gst_dparam_attach):
11036         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11037           check that types for attached dparams match
11038
11039 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11040
11041         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11042         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11043         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11044           fix errors
11045
11046 2004-02-20  Andy Wingo  <wingo@pobox.com>
11047
11048         * gst/gstbin.c:
11049         * gst/gstbuffer.c:
11050         * gst/gstplugin.c:
11051         * gst/registries/gstxmlregistry.c: 
11052         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11053
11054         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11055         (gst_element_add_pad): DEBUG->INFO, some fixes.
11056         (gst_element_get_compatible_pad_template): Just see if the
11057         templates' caps intersect, not if one is a strict subset of the
11058         other. This conforms more to what gst_pad_link_intersect() does.
11059         (gst_element_class_add_pad_template): Don't memcpy the pad
11060         template, just ref it.
11061         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11062
11063         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11064         (gst_pad_link_filtered): Debug changes.
11065         (gst_pad_link_prepare): New function, consolidated from
11066         can_link_filtered and link_filtered.
11067
11068         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11069         look more like that of the functions in gstelement.c
11070
11071         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11072         object, and return the empty string if object is NULL.
11073
11074         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11075         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11076         LOG, not DEBUG. We still get flex info on debug.
11077
11078         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11079         debug string more verbose.
11080         (plugin_times_older_than): DEBUG->LOG.
11081
11082 2004-02-20  Julien MOUTTE <julien@moutte.net>
11083
11084         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11085         will emit found_tag for each stream they demux with the codec.
11086
11087 2004-02-20  Benjamin Otte  <otte@gnome.org>
11088
11089         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11090           copy navigation event correctly. Check freeing tag lists. 
11091         * gst/gstthread.c: (gst_thread_change_state):
11092           don't abort() on state changing mess - it might happen because of
11093           bugs.
11094         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11095           use boxed functions
11096         * gst/gstvalue.h:
11097           fix GST_VALUE_HOLDS_CAPS
11098
11099 2004-02-19  David Schleef  <ds@schleef.org>
11100
11101         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11102         and use it for GST_FUNCTION.  (bug #134750)
11103
11104 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11105
11106         * po/fr.po:
11107         * po/nl.po:
11108           updating translations
11109
11110 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11111
11112         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11113
11114 2004-02-18  kost@imn.htwk-leipzig.de
11115
11116         reviewed by: David Schleef  <ds@schleef.org>
11117
11118         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11119         for libgstcontrol.
11120
11121 2004-02-18  David Schleef  <ds@schleef.org>
11122
11123         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11124         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11125         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11126         * tools/gst-inspect.c: (print_element_info): Support dumping of
11127         double dparam information.
11128
11129 2004-02-17  David Schleef  <ds@schleef.org>
11130
11131         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11132         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11133         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11134         Use GST_TYPE_CAPS in signal prototype.
11135         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11136         Convert GST_TYPE_CAPS to boxed.
11137         * gst/gstelement.c: (gst_element_class_init):
11138         Use GST_TYPE_TAG_LIST in signal prototype.
11139         * gst/gstindex.c: (gst_index_class_init):
11140         * gst/gstindex.h:
11141         Add GST_TYPE_INDEX_ENTRY type.
11142         * gst/gstmarshal.list:
11143         Add necessary marshal types.
11144         * gst/gstpad.c: (gst_real_pad_class_init),
11145         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11146         (gst_pad_recover_caps_error):
11147         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11148         * gst/gststructure.c: (_gst_structure_initialize),
11149         (gst_structure_copy), (_gst_structure_copy_conditional):
11150         * gst/gststructure.h:
11151         Convert GST_TYPE_STRUCTURE to boxed.
11152         * gst/gsttag.c: (gst_tag_list_get_type):
11153         * gst/gsttag.h:
11154         Add GST_TYPE_TAG_LIST type.
11155
11156 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11157
11158         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11159         to what we agreed with david.
11160         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11161
11162 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11163
11164         * po/nl.po: update translation
11165
11166 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11167
11168         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11169           throw an error if spider is trying to play a mime type there is
11170           no decoder for
11171         * po/POTFILES.in:
11172           add gst/autoplug/gstspider.c for translation
11173
11174 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11175
11176         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11177         silently when the pad is negotiating.
11178
11179 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11180
11181         * docs/faq/Makefile.am:
11182           add script to run gstreamer uninstalled 
11183         * docs/faq/faq.xml:
11184         * docs/faq/developing.xml:
11185         * docs/faq/gst-uninstalled:
11186           extract script to run gstreamer uninstalled
11187         * docs/manuals.mak:
11188           add EXTRA_SOURCES variable for Makefile.am's to set to
11189           use additional SOURCE files for the doc build
11190
11191 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11192
11193         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11194
11195 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11196
11197         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11198         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11199         an error was thrown by osssink. Basically a state change failure for
11200         an element in a different scheduling group was considered as
11201         successful, which means that caps nego was going on and weird stuff
11202         happened. Like I wrote in the comment there, if someone wants to
11203         revert that please drop me a mail explaining why because I really see
11204         no point in keeping that broken behaviour there.
11205         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11206         be empty, we then return NULL which will trigger a nice error when 
11207         pulling from the pad.
11208
11209 2004-02-13  David Schleef  <ds@schleef.org>
11210
11211         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11212         (gst_dparam_get_property), (gst_dparam_set_property),
11213         (gst_dparam_do_update_default):
11214         * libs/gst/control/dparam.h:
11215         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11216         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11217         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11218         (gst_dpsmooth_do_update_double):
11219         * libs/gst/control/dparam_smooth.h:
11220         * libs/gst/control/dparammanager.c:
11221         (gst_dpman_inline_direct_update):
11222         Add support for double dparams.
11223
11224 2004-02-13  David Schleef  <ds@schleef.org>
11225
11226         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11227         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11228
11229 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11230
11231         reviewed by: David Schleef  <ds@schleef.org>
11232
11233         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11234         (gst_fdsrc_init), (gst_fdsrc_set_property),
11235         (gst_fdsrc_get_property), (gst_fdsrc_get):
11236         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11237         and sends an EOS event if file descriptor reading times out.
11238
11239 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11240
11241         * configure.ac:
11242           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11243
11244 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11245
11246         * configure.ac: pass required libxml version as argument
11247         (bug reported by Christophe Fergeau)
11248
11249 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11250   
11251         * docs/gst/gstreamer-docs.sgml:
11252         * docs/gst/tmpl/gstxml.sgml:
11253         * docs/libs/gstreamer-libs-docs.sgml:
11254           version API docs
11255
11256 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11257
11258         * gst/gstinfo.c:
11259         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11260         (gst_registry_pool_feature_filter):
11261         * gst/gstthread.c: (gst_thread_class_init):
11262         * gst/gstvalue.c:
11263           add includes exposed by building without libxml
11264         * gst/indexers/Makefile.am:
11265           do not build fileindex when LOADSAVE disabled; we should have
11266           a better libxml check later since fileindex depends on xml, not
11267           LOADSAVE or REGISTRY
11268         * libs/gst/control/Makefile.am:
11269           link with m
11270         * tools/Makefile.am:
11271           fix wrong source code for gst-xmlinspect
11272
11273 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11274
11275         * configure.ac:
11276           fix gcov help output
11277           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11278         * docs/random/release:
11279           some updated releasing notes
11280         * gstreamer.spec.in:
11281           more updates
11282
11283 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11284
11285         * docs/faq/faq.xml:
11286         * docs/manual/manual.xml:
11287         * docs/pwg/pwg.xml:
11288         * docs/pwg/titlepage.xml:
11289           put version in documentation
11290
11291 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11292
11293         * tools/Makefile.am: fix man page installation
11294
11295 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11296
11297         * configure.ac:
11298           don't check for libxml when load/save and registry disabled (#105844)
11299         * gstreamer.spec.in:
11300           sync with fedora candidate spec
11301
11302 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11303
11304         * po/fr.po:
11305         * po/nl.po:
11306           replace multidisksrc with multifilesrc
11307
11308 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11309
11310         * po/POTFILES.in:
11311           update to multidisksrc => multifilesrc file renaming (#134145)
11312
11313 2004-02-11  David Schleef  <ds@schleef.org>
11314
11315         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11316         * docs/gst/tmpl/gstpadtemplate.sgml: same
11317         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11318         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11319         fixing dance.
11320         * gst/gstutils.c: Remove disabled code that uses GstProps.
11321         * gst/registries/gstxmlregistry.h: same
11322         * docs/random/ds/0.9-suggested-changes: random notes
11323
11324 2004-02-11  kost@imn.htwk-leipzig.de
11325
11326         reviewed by: David Schleef  <ds@schleef.org>
11327
11328         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11329         initialisation of clock (bug #134128)
11330
11331 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11332
11333         * configure.ac:
11334         * gst/elements/Makefile.am:
11335         * gst/elements/gstelements.c:
11336         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11337         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11338         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11339         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11340         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11341         * gst/elements/gstmultifilesrc.h:
11342           rename multidisksrc to multifilesrc (part of #122200)
11343
11344 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11345
11346         * docs/manuals.mak:
11347           fix automake complaints
11348         * gst-element-check.m4:
11349           fix unquotedness
11350
11351 2004-02-11  David Schleef  <ds@schleef.org>
11352
11353         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11354         * gst/gstatomic_impl.h: Disable sparc implementation.
11355
11356 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11357
11358         * gst-element-check.m4:
11359           fix underquoted macros as reported by automake 1.8.x (#133800)
11360         * configure.ac:
11361           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11362           by autopoint (fixes #132996)
11363
11364 2004-02-10  Andy Wingo  <wingo@pobox.com>
11365
11366         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11367         way to do inheritance.
11368         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11369         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11370         Routine docs.
11371         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11372         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11373         doc.
11374         (gst_pad_unlink, gst_pad_is_linked): Docs.
11375         (gst_pad_renegotiate): A brief description of capsnego.
11376         (gst_pad_try_set_caps): Document.
11377         (gst_pad_try_set_caps_nonfixed): Document.
11378         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11379         (gst_pad_set_parent): Deprecated (although not out of the API).
11380         (gst_pad_get_parent): Deprecated, although many plugins use this.
11381         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11382         are private and will go away in 0.9.
11383         (gst_pad_perform_negotiate): Doc.
11384         (gst_pad_link_unnegotiate): I think this is meant to be static.
11385         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11386         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11387         (gst_pad_get_peer): Doc updates.
11388         (gst_pad_caps_change_notify): Doc.
11389         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11390         (gst_ghost_pad_new): Doc fixes.
11391
11392         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11393         (gst_object_check_uniqueness): 
11394
11395         * gst/gstelement.c (gst_element_add_pad) 
11396         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11397         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11398         (gst_element_get_static_pad, gst_element_get_pad_list) 
11399         (gst_element_class_get_pad_template_list) 
11400         (gst_element_class_get_pad_template): Work on the docs.
11401         (gst_element_get_pad_template_list): Uses the class method.
11402         (gst_element_get_compatible_pad_template): Docs, and consolidate
11403         some test conditions. 
11404         (gst_element_get_pad_from_template): New static function.
11405         (gst_element_request_compatible_pad): Docs, and work with
11406         non-request compatible templates. 
11407         (gst_element_get_compatible_pad_filtered): Docs and remove
11408         redundant checks.
11409         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11410         (gst_element_link_filtered, gst_element_link_many) 
11411         (gst_element_link, gst_element_link_pads) 
11412         (gst_element_unlink_many): Docs.
11413
11414 2004-02-05  Andy Wingo  <wingo@pobox.com>
11415
11416         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11417         s/pointer/boxed/.
11418
11419         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11420
11421         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11422         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11423         with the type=GST_TYPE_CAPS. This allows language bindings to know
11424         what kind of data they're dealing with.
11425
11426         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11427         to NULL when g_value_init is called. GstCaps, which rolls its own
11428         type implementation, now does the same instead of allocating empty
11429         caps.
11430         (_gst_caps_initialize, _gst_caps_collect_value,
11431         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11432         table methods. This allows G_VALUE_COLLECT to work.
11433
11434 2004-02-05  Andy Wingo  <wingo@pobox.com>
11435
11436         * configure.ac:
11437         * testsuite/Makefile.am (SUBDIRS): 
11438         * testsuite/ghostpads/Makefile.am: 
11439         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11440
11441         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
11442         These two routines are the only ones that set
11443         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
11444         pad template. They should be made static, depending on ABI needs.
11445         (gst_real_pad_dispose): Handle the case of ghost pads without a
11446         parent. Assert after dealing with ghost pads that the ghost pad
11447         list is empty.
11448         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
11449         set after creation.
11450         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
11451         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
11452         functions. set_property will call add_ghost_pad/remove_ghost_pad
11453         as appropriate.
11454         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
11455
11456         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
11457         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
11458         (gst_element_remove_pad): Handle ghost pads as well.
11459         (gst_element_remove_ghost_pad): Deprecated (could be removed,
11460         depending on API-stability needs).
11461
11462 2004-02-05  Andy Wingo  <wingo@pobox.com>
11463
11464         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
11465         of course they're const
11466
11467 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11468
11469         * tools/Makefile.am:
11470         * tools/gst-feedback:
11471         * tools/gst-feedback-0.7:
11472           make gst-feedback versioned too for consistency
11473
11474 2004-02-11  David Schleef  <ds@schleef.org>
11475
11476         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11477         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
11478
11479 2004-02-10  Julien MOUTTE <julien@moutte.net>
11480
11481         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
11482         the structure does not contain a valid tag list. Adding a safety check
11483         to remove a noisy warning in that case.
11484
11485 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11486
11487         * gst/gst.c: fix name to be in line with others
11488
11489 2004-02-09  Julien MOUTTE <julien@moutte.net>
11490
11491         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
11492         not shout that loud when len is 0. Just return 0 silently.
11493
11494 2004-02-09  Julien MOUTTE  <julien@moutte.net>
11495
11496         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
11497         because data_unref has one and I prefer the debug to be symetric.
11498         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
11499         were refed when added to the queue and unrefed only once when the queue
11500         was flushed. Now the flush handler unref the buffers two times : first
11501         unref for the ref added when pushing in the queue's tail and second
11502         unref to destroy the flushed buffer.
11503
11504 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11505
11506         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
11507
11508 2004-02-06  David Schleef  <ds@schleef.org>
11509
11510         * docs/random/ds/0.9-suggested-changes: Random ramblings
11511         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
11512         to int before printing.
11513         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
11514         * gst/parse/parse.l: same.  See bug #129600
11515
11516 2004-02-06  David Schleef  <ds@schleef.org>
11517
11518         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
11519         (gst_index_add_entry), (gst_index_add_associationv),
11520         (gst_index_add_association): Add gst_index_add_associationv()
11521         and clean up gst_index_add_association(). #127133
11522
11523 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11524
11525         * autogen.sh: check out common with right tag if CVS/Tag exists
11526
11527 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11528
11529         * testsuite/ghostpads/ghostpads.c: (main):
11530           fix testsuite from segfaulting
11531
11532 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11533
11534         * Makefile.am: add release target
11535         * configure.ac: bump nano to 1
11536         * docs/random/release:
11537
11538 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11539
11540         * gst/gstcaps.h:
11541         * gst/gstelement.c: (gst_element_base_class_init),
11542         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11543         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11544         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11545         (gst_real_pad_dispose):
11546         * gst/gststructure.c: (gst_structure_free),
11547         (gst_structure_from_string):
11548           put reverted patch back in
11549         * gst/gstelement.c: (gst_element_remove_pad):
11550           free explicit caps if they're set
11551         * gst/gstpad.c: (_gst_pad_default_fixate_func):
11552           copy the structure when fixating
11553
11554 2004-02-05  David Schleef  <ds@schleef.org>
11555
11556         * gst/gstmarshal.list:
11557         * gst/gstpad.c: (gst_real_pad_class_init),
11558         (_gst_real_pad_fixate_accumulator):
11559         Revert POINTER->BOXED change in signal marshaller.
11560
11561 === release 0.7.4 ===
11562                                                                                 
11563 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11564                                                                                 
11565         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
11566         * configure.ac: changed for release
11567
11568 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
11569
11570         * gstreamer.spec.in:
11571           bump required version of gtk-doc
11572
11573 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11574
11575         * gst/gstcaps.h:
11576         * gst/gstelement.c: (gst_element_base_class_init),
11577         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11578         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11579         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11580         (gst_real_pad_dispose):
11581         * gst/gststructure.c: (gst_structure_free),
11582         (gst_structure_from_string):
11583           revert patch that breaks applications, reapply after release
11584           to get this fixed properly
11585
11586 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11587
11588         * gst/gsttag.c: (_gst_tag_initialize):
11589         * gst/gsttag.h:
11590           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
11591
11592 2004-02-04  David Schleef  <ds@schleef.org>
11593
11594         Fix some memleaks:
11595         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
11596         (gst_spider_plug_from_srcpad):
11597         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
11598
11599 2004-02-04  David Schleef  <ds@schleef.org>
11600
11601         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
11602         a GstRealPad before accessing its structure members.
11603
11604 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11605
11606         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
11607         (gst_clock_get_speed):
11608         * gst/gstclock.h:
11609           reset padding, remove unused fields
11610
11611 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11612
11613         * gst/autoplug/gstspideridentity.c:
11614         (gst_spider_identity_sink_loop_type_finding):
11615           use get_allowed_caps, not get_caps (fixes #132519)
11616         * gst/elements/gsttypefind.c: (stop_typefinding):
11617           use correct order when sending buffers and seeking
11618
11619 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11620
11621         * configure.ac:
11622         * gst/gstelement.h:
11623         * gst/gstpad.h:
11624         * gst/gstqueue.h:
11625           upgrade libtool CURRENT, reset padding
11626
11627 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11628
11629         * configure.ac:
11630           bump to prerelease
11631           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
11632
11633 2004-02-04  David Schleef  <ds@schleef.org>
11634
11635         * docs/random/ds/0.9-suggested-changes: random notes
11636         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
11637         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
11638         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
11639         expansion.
11640         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11641         (gst_filesink_get_query_types): same
11642         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
11643         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
11644         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
11645         to use new GST_PTR_FORMAT.
11646         * gst/gstelement.h: deprecate function factory macros
11647         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
11648         These are our last variadic macros that can't be replaced with
11649         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
11650         attempting to deprecate gst_element_clock_wait().
11651         * gst/gstevent.h: same
11652         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11653         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
11654         * gst/gstpad.h: deprecate function factory macros similar to above.
11655
11656 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11657
11658         * configure.ac:
11659         * tools/Makefile.am:
11660         * tools/gst-run.c: (popt_callback), (hash_print_key),
11661         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
11662         (get_candidates), (main):
11663           add new source file to generate non-versioned wrapper binaries
11664           for our tools.
11665
11666 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11667
11668         * gst/gstevent.c: (_gst_event_free):
11669           actually break; inside the switch statement
11670         * gst/parse/grammar.y:
11671           fix memleak where GValues weren't unset
11672
11673 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11674
11675         * gst/gststructure.c: (gst_structure_from_string):
11676           fix huge memleak
11677         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11678         (new_entry), (gst_type_find_element_chain):
11679         * gst/gstelement.c: (gst_element_base_class_init),
11680         (gst_element_class_set_details):
11681         * gst/gstpad.c: (gst_pad_can_link_filtered):
11682           fix smaller memleaks
11683         * gst/gstpad.c: (gst_real_pad_dispose):
11684           check that explicit caps are gone
11685         * gst/gststructure.c: (gst_structure_free):
11686           actually free the structure
11687         * gst/gstelement.c: (gst_element_clear_pad_caps):
11688           unset explicit caps
11689
11690 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11691
11692         * tools/Makefile.am:
11693           use AM_CFLAGS since all the CFLAGS are the same
11694           use AM_LDFAGS
11695
11696 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11697
11698         * docs/manual/gnome.xml:
11699           expand example a little
11700         * gst/gst.c: (gst_init_with_popt_table),
11701         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
11702           make sure popt option displays are done with right textdomain
11703           use GstPoptOption type
11704         * gst/gst.h:
11705           create GstPoptOption type
11706
11707 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11708
11709         * gst/gsterror.c: (_gst_stream_errors_init):
11710         * gst/gsterror.h:
11711           adding error type for no codec
11712         * po/POTFILES.in:
11713           add gst-inspect
11714         * po/nl.po:
11715           update dutch translation
11716         * tools/gst-inspect.c: (print_element_list), (main):
11717           do proper internationalization
11718         * tools/gst-launch.c: (idle_func):
11719           remove commented out function call
11720
11721 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11722
11723         * docs/README:
11724           add some error fixing notes
11725         * docs/gst/gstreamer-sections.txt:
11726           remove double entries
11727         * docs/gst/tmpl/gstbin.sgml:
11728         * docs/gst/tmpl/gstclock.sgml:
11729           remove override
11730         * docs/gst/tmpl/gstelement.sgml:
11731         * docs/gst/tmpl/gstindex.sgml:
11732         * docs/gst/tmpl/gstobject.sgml:
11733         * docs/gst/tmpl/gstpadtemplate.sgml:
11734         * docs/gst/tmpl/gstreamer-unused.sgml:
11735         * docs/gst/tmpl/gsttag.sgml:
11736         * docs/gst/tmpl/gstthread.sgml:
11737         * docs/gst/tmpl/gstxml.sgml:
11738         * gst/gsttag.h:
11739           sync header prototypes with c decls
11740         * gst/gsttaginterface.c:
11741           fix doc headers
11742
11743 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11744
11745         * gst/parse/Makefile.am:
11746         * gst/gstobject.h:
11747           get rid of gstmarshal.h dependency. It's not needed.
11748         * gst/gst.h:
11749         * gst/elements/gstfakesink.c:
11750         * gst/elements/gstfakesrc.c:
11751         * gst/elements/gstidentity.c:
11752         * gst/gstbin.c:
11753         * gst/gstelement.c:
11754         * gst/gstindex.c:
11755         * gst/gstobject.c:
11756         * gst/gstpad.c:
11757         * gst/gstthread.c:
11758         * gst/gstxml.c:
11759         * libs/gst/control/dparam.c:
11760         * libs/gst/control/dparammanager.c:
11761           include gstmarshal.h.
11762         Fixes #132045
11763
11764 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11765
11766         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11767         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
11768         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
11769         * gst/elements/gstfilesrc.h:
11770           don't ref the filesrc when creating mmaped buffers. Don't keep a
11771           list of not-yet-destroyed buffers.
11772         * gst/gstbuffer.h:
11773           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
11774
11775 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11776
11777         * gst/gst.c: (init_pre):
11778           remove textdomain
11779
11780 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11781
11782         * docs/pwg/advanced-events.xml:
11783         * docs/pwg/advanced-scheduling.xml:
11784         * docs/pwg/intro-basics.xml:
11785         * docs/pwg/other-manager.xml:
11786         * docs/pwg/other-nton.xml:
11787         * docs/pwg/other-ntoone.xml:
11788         * docs/pwg/other-oneton.xml:
11789         * docs/pwg/pwg.xml:
11790           All sort of documentation... Forgot what. Point is that I want this
11791           in before I leave. The 'other-*' will be the last section and will
11792           explain issues specific to these type of elements.
11793
11794 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11795
11796         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11797         (gst_filesrc_get_read):
11798           set all the values on buffers that we can
11799
11800 2004-02-02  David Schleef  <ds@schleef.org>
11801
11802         Change usage of isblah() to g_ascii_isblah() to be more locale
11803         independent.  (#133076)
11804         * gst/gsturi.c: (gst_uri_protocol_check_internal):
11805         * gst/gstutils.c:
11806         * gst/parse/parse.l:
11807
11808 2004-02-02  Jon Trowbridge  <trow@gnu.org>
11809
11810         reviewed by: David Schleef  <ds@schleef.org>
11811
11812         Fix memory leaks:
11813         * gst/gstcaps.c: (gst_caps_to_string):
11814         * gst/registries/gstxmlregistry.c:
11815         (gst_xml_registry_add_path_list_func),
11816         (gst_xml_registry_parse_padtemplate):
11817
11818 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11819
11820         * gst/gstelement.c: (gst_element_default_error):
11821           suffix error messages with period
11822
11823 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11824
11825         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11826         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11827         * gst/gsterror.c: (gst_error_get_message):
11828           Suffix with dots
11829         * po/fr.po:
11830         * po/nl.po:
11831           Update translation files
11832
11833 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11834
11835         * gst/autoplug/gstspideridentity.c:
11836         (gst_spider_identity_sink_loop_type_finding):
11837         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11838         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11839         (gst_filesink_close_file), (gst_filesink_handle_event),
11840         (gst_filesink_chain):
11841         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11842         (gst_filesrc_get_read), (gst_filesrc_open_file):
11843         * gst/elements/gstidentity.c: (gst_identity_chain):
11844         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11845         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11846         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11847         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11848         * gst/gsterror.c: (_gst_core_errors_init),
11849         (_gst_library_errors_init), (_gst_resource_errors_init),
11850         (_gst_stream_errors_init), (gst_error_get_message):
11851         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11852         (gst_pad_recover_caps_error), (gst_pad_pull):
11853         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11854         * gst/schedulers/gstbasicscheduler.c:
11855         (gst_basic_scheduler_chainhandler_proxy),
11856         (gst_basic_scheduler_gethandler_proxy),
11857         (gst_basic_scheduler_cothreaded_chain):
11858           Suffix error messages with period.
11859           Use (NULL) instead of NULL
11860
11861 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11862
11863         * docs/gst/tmpl/gstelement.sgml:
11864         * docs/gst/tmpl/gstxml.sgml:
11865         * gst/gstelement.c: (gst_element_error_full):
11866           add element path to error
11867
11868 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11869
11870         * docs/random/mimetypes:
11871           update raw int/float info
11872         * gst/gsttag.c: (_gst_tag_initialize):
11873         * gst/gsttag.h:
11874           add GST_TAG_ENCODER
11875
11876 2004-01-30  David Schleef  <ds@schleef.org>
11877
11878         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
11879           missing (#132991)
11880
11881 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
11882
11883         reviewed by Benjamin Otte 
11884           parts of the patch submitted in bug #113913
11885
11886         * configure.ac:
11887           use AC_C_INLINE. Use = instead of == with test
11888         * examples/plugins/example.c:
11889         * gst/autoplug/gstspideridentity.c:
11890         * gst/elements/gstfdsrc.c:
11891         * gst/elements/gstfilesrc.c:
11892         * gst/elements/gstidentity.c:
11893         * gst/elements/gstmultidisksrc.c:
11894         * gst/elements/gststatistics.c:
11895         * gst/gstelement.c:
11896         * gst/gstobject.c:
11897         * gst/gstpad.c:
11898         * gst/gstpipeline.c:
11899         * gst/gstthread.c:
11900           don't end enums with a comma
11901         * gst/gstindex.c: (gst_index_compare_func):
11902           do explicit casting to gint
11903         * gst/gsttrace.c: (gst_trace_text_flush):
11904           #define strsize as a macro
11905
11906 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
11907
11908         * docs/README:
11909         * docs/gst/gstreamer-docs.sgml:
11910         * docs/gst/gstreamer-sections.txt:
11911         * docs/gst/tmpl/gstelement.sgml:
11912         * docs/gst/tmpl/gsterror.sgml:
11913         * docs/gst/tmpl/gstinterface.sgml:
11914         * docs/gst/tmpl/gstreamer-unused.sgml:
11915         * docs/gst/tmpl/gststructure.sgml:
11916         * docs/gst/tmpl/gsttag.sgml:
11917         * docs/gst/tmpl/gsttaginterface.sgml:
11918         * docs/gst/tmpl/gstvalue.sgml:
11919         make sure all API ends up in the built docs
11920         * gst/gstinterface.c:
11921         * gst/gststructure.c: (gst_structure_id_set_value),
11922         (gst_structure_set_value), (gst_structure_id_get_value):
11923         * gst/gststructure.h:
11924         * gst/gstvalue.h:
11925         sync .h with .c declarations
11926
11927 2004-01-30  Julien Moutte  <julien@moutte.net>
11928
11929         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
11930         Ronald will fix riffread.
11931
11932 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11933
11934         * docs/pwg/advanced-interfaces.xml:
11935           Added tuner interface docs.
11936
11937 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11938
11939         * docs/random/mimetypes:
11940           correct Theora information
11941         * gst/gstelement.h:
11942           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
11943
11944 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11945
11946         * gst/gstelement.c: (gst_element_error_full):
11947         * gst/gstelement.h:
11948           GST_ELEMENT_ERROR in enum -> _IN_ERROR
11949
11950 2004-01-29  Julien MOUTTE  <julien@moutte.net>
11951
11952         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
11953         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
11954         again and even before DISCONT.
11955         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
11956         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
11957         bytestream so that it's not stopping to fill the bytestream if events
11958         different than EOS or DISCONT are received. Instead it process them so
11959         that they go downstream.
11960
11961 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11962
11963         * docs/gst/tmpl/gstelement.sgml:
11964         * docs/gst/tmpl/gstreamer-unused.sgml:
11965         * docs/gst/tmpl/gstxml.sgml:
11966         * gst/autoplug/gstspideridentity.c:
11967         (gst_spider_identity_sink_loop_type_finding):
11968         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11969         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11970         (gst_filesink_close_file), (gst_filesink_handle_event),
11971         (gst_filesink_chain):
11972         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11973         (gst_filesrc_get_read), (gst_filesrc_open_file):
11974         * gst/elements/gstidentity.c: (gst_identity_chain):
11975         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11976         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11977         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11978         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11979         * gst/gstelement.h:
11980         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11981         (gst_pad_recover_caps_error), (gst_pad_pull):
11982         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11983         * gst/schedulers/gstbasicscheduler.c:
11984         (gst_basic_scheduler_chainhandler_proxy),
11985         (gst_basic_scheduler_gethandler_proxy),
11986         (gst_basic_scheduler_cothreaded_chain):
11987           gst_element_error -> GST_ELEMENT_ERROR
11988
11989 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
11990
11991         * docs/Makefile.am:
11992         * docs/gst/tmpl/gstelement.sgml:
11993         * docs/gst/tmpl/gstxml.sgml:
11994         * docs/manuals.mak:
11995         * docs/pwg/advanced-request.xml:
11996         * docs/pwg/advanced-scheduling.xml:
11997         * docs/pwg/advanced-tagging.xml:
11998           fix non-validating docbook using CDATA
11999           make sure make check-local gets run first to check if it validates
12000
12001 2004-01-29  Julien MOUTTE <julien@moutte.net>
12002
12003         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12004         handling (up and downstream).
12005         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12006         my_filter thing.
12007
12008 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12009
12010         * docs/pwg/advanced-tagging.xml:
12011           Add docs about tag writing.
12012
12013 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12014
12015         * docs/pwg/advanced-tagging.xml:
12016           Add a part about tag reading and application signalling... Tag
12017           writing still needs to be documented.
12018         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12019           We can set file locations in READY, too.
12020
12021 2004-01-29  Julien MOUTTE <julien@moutte.net>
12022
12023         * docs/random/ds/element-checklist: Adding some notes about src
12024         events.
12025
12026 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12027
12028         * docs/random/mimetypes:
12029           Update docs to point to correct elements for various mimetypes, and
12030           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12031           <stephane.loeuillet@tiscali.fr>.
12032
12033 2004-01-28  David Schleef  <ds@schleef.org>
12034
12035         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12036
12037 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12038
12039         * docs/random/mimetypes:
12040           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12041           undefined"
12042         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12043           make it only work in NULL.
12044         * gst/gstcaps.c:
12045           don't posion NULL caps
12046         * gst/gstelement.c: (gst_element_set_time):
12047           add debugging statement
12048         * gst/gstelement.c: (gst_element_emit_found_tag),
12049         (gst_element_found_tag_func), (gst_element_found_tags):
12050         * gst/gstelement.h:
12051           These functions take const taglists
12052         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12053           fix memleak
12054         * gst/gstpad.c: (gst_pad_event_default):
12055           make more effort on handling discont and clocks, g_warn if everything
12056           fails
12057         * gst/gststructure.c: (gst_structure_remove_fields),
12058         (gst_structure_remove_fields_valist):
12059         * gst/gststructure.h:
12060           add gst_structure_remove_fields(_valist)
12061         * gst/gsttag.c:
12062           fix doc glitch
12063
12064 2004-01-28  David Schleef  <ds@schleef.org>
12065
12066         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12067         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12068         Fix memory leakage of gst_caps_to_string().
12069
12070         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12071         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12072         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12073         (gst_spider_identity_sink_loop_type_finding):
12074         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12075         (find_suggest):
12076         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12077         (gst_pad_set_explicit_caps):
12078         * gst/parse/grammar.y:
12079
12080 2004-01-28  David Schleef  <ds@schleef.org>
12081
12082         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12083         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12084         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12085         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12086         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12087         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12088         (gst_debug_log_default), (_gst_info_printf_extension),
12089         (_gst_info_printf_extension_arginfo):  Add printf extension.
12090         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12091         * gst/gststructure.c: (gst_structure_to_string),
12092         (_gst_structure_parse_value): Use gst_value_deserialize() and
12093         remove old code.
12094         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12095         (gst_value_deserialize_boolean), (gst_strtoi),
12096         (gst_value_deserialize_int), (gst_value_deserialize_double),
12097         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12098         a bunch of deserialize functions and gst_value_deserialize.
12099         * gst/gstvalue.h: er, _de_serialize, not unserialize
12100         * testsuite/caps/string-conversions.c: (main): We don't currently
12101         handle (float) in caps, so convert these to (double).
12102         * testsuite/debug/Makefile.am: Add new test for the printf extension
12103         * testsuite/debug/printf_extension.c: (main): same
12104
12105 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12106
12107         * docs/random/company/time:
12108           Add some docs about clocking and time
12109
12110 2004-01-28  Julien MOUTTE <julien@moutte.net>
12111
12112         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12113
12114 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12115
12116         * docs/pwg/advanced-clock.xml:
12117         * docs/pwg/advanced-dparams.xml:
12118         * docs/pwg/advanced-events.xml:
12119         * docs/pwg/advanced-interfaces.xml:
12120         * docs/pwg/advanced-midi.xml:
12121         * docs/pwg/advanced-request.xml:
12122         * docs/pwg/advanced-scheduling.xml:
12123         * docs/pwg/advanced-tagging.xml:
12124         * docs/pwg/advanced-types.xml:
12125         * docs/pwg/appendix-checklist.xml:
12126         * docs/pwg/building-boiler.xml:
12127         * docs/pwg/building-chainfn.xml:
12128         * docs/pwg/building-filterfactory.xml:
12129         * docs/pwg/building-pads.xml:
12130         * docs/pwg/building-props.xml:
12131         * docs/pwg/building-signals.xml:
12132         * docs/pwg/building-state.xml:
12133         * docs/pwg/building-testapp.xml:
12134         * docs/pwg/intro-basics.xml:
12135         * docs/pwg/intro-preface.xml:
12136         * docs/pwg/other-autoplugger.xml:
12137         * docs/pwg/other-sink.xml:
12138         * docs/pwg/other-source.xml:
12139         * docs/pwg/titlepage.xml:
12140           fix up id's
12141
12142 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12143
12144         * docs/95NonPath:
12145         * docs/HACKING:
12146         * docs/README:
12147         * docs/building-the-docs-on-debian:
12148           collect relevant bits of doc info
12149
12150 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12151
12152         * docs/pwg/advanced_tagging.xml:
12153           Half-assed commit so Thomas can re-arrange document IDs here to be
12154           consistent, too.
12155
12156 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12157
12158         * docs/manual/autoplugging.xml:
12159         * docs/manual/bins-api.xml:
12160         * docs/manual/bins.xml:
12161         * docs/manual/buffers-api.xml:
12162         * docs/manual/buffers.xml:
12163         * docs/manual/clocks.xml:
12164         * docs/manual/components.xml:
12165         * docs/manual/cothreads.xml:
12166         * docs/manual/debugging.xml:
12167         * docs/manual/dparams-app.xml:
12168         * docs/manual/dynamic.xml:
12169         * docs/manual/elements-api.xml:
12170         * docs/manual/elements.xml:
12171         * docs/manual/factories.xml:
12172         * docs/manual/gnome.xml:
12173         * docs/manual/goals.xml:
12174         * docs/manual/helloworld.xml:
12175         * docs/manual/helloworld2.xml:
12176         * docs/manual/init-api.xml:
12177         * docs/manual/intro.xml:
12178         * docs/manual/links-api.xml:
12179         * docs/manual/links.xml:
12180         * docs/manual/manual.xml:
12181         * docs/manual/motivation.xml:
12182         * docs/manual/pads-api.xml:
12183         * docs/manual/pads.xml:
12184         * docs/manual/plugins-api.xml:
12185         * docs/manual/plugins.xml:
12186         * docs/manual/programs.xml:
12187         * docs/manual/queues.xml:
12188         * docs/manual/quotes.xml:
12189         * docs/manual/schedulers.xml:
12190         * docs/manual/states-api.xml:
12191         * docs/manual/states.xml:
12192         * docs/manual/threads.xml:
12193         * docs/manual/typedetection.xml:
12194         * docs/manual/xml.xml:
12195           use chapter, part, section or misc as id starts for all bits
12196
12197 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12198
12199         * docs/gst/gstreamer-sections.txt:
12200           Fix up TITLE of the sections
12201
12202 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12203
12204         * docs/pwg/advanced_interfaces.xml:
12205           Add documentation on propertyprobing.
12206         * docs/pwg/advanced_events.xml:
12207         * docs/pwg/advanced_tagging.xml:
12208         * docs/pwg/building_boiler.xml:
12209         * docs/pwg/building_filterfactory.xml:
12210         * docs/pwg/pwg.xml:
12211           Move filterfactory and tagging into their own chapter, add a chapter
12212           on events. all these are empty placeholders that will be filled in
12213           some day.
12214
12215 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12216
12217         * docs/pwg/advanced_interfaces.xml:
12218           Docs for mixer interface. Also a check for website uploading.
12219
12220 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12221
12222         * docs/HACKING:
12223         * docs/Makefile.am:
12224         * docs/faq/Makefile.am:
12225         * docs/gst/Makefile.am:
12226         * docs/gst/tmpl/gstelement.sgml:
12227         * docs/gst/tmpl/gstplugin.sgml:
12228         * docs/gst/tmpl/gstreamer-unused.sgml:
12229         * docs/libs/Makefile.am:
12230         * docs/manual/Makefile.am:
12231         * docs/manuals.mak:
12232         * docs/pwg/Makefile.am:
12233         * docs/upload.mak:
12234           Separate out upload target and make it similar for
12235           both docbook and gtk-doc docs
12236
12237 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12238
12239         * docs/manuals.mak:
12240           Fix upload target to work with freedesktop
12241
12242 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12243
12244         * docs/pwg/advanced_types.xml:
12245           Add notes on creating your own types.
12246         * docs/pwg/building_boiler.xml:
12247         * docs/pwg/building_pads.xml:
12248         * docs/pwg/building_state.xml:
12249           Add some stuff about how to retrieve values from structures, how
12250           that relates to types and change layout slightly again to be almost
12251           perfect.
12252
12253 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12254
12255         * docs/pwg/advanced_dparams.xml:
12256         * docs/pwg/advanced_scheduling.xml:
12257           Change index layout slightly.
12258
12259 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12260
12261         * docs/pwg/advanced_clock.xml:
12262         * docs/pwg/advanced_interfaces.xml:
12263         * docs/pwg/advanced_midi.xml:
12264           General placeholders for now.
12265         * docs/pwg/advanced_request.xml:
12266           Explanation about sometimes and request pads.
12267         * docs/pwg/advanced_scheduling.xml:
12268           Concept of bytestream, loopfunctions and schedulers.
12269         * docs/pwg/building_boiler.xml:
12270           Add something about plugin-init.
12271
12272 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12273
12274         * docs/pwg/building_pads.xml:
12275           Fix broken docbook
12276
12277 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12278
12279         * docs/pwg/advanced_interfaces.xml:
12280         * docs/pwg/pwg.xml:
12281           Add as a placeholder for future filling-in.
12282         * docs/pwg/basics_autoplugging.xml:
12283         * docs/pwg/basics_buffers.xml:
12284         * docs/pwg/basics_elements.xml:
12285         * docs/pwg/basics_events.xml:
12286         * docs/pwg/basics_plugins.xml:
12287         * docs/pwg/basics_types.xml:
12288           Remove, because unused (this is all in intro_basics.xml).
12289         * docs/pwg/building_signals.xml:
12290           Short intro to signals + reference to GObject docs - we really
12291           shouldn't go into these sort of things to deply because we don't
12292           use them that extensively anyway.
12293         * docs/pwg/building_state.xml:
12294           Explanation of states. Benjamin, please check.
12295         * docs/pwg/building_testapp.xml:
12296           Put everything in one page - putting only a few lines of content
12297           per page doesn't really make sense.
12298
12299           Time to get into the advanced topics. ;).
12300
12301 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12302
12303         * docs/pwg/advanced_types.xml:
12304           Finish documenting the current state of mimetypes.
12305         * docs/pwg/building_boiler.xml:
12306         * docs/pwg/building_chainfn.xml:
12307         * docs/pwg/building_pads.xml:
12308         * docs/pwg/building_props.xml:
12309         * docs/pwg/building_testapp.xml:
12310           Start documenting the "how to build a simple audio filter" part
12311           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12312           states and (maybe?) a short introduction to capsnego in the chapter
12313           on pads (building_pads.xml). Capsnego should probably be explained
12314           fully in advanced_capsnego.xml or so.
12315
12316 2004-01-26  David Schleef  <ds@schleef.org>
12317
12318         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12319         * gst/gstpad.h: Add new function to allow element to (somewhat)
12320         specify non-fixed caps on a pad.
12321         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12322         that I added a few weeks ago.
12323
12324 2004-01-26  David Schleef  <ds@schleef.org>
12325
12326         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12327           making try_set_caps() work with non-fixed caps.
12328
12329 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12330
12331         * docs/pwg/advanced_types.xml:
12332         * docs/pwg/intro_basics.xml:
12333         * docs/pwg/intro_preface.xml:
12334         * docs/pwg/pwg.xml:
12335         * docs/pwg/titlepage.xml:
12336           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12337           in here (docs/random/mimetypes), and will from there on work on both
12338           updating outdated parts and adding missing parts.
12339           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12340
12341 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12342
12343         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12344           policy is set
12345
12346 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12347
12348         * gst/gstelement.h:
12349           remove gst_element_factory_get_version. It doesn't exist anymore.
12350         * gst/gstplugin.c:
12351         * gst/gstplugin.h:
12352           remove gst_plugin_set_name and change gst_plugin_get_longname to
12353           gst_plugin_get_description to match code.
12354         * gst/gsterror.h:
12355           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12356         * gst/gstpad.c: (gst_pad_try_set_caps):
12357           make it work with nonfixed caps.
12358           Note that even in the nonfixed case the link function of the pad
12359           that tries to set caps isn't called.
12360
12361 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12362
12363         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12364           fix bug where buffer was not assembled correctly
12365         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12366           silence by default
12367         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12368           only seek if there's no more buffers that could work without seeking
12369
12370 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12371
12372         * gst/gsttag.c: (_gst_tag_initialize):
12373         * gst/gsttag.h:
12374           Add application tag (for encoding/muxing app).
12375
12376 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12377
12378         * autogen.sh:
12379           make autopoint force, and libtoolize not copy
12380         * common/m4/as-docbook.m4:
12381           added docbook xml catalog setup check
12382         * common/m4/gst-doc.m4:
12383           use docbook check
12384
12385 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12386
12387         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12388         * gst/gsttag.h:
12389           add GstTagFlag
12390
12391 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12392
12393         * docs/gst/gstreamer-sections.txt:
12394         * docs/gst/tmpl/gst.sgml:
12395         * docs/gst/tmpl/gstbuffer.sgml:
12396         * docs/gst/tmpl/gstclock.sgml:
12397         * docs/gst/tmpl/gstelement.sgml:
12398         * docs/gst/tmpl/gstreamer-unused.sgml:
12399         * docs/gst/tmpl/gstxml.sgml:
12400           sync latest API changes to docs
12401
12402 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12403
12404         * gst/gstpluginfeature.c:
12405           fix doc snippet
12406         * tools/gst-inspect.c: (print_element_list):
12407           fix output of typefind
12408           add GPL header
12409         * tools/gst-launch.c:
12410           add GPL header
12411
12412 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12413
12414         * gst/elements/Makefile.am:
12415         * gst/elements/gstelements.c:
12416         * gst/elements/gsttypefindelement.c:
12417         * gst/elements/gsttypefindelement.h:
12418         * po/POTFILES.in:
12419         * po/fr.po:
12420         * po/nl.po:
12421           renamed gsttypefindelement to gsttypefind, conserving CVS history
12422
12423 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12424
12425         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12426         * gst/gsttag.h:
12427           add some tags used in ogg as well
12428           fix _ in replaygain tags
12429
12430 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12431
12432         * gst/gsterror.h:
12433           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12434
12435 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12436
12437         * gst/gstelement.c: (gst_element_error_full):
12438         * gst/gstelement.h:
12439           change _extended to _full
12440
12441 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12442
12443         reviewed by: <delete if not using a buddy>
12444
12445         * docs/gst/tmpl/gst.sgml:
12446         * docs/gst/tmpl/gstbuffer.sgml:
12447         * docs/gst/tmpl/gstclock.sgml:
12448         * docs/gst/tmpl/gstelement.sgml:
12449         * docs/gst/tmpl/gstreamer-unused.sgml:
12450         * docs/gst/tmpl/gstxml.sgml:
12451         * gst/gstelement.c: (gst_element_error_full):
12452         * gst/gstelement.h:
12453
12454 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12455
12456         * gst/gstelement.h: fix _gst_element_error_printf prototype
12457
12458 2004-01-20  David Schleef  <ds@schleef.org>
12459
12460         * gst/gststructure.c: (gst_structure_to_string):
12461         Convert function to use gst_value_serialize().
12462         * gst/gstvalue.c: (gst_value_serialize_list),
12463         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
12464         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
12465         (gst_value_serialize_int), (gst_value_serialize_double),
12466         (gst_string_wrap), (gst_value_serialize_string),
12467         (gst_value_serialize), (gst_value_deserialize):
12468         * gst/gstvalue.h:
12469         Add implementations for serialize.
12470
12471 2004-01-20  Julien MOUTTE  <julien@moutte.net>
12472
12473         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
12474         we want to keep that one in the future or change xvidenc.c to use 
12475         another error.
12476
12477 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12478
12479         * gst/gstelement.c: (_gst_element_error_printf):
12480         * gst/gstelement.h:
12481           privatise function
12482
12483 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12484
12485         * docs/random/error:
12486           doc explaining error system
12487         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12488           cleanup
12489
12490 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12491
12492         * gst/gst-i18n-app.h:
12493         * gst/gst-i18n-lib.h:
12494           remove inclusion of config.h
12495         * po/POTFILES.in:
12496         * po/nl.po:
12497           add gst/gstelement.c
12498
12499 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12500
12501         * po/nl.po: updated Dutch translation
12502
12503 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12504
12505         * gst/gsterror.c: (_gst_core_errors_init),
12506         (_gst_library_errors_init), (_gst_resource_errors_init),
12507         (_gst_stream_errors_init):
12508         remove ending punctuation dots
12509
12510 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12511
12512         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12513         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
12514         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12515         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12516         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12517         use GST_ERROR_SYSTEM
12518
12519 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12520
12521         * gst/gstelement.c: (gst_element_error_printf),
12522         (gst_element_error_extended):
12523         * gst/gstelement.h:
12524           add a helper printf function so we can have NULL values passed.
12525
12526 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12527
12528         * gst/gstelement.h:
12529           add G_STMT macros to gst_element_error, which isn't strictly
12530           necessary but people tell me to anyway.
12531
12532 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12533
12534         * gst/Makefile.am:
12535         * gst/autoplug/gstspideridentity.c:
12536         (gst_spider_identity_sink_loop_type_finding):
12537         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12538         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12539         (gst_filesink_close_file), (gst_filesink_handle_event),
12540         (gst_filesink_chain):
12541         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
12542         (gst_filesrc_map_region), (gst_filesrc_get_read),
12543         (gst_filesrc_open_file):
12544         * gst/elements/gstidentity.c: (gst_identity_chain):
12545         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12546         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12547         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12548         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
12549         * gst/gst.h:
12550         * gst/gst_private.h:
12551         * gst/gstelement.c: (gst_element_class_init),
12552         (gst_element_default_error), (gst_element_error_func),
12553         (gst_element_error_extended):
12554         * gst/gstelement.h:
12555         * gst/gsterror.c: (_gst_core_errors_init),
12556         (_gst_library_errors_init), (_gst_resource_errors_init),
12557         (_gst_stream_errors_init), (gst_error_get_message):
12558         * gst/gsterror.h:
12559         * gst/gstinfo.c: (_gst_debug_init):
12560         * gst/gstmarshal.list:
12561         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12562         (gst_pad_recover_caps_error), (gst_pad_pull):
12563         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12564         * gst/schedulers/gstbasicscheduler.c:
12565         (gst_basic_scheduler_chainhandler_proxy),
12566         (gst_basic_scheduler_gethandler_proxy),
12567         (gst_basic_scheduler_cothreaded_chain):
12568         * po/POTFILES.in:
12569         * po/fr.po:
12570         * po/nl.po:
12571           change error signal
12572           add error categories
12573
12574 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
12575
12576         * gst/gsttag.c: (_gst_tag_initialize):
12577         * gst/gsttag.h:
12578         Add replaygain tag
12579
12580 2004-01-18  Colin Walters  <walters@verbum.org>
12581
12582         * examples/retag/retag.c: Call gst_init before processing
12583         program args.  Add g_assert to _link_many call.
12584
12585 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12586
12587         * gst/gstpad.c: (gst_pad_alloc_buffer):
12588           Return a newly allocated buffer when the pad has no peer.
12589
12590 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12591
12592         * gst/gstclock.c: (gst_clock_get_time):
12593           make it compile with gcc 2.95 again.
12594           Patch by Scott Wheeler
12595
12596 2004-01-15  David Schleef  <ds@schleef.org>
12597
12598         * gst/gstcaps.h:
12599         Added gst_caps_is_simple() macro.
12600         * testsuite/caps/caps.c: (test1):
12601         * testsuite/caps/intersect2.c: (main):
12602         * testsuite/caps/intersection.c: (main):
12603         Fixes to make 'make check' work again after removing
12604         gst_caps_is_chained().
12605
12606 2004-01-15  Leif Johnson <leif@ambient.2y.net>
12607
12608         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
12609         and additions to the MIDI document.
12610
12611 2004-01-15  David Schleef  <ds@schleef.org>
12612
12613         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
12614         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
12615         of GST_RPAD_, since we don't know if it's a real or ghost pad.
12616
12617 2004-01-15  David Schleef  <ds@schleef.org>
12618
12619         * gst/gstqueue.c:
12620         * gst/gstqueue.h:
12621         Fix the spelling of "treshold" and make min_threshold actually
12622         affect the queue.
12623
12624 2004-01-15  David Schleef  <ds@schleef.org>
12625
12626         * gst/gstcaps.c:
12627         Add lots of documentation.
12628         * gst/gstcaps.h:
12629         Deprecate a few functions.
12630         * gst/gstpad.c:
12631         Removed use of deprecated functions.
12632
12633 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12634
12635         * gst/gstpad.c: (gst_pad_is_linked):
12636         * gst/gstpad.h:
12637           implement gst_pad_is_linked
12638         * gst/gstelement.h:
12639           reserve space for initiate_state_change
12640
12641 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12642
12643         * gst/autoplug/gstspideridentity.c:
12644         (gst_spider_identity_sink_loop_type_finding):
12645           break infinite loop by just returning instead of looping
12646         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
12647           set event time difference correctly. Set it to 1 second instead
12648           of 100ms to be more tolerant
12649         * gst/gstelement.c: (gst_element_set_time):
12650           add debugging output
12651
12652 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12653
12654         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
12655           query if buffers are inside the pool, ignore events
12656
12657 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12658
12659         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
12660         (gst_clock_set_speed), (gst_clock_set_active),
12661         (gst_clock_is_active), (gst_clock_reset),
12662         (gst_clock_handle_discont):
12663         * gst/gstclock.h:
12664           deprecate old interface and disable functions that aren't in use
12665           anymore.
12666         * gst/gstelement.h:
12667         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
12668         (gst_element_set_time), (gst_element_adjust_time):
12669           add concept of "element time" and functions to get/set this time.
12670         * gst/gstelement.c: (gst_element_change_state):
12671           update element time correctly.
12672         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12673           This is a debug message, not a g_critical.
12674         * gst/gstpad.c: (gst_pad_event_default):
12675           handle discontinuous events right with element time.
12676         * gst/gstscheduler.c: (gst_scheduler_state_transition):
12677           update to clocking fixes.
12678           set clocks on elements in READY=>PAUSED. The old behaviour caused
12679           a wrong element time on the first element that started playing.
12680         * gst/schedulers/gstbasicscheduler.c:
12681         (gst_basic_scheduler_class_init):
12682         * gst/schedulers/gstoptimalscheduler.c:
12683         (gst_opt_scheduler_class_init):
12684           remove code that just implements the default behaviour.
12685         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
12686           update to use new clocking functions
12687         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
12688         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
12689           update to test new element time.
12690         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
12691           use _get_allowed_caps instead of _get_caps. This catches filtered
12692           caps correctly.
12693         * testsuite/debug/commandline.c:
12694           update for new GST_DEBUG syntax.
12695         * testsuite/threads/Makefile.am:
12696           disable a test that only works sometimes.
12697
12698 2004-01-13  Julien MOUTTE <julien@moutte.net>
12699
12700         * po/LINGUAS: Adding fr.
12701         * po/fr.po: Adding french translation.
12702
12703 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12704
12705         * gst/parse/grammar.y:
12706         * po/POTFILES.in:
12707         * po/nl.po:
12708         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
12709           translate parsing error messages
12710
12711 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12712
12713         * po/POTFILES.in: adding gst-launch
12714         * po/nl.po: updated translation, all 99 strings translated
12715         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
12716         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
12717           fix strings for translation
12718
12719 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12720
12721         * gst/gst.c:
12722           - capitalize beginnings of popt options
12723           - fix strings for translation
12724           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
12725
12726 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12727
12728         * po/README: add some notes on how to update translations
12729
12730 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12731
12732         * ABOUT-NLS: removed, is autogenerated from autopoint
12733         * autogen.sh: add autopoint stuff
12734         * configure.ac: fix up gettext stuff
12735         * gst/Makefile.am: add i18n headers to noinst_HEADERS
12736         * gst/elements/gsttypefindelement.c: add header include
12737         * gst/gettext.h: add header, copy from system-installed header
12738         * gst/gst-i18n-app.h: to be included by each app having translations
12739         * gst/gst-i18n-lib.h: to be included by each lib having translations
12740         * gst/gst.c: (init_pre): fix up gettext calls
12741         * gst/gst_private.h: remove i18n stuff, moving to separate headers
12742         * po/LINGUAS: the new way to specify translations present
12743         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
12744         * po/Makevars: the variables filled in for GStreamer
12745         * po/POTFILES.in: added new files with translations
12746         * po/de.po: has new strings
12747         * po/nl.po: readded, has new strings
12748
12749 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12750
12751         * gst/gsttag.c: fix some strings marked for translation
12752
12753 2004-01-13  Iain <iain@prettypeople.org>
12754
12755         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
12756         group when we add an element to it, cos we unref it when we remove one
12757
12758 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12759
12760         * testsuite/debug/commandline.c: (debug_not_reached):
12761         * testsuite/debug/output.c: (check_message):
12762           fix testsuite
12763
12764 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12765
12766         * examples/cutter/.cvsignore:
12767         * examples/helloworld/.cvsignore:
12768         * examples/launch/.cvsignore:
12769         * examples/manual/.cvsignore:
12770         * examples/mixer/.cvsignore:
12771         * examples/pingpong/.cvsignore:
12772         * examples/plugins/.cvsignore:
12773         * examples/queue/.cvsignore:
12774         * examples/queue2/.cvsignore:
12775         * examples/queue3/.cvsignore:
12776         * examples/queue4/.cvsignore:
12777         * examples/retag/.cvsignore:
12778         * examples/thread/.cvsignore:
12779         * examples/typefind/.cvsignore:
12780         * examples/xml/.cvsignore:
12781         * gst/.cvsignore:
12782         * gst/autoplug/.cvsignore:
12783         * gst/elements/.cvsignore:
12784         * gst/indexers/.cvsignore:
12785         * gst/parse/.cvsignore:
12786         * gst/registries/.cvsignore:
12787         * gst/schedulers/.cvsignore:
12788         * libs/gst/bytestream/.cvsignore:
12789         * libs/gst/control/.cvsignore:
12790         * libs/gst/getbits/.cvsignore:
12791         * tests/.cvsignore:
12792         * tests/bufspeed/.cvsignore:
12793         * tests/instantiate/.cvsignore:
12794         * tests/memchunk/.cvsignore:
12795         * tests/muxing/.cvsignore:
12796         * tests/sched/.cvsignore:
12797         * tests/seeking/.cvsignore:
12798         * tests/threadstate/.cvsignore:
12799         * testsuite/.cvsignore:
12800         * testsuite/caps/.cvsignore:
12801         * testsuite/cleanup/.cvsignore:
12802         * testsuite/dynparams/.cvsignore:
12803         * testsuite/plugin/.cvsignore:
12804         * tools/.cvsignore:
12805           update - this is huge, because it includes *.bb, *.bbg and *.da files
12806           which are generated for gcov.
12807
12808 2004-01-11  David Schleef  <ds@schleef.org>
12809
12810         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
12811         a function to parse integers in ways that strto[u]l() does not.
12812
12813 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12814
12815         * tools/gst-inspect.c: (print_caps):
12816           improve output of caps a bit
12817
12818 2004-01-11  David Schleef  <ds@schleef.org>
12819
12820         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
12821         inherit correct flags (READONLY and DONTKEEP).
12822
12823 2004-01-11  David Schleef  <ds@schleef.org>
12824
12825         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
12826         (gst_filesrc_map_region):
12827         * gst/gstbuffer.c: (_gst_buffer_initialize),
12828         (_gst_buffer_sub_free), (gst_buffer_default_copy),
12829         (gst_buffer_new), (gst_buffer_create_sub),
12830         (gst_buffer_is_span_fast), (gst_buffer_span):
12831         * gst/gstbuffer.h:
12832         Change GstBuffer private structure element names. (all files)
12833         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
12834         (gst_queue_link):
12835         * gst/gstqueue.h:
12836         Implement getcaps/pad_link functions that handle the case where
12837         there are data in the queue.
12838
12839 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12840
12841         * gst/elements/gstbufferstore.c:
12842           initialize debugging structure correctly
12843         * gst/elements/gsttee.c: (gst_tee_set_property):
12844           g_object_notify when property was changed
12845         * gst/elements/gsttypefindelement.c:
12846         (gst_type_find_element_change_state):
12847           clear caps correctly
12848
12849 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12850
12851         * gst/gstqueue.c: (gst_queue_init):
12852           Use better defaults for when a queue should block. This
12853           gets rid of jerky playback for quite a few files.
12854           It takes more memory.
12855
12856 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12857
12858         (gst_xml_registry_parse_padtemplate):
12859           make critical message slightly more useful
12860
12861 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12862
12863         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
12864         (gst_debug_message_get), (gst_debug_log_default):
12865         * gst/gstinfo.h:
12866           Change gst_debug_log(_valist) to take a const format string.
12867           Change prototype of log function and functions using those to 
12868           take a GstDebugMessage instead of a string that requires using
12869           gst_debug_message_get.
12870
12871 2004-01-08  David Schleef  <ds@schleef.org>
12872
12873         * Makefile.am:
12874         * configure.ac:
12875         Add option --enable-gcov to build GStreamer with -fprofile-arcs
12876         and -ftest-coverage, which allows gcov to show information about
12877         testsuite coverage.
12878
12879 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12880
12881         * gst/gstutils.h:
12882           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
12883           GST_PARENT_CALL_WITH_DEFAULT
12884         * gst/elements/gstaggregator.c: 
12885         * gst/elements/gstbufferstore.c: 
12886         * gst/elements/gstfakesink.c: 
12887         * gst/elements/gstfakesrc.c: 
12888         * gst/elements/gstfdsink.c: 
12889         * gst/elements/gstfdsrc.c: 
12890         * gst/elements/gstfilesink.c: 
12891         * gst/elements/gstfilesrc.c: 
12892         * gst/elements/gstidentity.c: 
12893         * gst/elements/gstmd5sink.c: 
12894         * gst/elements/gstmultidisksrc.c:
12895         * gst/elements/gstpipefilter.c: 
12896         * gst/elements/gstshaper.c:
12897         * gst/elements/gststatistics.c:
12898         * gst/elements/gsttee.c:
12899         * gst/elements/gsttypefindelement.c:
12900           use them.
12901
12902 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
12903
12904         * docs/gst/gstreamer-docs.sgml: remove props
12905         * docs/gst/gstreamer-sections.txt: remove props
12906         * docs/gst/tmpl/gst.sgml:
12907         * docs/gst/tmpl/gstbin.sgml:
12908         * docs/gst/tmpl/gstbuffer.sgml:
12909         * docs/gst/tmpl/gstcaps.sgml:
12910         * docs/gst/tmpl/gstclock.sgml:
12911         * docs/gst/tmpl/gstelement.sgml:
12912         * docs/gst/tmpl/gstindex.sgml:
12913         * docs/gst/tmpl/gstobject.sgml:
12914         * docs/gst/tmpl/gstpad.sgml:
12915         * docs/gst/tmpl/gstpadtemplate.sgml:
12916         * docs/gst/tmpl/gstreamer-unused.sgml:
12917         * docs/gst/tmpl/gstthread.sgml:
12918         * docs/gst/tmpl/gstxml.sgml:
12919           sync with code reorganization
12920
12921 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
12922
12923         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12924         Make the 'Could not find compatible pad' message more informative.
12925
12926 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12927                                                                                 
12928         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
12929           Fix for if we pass NULL as property to location.
12930         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
12931         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
12932           Fix for instantiate-test (see below).
12933         * gst/gststructure.c: (_gst_structure_parse_value):
12934           Fix compile error on gcc-2.96.
12935         * configure.ac:
12936         * tests/Makefile.am:
12937         * tests/instantiate/Makefile.am:
12938         * tests/instantiate/create.c: (create_all_elements), (main):
12939           Add a test that instantiates all elements. This makes it easy to
12940           track dead code for old API/design (like setting event functions
12941           on sink pads and so on).
12942
12943 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
12944
12945         * gst/gstcaps.c: (gst_caps_append_structure):
12946           Move the poisoning to allow a NULL structure
12947         * gst/gstevent.c: (_gst_event_free):
12948           When freeing a navigation event, free the structure
12949           also
12950
12951 2004-01-04  David Schleef  <ds@schleef.org>
12952
12953         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
12954         Remove usage of gst_pad_proxy_fixate.
12955         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
12956         (gst_caps_split_one), (gst_caps_replace):
12957         Add poisoning code.
12958         * gst/gstmarshal.list:
12959         Add pointer__pointer for fixate signal
12960         * gst/gstpad.c: (gst_real_pad_class_init),
12961         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
12962         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
12963         (gst_pad_set_explicit_caps), (gst_pad_template_new):
12964         Add poisoning code. Add fixate signal on RealPad. Change
12965         set_explicit_caps() to take const GstCaps, like try_set_caps().
12966         * gst/gstpad.h:
12967         * testsuite/caps/Makefile.am:
12968         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
12969
12970 2004-01-03  David Schleef  <ds@schleef.org>
12971
12972         * gst/elements/gsttypefindelement.c:
12973         (gst_type_find_element_have_type), (gst_type_find_element_init):
12974         Use gst_pad_use_explicit_caps for src pad.
12975         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
12976         before using it.
12977
12978 2004-01-03  David Schleef  <ds@schleef.org>
12979
12980         * gst/gstelement.c: (gst_element_link_pads_filtered),
12981         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
12982         that linking was successful.
12983         * gst/gstpad.c: (gst_pad_link_free),
12984         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
12985         (gst_pad_link_try), (gst_pad_link_unnegotiate),
12986         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
12987         GstPadLinkReturn correctly between functions, and don't fail
12988         when DELAYED is used (DELAYED is very important).  Better
12989         cleanup on unlinking and unnegotiation.  Should fix some spider
12990         bugs.
12991
12992 2004-01-02  David Schleef  <ds@schleef.org>
12993
12994         * gst/gstelement.c: (gst_element_class_init),
12995         (gst_element_base_class_init): ->padtemplates should be cleared
12996         in base_init, since we need to have a fresh list for every
12997         class.  (Alternately, we chould copy the list and share the
12998         actual pad templates (not the list), but that would require
12999         changing every plugin to move pad template registration from
13000         base_init to class_init.)
13001
13002 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13003
13004         * gst/gstelement.c: (gst_element_class_add_pad_template):
13005           Refuse registering a pad template if another pad template
13006           with the same name already exists (#114715).
13007
13008 2004-01-02  David Schleef  <ds@schleef.org>
13009
13010         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13011         (gst_caps_is_equal_fixed): Add new function.
13012         * gst/gstcaps.h: ditto.
13013         * gst/gstpad.c: (gst_real_pad_class_init),
13014         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13015         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13016         check new caps against existing caps -- if they're the same, return
13017         OK without renegotiating.  caps-nego-failed signal fixed so that
13018         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13019         to save an extra caps copy.  Don't complete negotiation if a pad
13020         link function returns DELAYED.
13021
13022 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13023
13024         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13025           Fix wrong g_return_if_fail
13026
13027 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13028
13029         * gst/gstbin.c: (gst_bin_class_init):
13030         Change the marshalling of element_added/element_removed
13031         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13032         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13033
13034 2004-01-01  David Schleef  <ds@schleef.org>
13035
13036         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13037         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13038         (gst_pad_use_explicit_caps):
13039         * gst/gstpad.h:
13040         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13041         to use an internal getcaps and link fuction so that negotiation
13042         always results in the explicitly set caps.
13043         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13044         are particularly useful for decoders.
13045
13046 2003-12-31  David Schleef  <ds@schleef.org>
13047
13048         * gst/elements/gstidentity.c: (gst_identity_class_init),
13049         (gst_identity_init), (gst_identity_chain),
13050         (gst_identity_set_property), (gst_identity_get_property):
13051         * gst/elements/gstidentity.h:
13052         * gst/gstqueue.c: (gst_queue_init):
13053           Negotiation fixes.
13054
13055 2003-12-31  David Schleef  <ds@schleef.org>
13056
13057         * gst/gstcaps.c: (gst_caps_intersect),
13058         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13059           Implement gst_caps_normalize().
13060         * testsuite/caps/normalisation.c: (main):
13061           Add an additional test
13062
13063 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13064
13065         * gst/gstqueue.c: (gst_queue_init):
13066           use gst_pad_proxy_getcaps()
13067
13068 2003-12-31  David Schleef  <ds@schleef.org>
13069
13070         * gst/elements/gstshaper.c: (gst_shaper_link):
13071         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13072         * gst/gstqueue.c: (gst_queue_link):
13073           Negotiation fixes.
13074
13075 2003-12-31  David Schleef  <ds@schleef.org>
13076
13077         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13078         * gst/gstpad.h: Add functions that are useful as default pad
13079         link and fixate functions for elements.
13080
13081 2003-12-30  David Schleef  <ds@schleef.org>
13082
13083         * gst/gstpad.c: (gst_pad_link_try):
13084           Fix segfault when attempting to return to old caps
13085
13086 2003-12-29  David Schleef  <ds@schleef.org>
13087
13088         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13089         (gst_caps_structure_simplify), (gst_caps_simplify):
13090         * gst/gstcaps.h:
13091           Add simplify function
13092         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13093         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13094         * gst/gstpad.h:
13095           Copy over srcnotify, sinknotify when calling old pad_link
13096           functions.  Add new is_negotiated() function.
13097         * gst/gststructure.c: (gst_structure_copy):
13098           Fix an incredibly stupid bug that should have been noticed
13099           weeks ago.  _copy() returned the argument, not the new copy.
13100
13101 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13102
13103         * gst/gstcaps.c: (gst_caps_append):
13104           add sanity checks
13105         * gst/gstcaps.h: (gst_caps_debug):
13106           remove, it doesn't exist anymore.
13107         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13108         (gst_element_threadsafe_properties_post_run):
13109           make debugging messages not clutter up THREAD debug category
13110         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13111         (gst_element_change_state):
13112           update to new caps API
13113         * gst/gstinterface.c: (gst_implements_interface_cast):
13114           don't put vital code in g_return_if_fail
13115         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13116         (gst_pad_link_filtered):
13117           add pst_pad_try_link and use it.
13118         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13119           implement correctly, deprecate first one.
13120         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13121           add and implement.
13122         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13123           implement.
13124         (gst_pad_get_negotiated_caps):
13125           add and implement. Make GST_PAD_CAPS call this function.
13126         (gst_pad_get_caps):
13127           remove unneeded check..
13128         (gst_pad_recover_caps_error):
13129           disable, always return FALSE.
13130         (gst_real_pad_dispose):
13131           don't free caps and appfilter anymore, they're unused.
13132         * gst/gstpad.h:
13133           Reflect changes mentioned above.
13134         * gst/gstsystemclock.c: (gst_system_clock_wait):
13135           Make 'clock is way behind' a debugging message.
13136         * gst/gstthread.c: (gst_thread_change_state):
13137           Fix debugging message
13138
13139 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13140
13141         * gst/gstinfo.h:
13142           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13143         * docs/gst/tmpl/gstreamer-unused.sgml:
13144           removed all traces of cvs conflicts
13145
13146 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13147
13148         * configure.ac:
13149         * gst/schedulers/cothreads_compat.h:
13150         * libs/Makefile.am:
13151           remove last instances of wingo cothread usage
13152
13153 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13154
13155         * gst/gstplugin.c:
13156         * gst/gstversion.h.in:
13157         * gst/parse/grammar.y:
13158           change comment block from /** to /* when not gtk-doc comments
13159
13160 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13161
13162         * gst/gst.c: whitespace and doc style fixes
13163
13164 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13165
13166         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13167
13168 2003-12-24  Colin Walters  <walters@verbum.org>
13169
13170         * gst/elements/gsttypefindelement.c:
13171           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13172           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13173           Don't double-free caps.
13174
13175 2003-12-23  David Schleef  <ds@schleef.org>
13176
13177         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13178           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13179           Many little fixes and additions of debug statements to
13180           get rhythmbox working.
13181
13182 2003-12-23  Colin Walters  <walters@verbum.org>
13183
13184         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13185         Use GST_PAD_LINK_SUCCESSFUL.
13186
13187 2003-12-23  David Schleef  <ds@schleef.org>
13188
13189         * gst/elements/gstaggregator.c:
13190         * gst/elements/gsttee.c:
13191           Use gst_pad_proxy_getcaps().
13192         * gst/gstpad.c:
13193         * gst/gstpad.h:
13194           Add gst_pad_proxy_getcaps(), which filter elements can use
13195           as a generic getcaps implementation.
13196           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13197           was advertised.
13198
13199 2003-12-23  David Schleef  <ds@schleef.org>
13200
13201         * gst/gstpad.c:
13202           Rearrange/rewrite much of the pad negotiation code, since it
13203           resembled pasta.  This actually changes the way some
13204           negotiation works, since the previous code was inconsistent
13205           depending on how it was invoked.  Add (internal) structure
13206           GstPadLink, which is used to hold some information (more in
13207           the future) about the link between two pads.  Fixes a number
13208           of bugs, including random lossage of filter caps when the
13209           initial negotiation is delayed.  A few functions are still
13210           unimplemented.
13211         * gst/gstpad.h:
13212           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13213           these when testing GstPadLinkReturn values instead of comparing
13214           directly.
13215
13216 2003-12-23  David Schleef  <ds@schleef.org>
13217
13218         * gst/gstvalue.c: 
13219         * gst/gstvalue.h:
13220           Rearrange lots of code.  Change registration of compare function
13221           into registration of compare/serialize/deserialize functions.
13222           Doesn't include implementation of gst_value_[de]serialize(),
13223           but that should be easy.
13224
13225 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13226
13227         * docs/gst/gstreamer-sections.txt:
13228         * docs/gst/tmpl/gstprops.sgml: removed
13229         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13230           David removed props and caps code, so let's remove their docs as well.
13231           Removed all no longer existing symbols from gstreamer-sections.txt
13232           
13233 2003-12-22  Colin Walters  <walters@verbum.org>
13234
13235         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13236           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13237           of tags directly.
13238
13239 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13240
13241         * gst/elements/gstelements.c:
13242           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13243         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13244           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13245           gst_caps (peer).
13246
13247 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13248
13249         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13250         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13251         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13252         (gst_spider_identity_sink_loop_type_finding):
13253         * gst/autoplug/gstspideridentity.h:
13254           Fix autoplugging in spider element, so it works with new caps.
13255           This was mainly caused by identifying empty caps incorrectly.
13256
13257 2003-12-22  David Schleef  <ds@schleef.org>
13258
13259         * gststructure.c, gstvalue.c, gstvalue.h: Add
13260           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13261           using g_value_copy()
13262
13263 2003-12-21  David Schleef  <ds@schleef.org>
13264
13265         * many, many files: Merge CAPS branch.  This includes:
13266           - implemention of GstValue and several GstValue types
13267           - implemention of GstStructure
13268           - entire rewrite of GstCaps
13269           - removal of GstProps
13270           - many changes to GstPad to compensate for new caps paradigm
13271           - removal of GstBufferpool
13272         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13273         gstvalue.h, gst/gstcaps[2]*.[ch]:
13274           - rename gstcaps2.[ch] to gstcaps.[ch]
13275
13276 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13277
13278         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13279         (gst_queue_chain), (gst_queue_handle_src_event):
13280           implement timeout for sending events. Workaround for if the
13281           pipeline on this queue is not passing any data.
13282
13283 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13284                                                                                 
13285         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13286         * moved CVS to freedesktop.org
13287