docs/design/part-gstghostpad.txt: Overview of current GhostPad datastructures and...
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-07-29  Wim Taymans  <wim@fluendo.com>
2
3         * docs/design/part-gstghostpad.txt:
4         Overview of current GhostPad datastructures and use
5         cases for changing the target.
6
7 2005-07-28  Wim Taymans  <wim@fluendo.com>
8
9         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
10         Added checks for hierarchy consistency whan adding linked
11         elements to bins.
12
13         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
14         Added check to test element scheduling without bin/pipeline.
15
16         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
17         First add elements to bin, then link.
18         
19         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
20         (gst_bin_remove_func):
21         Unlink pads from elements added/removed from bin to maintain
22         hierarchy consistency.
23
24 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
25
26         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
27         (gst_base_transform_handle_buffer):
28         * gst/base/gstbasetransform.h:
29           Remove broken delay_configure (fixes renegotiation of software
30           scaling pipelines); remove some leftover printf()s.
31
32 2005-07-28  Wim Taymans  <wim@fluendo.com>
33
34         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
35         Added some more tests for wrong hierarchy
36
37         * docs/design/part-overview.txt:
38         Some updates.
39
40         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
41         Cleanups.
42
43         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
44         (gst_element_dispose):
45         Some more cleanups.
46
47         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
48         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
49         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
50         (gst_pad_set_caps), (gst_pad_send_event):
51         Check for correct hierarchy when linking pads. Moving to
52         strict requirement for ghostpads when linking elements in
53         different bins.
54
55         * gst/gstpad.h:
56         Clean ups. Added WRONG_HIERARCHY return value.
57
58 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
59
60         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
61           Better debug if no transform is possible.
62
63 2005-07-27  Wim Taymans  <wim@fluendo.com>
64
65         * docs/random/wtay/network-transp:
66         Some old doc I had.
67
68 2005-07-27  Wim Taymans  <wim@fluendo.com>
69
70         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
71         (gst_dp_event_from_packet):
72         Fix serialization of seek events.
73
74 2005-07-27  Wim Taymans  <wim@fluendo.com>
75
76         * check/gst-libs/gdp.c: (GST_START_TEST):
77         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
78         Fix compilation and fix event serialization.
79
80 2005-07-27  Wim Taymans  <wim@fluendo.com>
81
82         * CHANGES-0.9:
83         * docs/design/part-TODO.txt:
84         * docs/design/part-events.txt:
85         Some docs updates
86
87         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
88         (gst_base_sink_event), (gst_base_sink_do_sync),
89         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
90         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
91         (gst_base_src_do_seek), (gst_base_src_event_handler),
92         (gst_base_src_loop):
93         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
94         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
95         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
96         (gst_base_transform_event), (gst_base_transform_handle_buffer),
97         (gst_base_transform_set_passthrough),
98         (gst_base_transform_is_passthrough):
99         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
100         * gst/elements/gstfilesink.c: (gst_file_sink_event):
101         Event updates.
102
103         * gst/gstbuffer.h:
104         Use faster casts.
105
106         * gst/gstelement.c: (gst_element_seek):
107         * gst/gstelement.h:
108         Update gst_element_seek.
109
110         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
111         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
112         (gst_event_new_flush_start), (gst_event_new_flush_stop),
113         (gst_event_new_eos), (gst_event_new_newsegment),
114         (gst_event_parse_newsegment), (gst_event_new_tag),
115         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
116         (gst_event_parse_qos), (gst_event_new_seek),
117         (gst_event_parse_seek), (gst_event_new_navigation):
118         * gst/gstevent.h:
119         Make GstEvent use GstStructure. Add parsing code, make sure the
120         API is sufficiently generic.
121         Mark possible directions of events and serialization.
122
123         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
124         (_gst_message_copy), (gst_message_new_segment_start),
125         (gst_message_new_segment_done), (gst_message_new_custom),
126         (gst_message_parse_segment_start),
127         (gst_message_parse_segment_done):
128         Small cleanups.
129
130         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
131         (gst_pad_set_caps), (gst_pad_send_event):
132         Update for new events. 
133         Catch events sent in wrong directions.
134
135         * gst/gstqueue.c: (gst_queue_link_src),
136         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
137         (gst_queue_handle_src_query):
138         Event updates.
139
140         * gst/gsttag.c:
141         * gst/gsttag.h:
142         Remove event code from this file.
143
144         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
145         (gst_dp_event_from_packet):
146         Event updates.
147
148 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
149
150         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
151         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
152         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
153           Make debugging actually useful.
154
155 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
156
157         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
158         (gst_pad_fixate_caps):
159           Implement default fixation once again, so that gst_pad_fixate()
160           actually does anything at all. This probably needs to be some
161           sort of a last resort, and use profile-based fixation first, but
162           since that doesn't exist yet, this is the best we have. Fixes
163           visualization in Totem.
164
165 2005-07-22  Wim Taymans  <wim@fluendo.com>
166
167         * docs/design/part-events.txt:
168         Small update.
169
170         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
171         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
172         (gst_base_sink_activate_pull):
173         Some more comments.
174
175         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
176         (gst_fake_src_create):
177         Fix handoff marshall.
178
179         * gst/elements/gstidentity.c: (gst_identity_class_init),
180         (gst_identity_transform_ip):
181         We're a real inplace element.
182
183         * gst/gstbus.c: (gst_bus_post):
184         Added some comments.
185
186         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
187         * tests/muxing/case1.c: (main):
188         * tests/sched/dynamic-pipeline.c: (main):
189         * tests/sched/interrupt1.c: (main):
190         * tests/sched/interrupt2.c: (main):
191         * tests/sched/interrupt3.c: (main):
192         * tests/sched/runxml.c: (main):
193         * tests/sched/sched-stress.c: (main):
194         * tests/seeking/seeking1.c: (event_received), (main):
195         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
196         (main):
197         * tests/threadstate/threadstate3.c: (main):
198         * tests/threadstate/threadstate4.c: (main):
199         * tests/threadstate/threadstate5.c: (main):
200         Fix the tests.
201
202 2005-07-21  Wim Taymans  <wim@fluendo.com>
203
204         * docs/design/part-seeking.txt:
205         Some small additions.
206
207         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
208         (gst_base_sink_get_times), (gst_base_sink_do_sync),
209         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
210         * gst/base/gstbasesink.h:
211         discont values are gint64, handle the math correctly.
212
213         * gst/base/gstbasesrc.c: (gst_base_src_loop):
214         Make the basesrc report error if the source pad is not linked.
215
216         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
217         (gst_queue_loop), (gst_queue_handle_src_query),
218         (gst_queue_src_activate_push):
219         Make queue collect data even if the srcpad is not linked.
220         Start pushing out data as soon as it is linked.
221
222         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
223         * gst/gstutils.h:
224         Added gst_flow_get_name() to ease error reporting.
225
226 2005-07-20  Wim Taymans  <wim@fluendo.com>
227
228         * gst/gstmessage.c: (gst_message_new_segment_start),
229         (gst_message_new_segment_done), (gst_message_parse_segment_start),
230         (gst_message_parse_segment_done):
231         * gst/gstmessage.h:
232         Added a bunch of messages for advanced seeking.
233
234         * gst/parse/grammar.y:
235         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
236         (gst_dpman_state_changed):
237         Fix some new-pad -> pad-added signals
238
239 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
240
241         * docs/manual/appendix-porting.xml:
242         * docs/pwg/appendix-porting.xml:
243           Document new-pad/state-change signal renames and the FixedList
244           type rename.
245
246 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
247
248         * docs/manual/advanced-autoplugging.xml:
249         * docs/manual/basics-helloworld.xml:
250         * docs/manual/basics-pads.xml:
251         * docs/random/ds/0.9-suggested-changes:
252         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
253         * gst/gstelement.h:
254         * gst/gstevent.h:
255         * gst/gstformat.h:
256         * gst/gstquery.h:
257         * gst/gststructure.c: (gst_structure_value_get_generic_type),
258         (gst_structure_parse_array), (gst_structure_parse_value):
259         * gst/gstvalue.c: (gst_type_is_fixed),
260         (gst_value_list_prepend_value), (gst_value_list_append_value),
261         (gst_value_list_get_size), (gst_value_list_get_value),
262         (gst_value_transform_array_string), (gst_value_serialize_array),
263         (gst_value_deserialize_array), (gst_value_intersect_array),
264         (gst_value_is_fixed), (_gst_value_initialize):
265         * gst/gstvalue.h:
266           GstElement::new-pad -> pad-added, GstElement::state-change ->
267           state-changed, GstValueFixedList -> GstValueArray, add format and
268           flags as their own arguments in gst_element_seek() (should improve
269           "bindeability"), remove function generators since they don't work
270           under a whole bunch of compilers (they were deprecated already
271           anyway).
272
273 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
274
275         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
276         (_gst_debug_register_funcptr):
277         * gst/gstinfo.h:
278           Fix illegal cast on some platforms (#309253).
279
280 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
281
282         * gst/gstmessage.c: (gst_message_new_custom):
283         * gst/gstmessage.h:
284           Add _new_custom, make _new_application a macro to _new_custom.
285
286 2005-07-20  Wim Taymans  <wim@fluendo.com>
287
288         * gst/base/gstbasesrc.c: (gst_base_src_init),
289         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
290         * gst/base/gstbasesrc.h:
291         Add a gboolean to decide when to push out a discont.
292
293         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
294         (gst_queue_loop), (gst_queue_handle_src_query),
295         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
296         (gst_queue_set_property), (gst_queue_get_property):
297         Some cleanups.
298
299         * tests/threadstate/threadstate1.c: (main):
300         Make a thread test compile and run... very silly..
301
302
303 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
304
305         * docs/manual/appendix-porting.xml:
306           Mention removal of libgstgconf-0.9.la and existence of gconf
307           elements.
308
309 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
310
311         * docs/pwg/advanced-clock.xml:
312         * docs/pwg/appendix-porting.xml:
313         * docs/pwg/intro-preface.xml:
314         * docs/pwg/other-base.xml:
315         * docs/pwg/other-manager.xml:
316         * docs/pwg/other-nton.xml:
317         * docs/pwg/other-ntoone.xml:
318         * docs/pwg/other-oneton.xml:
319         * docs/pwg/pwg.xml:
320           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
321           demuxer), remove n-to-n (was never written), fix some code examples
322           and links and update the porting section to include all this.
323
324 2005-07-19  Wim Taymans  <wim@fluendo.com>
325
326         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
327         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
328         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
329         (gst_queue_src_activate_push), (gst_queue_change_state),
330         (gst_queue_get_property):
331         * gst/gstqueue.h:
332         Propagate GstFlowReturn more intelligently upstream and output
333         an ERROR/EOS when streaming stopped due to fatal error.
334
335 2005-07-19  Wim Taymans  <wim@fluendo.com>
336
337         * tools/gst-launch.c: (check_intr), (event_loop), (main):
338         Don't block forever for the state change to complete, the
339         pipeline already did with a sensible timeout.
340
341 2005-07-19  Wim Taymans  <wim@fluendo.com>
342
343         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
344         Make sure we never call the create function is we
345         got deactivated.
346
347 2005-07-19  Andy Wingo  <wingo@pobox.com>
348
349         * gst/parse/parse.l: Attempt to solve bug #172815.
350
351 2005-07-19  Wim Taymans  <wim@fluendo.com>
352
353         * docs/design/part-clocks.txt:
354         * docs/design/part-events.txt:
355         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
356         Small docs updates.
357         Only update the seeking values when we are not
358         busy streaming.
359
360 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
361
362         * gst/base/gstbasesrc.c: (gst_base_src_loop):
363           Oops, ignore the result of gst_pad_push_event here.
364
365 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
366
367         * gst/base/gstbasesrc.c: (gst_base_src_loop),
368         (gst_base_src_activate_push):
369           Send discont event from the loop function, as pads
370           aren't activated yet in the activate_push handler.
371
372         * gst/gstbin.c: (bin_bus_handler):
373           Don't leak element name.
374
375 2005-07-18  Andy Wingo  <wingo@pobox.com>
376
377         * configure.ac: Use AS_LIBTOOL_TAGS.
378
379 2005-07-18  Wim Taymans  <wim@fluendo.com>
380
381         * docs/gst/gstreamer.types:
382         Remove deleted types.
383
384 2005-07-18  Wim Taymans  <wim@fluendo.com>
385
386         * check/elements/gstfakesrc.c: (GST_START_TEST):
387         * configure.ac:
388         * gst/Makefile.am:
389         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
390         (init_popt_callback):
391         * gst/gst.h:
392         * gst/gst_private.h:
393         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
394         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
395         * gst/gstbin.h:
396         * gst/gstbus.h:
397         * gst/gstconfig.h.in:
398         * gst/gstelement.c: (gst_element_class_init),
399         (gst_element_set_base_time), (gst_element_get_base_time),
400         (iterator_fold_with_resync), (gst_element_change_state),
401         (gst_element_dispose), (gst_element_get_bus):
402         * gst/gstelement.h:
403         * gst/gstelementfactory.h:
404         * gst/gsterror.c: (_gst_core_errors_init):
405         * gst/gsterror.h:
406         * gst/gstevent.h:
407         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
408         * gst/gstindex.c:
409         * gst/gstinfo.c: (_gst_debug_init):
410         * gst/gstmessage.c: (_gst_message_copy):
411         * gst/gstmessage.h:
412         * gst/gstminiobject.h:
413         * gst/gstobject.c:
414         * gst/gstobject.h:
415         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
416         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
417         * gst/gstpad.h:
418         * gst/gstparse.h:
419         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
420         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
421         (gst_pipeline_get_last_stream_time):
422         * gst/gstpipeline.h:
423         * gst/gstpluginfeature.h:
424         * gst/gstquery.h:
425         * gst/gstscheduler.c:
426         * gst/gstscheduler.h:
427         * gst/gststructure.h:
428         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
429         (gst_task_finalize), (gst_task_func), (gst_task_create),
430         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
431         (gst_task_stop), (gst_task_pause):
432         * gst/gsttask.h:
433         * gst/gsttypefind.h:
434         * gst/gsttypes.h:
435         * gst/registries/gstlibxmlregistry.c: (load_feature),
436         (gst_xml_registry_load), (gst_xml_registry_save_feature):
437         * gst/registries/gstxmlregistry.c:
438         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
439         * gst/schedulers/threadscheduler.c:
440         * libs/gst/control/dparammanager.h:
441         * tools/gst-inspect.c: (print_element_list),
442         (print_plugin_features), (print_element_features):
443         * tools/gst-xmlinspect.c: (print_element_list),
444         (print_plugin_info), (main):
445         Removed plugable schedulers.
446         Removed Scheduler/Manager from elements.
447         Removed gsttypes.h, rearranged includes.
448         Removed dependency pad<->element, element<>pipeline, and
449         various others,  fix includes.
450         implement gst_pad_get_parent() with gst_object_get_parent()
451         Make GstTask sefcontained.
452         Fix _get_state() on GstBin, it did not return ASYNC with a 0
453         timeout.
454         Fix endless loop in iterator_fold_with_resync.
455
456
457 2005-07-18  Wim Taymans  <wim@fluendo.com>
458
459         * gst/Makefile.am:
460         * gst/gstarch.h:
461         Remove old file.
462
463 2005-07-18  Wim Taymans  <wim@fluendo.com>
464
465         * gst/Makefile.am:
466         No more cothreads.h
467
468 2005-07-18  Wim Taymans  <wim@fluendo.com>
469
470         * gst/cothreads.c:
471         * gst/cothreads.h:
472         Let's remove these.
473
474 2005-07-18  Wim Taymans  <wim@fluendo.com>
475
476         * docs/design/part-dynamic.txt:
477         * docs/design/part-events.txt:
478         * docs/design/part-seeking.txt:
479         Some more docs in the works.
480
481         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
482         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
483         (gst_base_transform_setcaps), (gst_base_transform_get_size),
484         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
485         (gst_base_transform_handle_buffer),
486         (gst_base_transform_sink_activate_push),
487         (gst_base_transform_src_activate_pull),
488         (gst_base_transform_set_passthrough),
489         (gst_base_transform_is_passthrough):
490         Refcounting fixes.
491
492         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
493         Cleanups.
494
495         * gst/gstevent.c: (gst_event_finalize):
496         Set SRC to NULL.
497
498         * gst/gstutils.c: (gst_element_unlink),
499         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
500         (gst_pad_proxy_setcaps):
501         * gst/gstutils.h:
502         Add _get_parent_element() to get a pads parent as an element.
503
504 2005-07-18  Wim Taymans  <wim@fluendo.com>
505
506         * check/gst/gstbin.c: (GST_START_TEST):
507         Remove bogus test.
508
509 2005-07-18  Wim Taymans  <wim@fluendo.com>
510
511         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
512         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
513         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
514         (gst_base_sink_event), (gst_base_sink_do_sync),
515         (gst_base_sink_chain), (gst_base_sink_loop),
516         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
517         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
518         Refcounting fixes.
519         Fix logic for returning ASYNC when not prerolled.
520
521 2005-07-18  Wim Taymans  <wim@fluendo.com>
522
523         * gst/gstqueue.c: (gst_queue_handle_sink_event):
524         Fix nasty refcount bug.
525
526 2005-07-16 Philippe Khalaf <burger@speedy.org>
527         * gst/elements/gstfdsrc.c:
528         * gst/elements/gstfdsrc.h:
529         * gst/elements/gstelements.c:
530         * gst/elements/Makefile.am:
531         Ported fdsrc to 0.9.
532
533 2005-07-16  Wim Taymans  <wim@fluendo.com>
534
535         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
536         (gst_base_sink_do_sync):
537         Fix compile error.
538
539 2005-07-16  Wim Taymans  <wim@fluendo.com>
540
541         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
542         (gst_base_sink_event), (gst_base_sink_get_times),
543         (gst_base_sink_do_sync), (gst_base_sink_change_state):
544         * gst/base/gstbasesink.h:
545         Store and use discont values when syncing buffers as described
546         in design docs.
547         
548         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
549         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
550         (gst_base_src_activate_push):
551         Push discont event when starting.
552
553         * gst/elements/gstidentity.c: (gst_identity_transform):
554         Small cleanups.
555
556         * gst/gstbin.c: (gst_bin_change_state):
557         Small cleanups in base_time  distribution.
558
559         * gst/gstelement.c: (gst_element_set_base_time),
560         (gst_element_get_base_time), (gst_element_change_state):
561         * gst/gstelement.h:
562         Added methods for the base_time of the element.
563         Some MT fixes.
564
565         * gst/gstpipeline.c: (gst_pipeline_send_event),
566         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
567         (gst_pipeline_get_last_stream_time):
568         * gst/gstpipeline.h:
569         MT fixes.
570         Handle seeking as described in design doc, remove stream_time
571         hack.
572         Cleanups clock and stream_time selection code. Added accessors
573         for the stream_time.
574         
575
576 2005-07-16  Andy Wingo  <wingo@pobox.com>
577
578         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
579         (#305291).
580
581 2005-07-16  Wim Taymans  <wim@fluendo.com>
582
583         * check/gst/gstbin.c: (GST_START_TEST):
584         Make elements silent as the deep_notify refs the
585         parent, which might make the test fail.
586
587         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
588         Don't hold the lock for too long.
589
590 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
591
592         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
593           Don't unref the caps we passed to gst_caps_make_writable() after
594           passing them. gst_caps_make_writable() will do that for us.
595
596 2005-07-15  Andy Wingo  <wingo@pobox.com>
597
598         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
599         (#157311).
600
601         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
602         own marshalling function for the handoff signal. Properly type the
603         buffer as a buffer. Fixes some warnings. Should do a more general
604         solution.
605         (gst_identity_class_init): Plug into the right marshaller.
606
607 2005-07-15  Wim Taymans  <wim@fluendo.com>
608
609         * docs/design/part-TODO.txt:
610         * docs/design/part-clocks.txt:
611         * docs/design/part-element-sink.txt:
612         * docs/design/part-events.txt:
613         * docs/design/part-gstpipeline.txt:
614         Updated docs, mostly DISCONT related.
615
616 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
617
618         * docs/pwg/building-pads.xml:
619           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
620
621 2005-07-15  Andy Wingo  <wingo@pobox.com>
622
623         * tools/gst-typefind.c: Update, add copyright block.
624
625         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
626         Normalize and truncate caps before fixation.
627
628         * gst/gstcaps.h:
629         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
630         discards all but the first structure from its argument.
631
632 2005-07-15  Wim Taymans  <wim@fluendo.com>
633
634         * gst/base/gstbasetransform.c: (gst_base_transform_init),
635         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
636         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
637         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
638         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
639         (gst_base_transform_chain), (gst_base_transform_change_state),
640         (gst_base_transform_set_passthrough),
641         (gst_base_transform_is_passthrough):
642         * gst/base/gstbasetransform.h:
643         Make passthrough work using the bufferpools.
644         Changed API a bit, subclasses have to write into a buffer
645         provided by the base class.
646         More debug info in nego functions.
647         
648         * gst/elements/gstidentity.c: (gst_identity_init),
649         (gst_identity_transform):
650         Port to new base class.
651
652 2005-07-15  Wim Taymans  <wim@fluendo.com>
653
654         * gst/gstmessage.c: (gst_message_new_state_changed):
655         * tools/gst-launch.c: (event_loop), (main):
656         Totally dump messages in -launch with the -m option.
657         Fix message name for State messages,
658
659 2005-07-14  Wim Taymans  <wim@fluendo.com>
660
661         * gst/base/gstbasesrc.c: (gst_base_src_loop):
662         Post error messages on errors.
663
664 2005-07-14  Wim Taymans  <wim@fluendo.com>
665
666         * gst/gstcaps.c: (gst_caps_do_simplify):
667         Remove debug info.
668
669         * gst/gsterror.h:
670         Define error for stream stopped.
671
672         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
673         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
674         Do proper return values.
675
676         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
677         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
678         (gst_pad_get_range):
679         Better return values.
680
681         * gst/gstpad.h:
682         Reorganise return values, add macro to check for fatal errors.
683
684         * gst/gstqueue.c: (gst_queue_chain):
685         Return proper GstFlowReturn values,
686
687 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
688
689         * docs/gst/gstreamer-sections.txt:
690         * docs/gst/gstreamer.types:
691         * docs/gst/tmpl/gst.sgml:
692         * docs/gst/tmpl/gstbasesink.sgml:
693         * docs/gst/tmpl/gstbasesrc.sgml:
694         * docs/gst/tmpl/gstbasetransform.sgml:
695         * docs/gst/tmpl/gstbin.sgml:
696         * docs/gst/tmpl/gstbuffer.sgml:
697         * docs/gst/tmpl/gstcaps.sgml:
698         * docs/gst/tmpl/gstclock.sgml:
699         * docs/gst/tmpl/gstcompat.sgml:
700         * docs/gst/tmpl/gstconfig.sgml:
701         * docs/gst/tmpl/gstelement.sgml:
702         * docs/gst/tmpl/gstelementdetails.sgml:
703         * docs/gst/tmpl/gstelementfactory.sgml:
704         * docs/gst/tmpl/gstenumtypes.sgml:
705         * docs/gst/tmpl/gsterror.sgml:
706         * docs/gst/tmpl/gstevent.sgml:
707         * docs/gst/tmpl/gstfakesink.sgml:
708         * docs/gst/tmpl/gstfakesrc.sgml:
709         * docs/gst/tmpl/gstfilesink.sgml:
710         * docs/gst/tmpl/gstfilesrc.sgml:
711         * docs/gst/tmpl/gstfilter.sgml:
712         * docs/gst/tmpl/gstformat.sgml:
713         * docs/gst/tmpl/gstghostpad.sgml:
714         * docs/gst/tmpl/gstimplementsinterface.sgml:
715         * docs/gst/tmpl/gstindex.sgml:
716         * docs/gst/tmpl/gstindexfactory.sgml:
717         * docs/gst/tmpl/gstinfo.sgml:
718         * docs/gst/tmpl/gstiterator.sgml:
719         * docs/gst/tmpl/gstmacros.sgml:
720         * docs/gst/tmpl/gstmemchunk.sgml:
721         * docs/gst/tmpl/gstminiobject.sgml:
722         * docs/gst/tmpl/gstobject.sgml:
723         * docs/gst/tmpl/gstpad.sgml:
724         * docs/gst/tmpl/gstpadtemplate.sgml:
725         * docs/gst/tmpl/gstparse.sgml:
726         * docs/gst/tmpl/gstpipeline.sgml:
727         * docs/gst/tmpl/gstplugin.sgml:
728         * docs/gst/tmpl/gstpluginfeature.sgml:
729         * docs/gst/tmpl/gstquery.sgml:
730         * docs/gst/tmpl/gstqueue.sgml:
731         * docs/gst/tmpl/gstregistry.sgml:
732         * docs/gst/tmpl/gstregistrypool.sgml:
733         * docs/gst/tmpl/gstscheduler.sgml:
734         * docs/gst/tmpl/gstschedulerfactory.sgml:
735         * docs/gst/tmpl/gststructure.sgml:
736         * docs/gst/tmpl/gstsystemclock.sgml:
737         * docs/gst/tmpl/gsttaglist.sgml:
738         * docs/gst/tmpl/gsttagsetter.sgml:
739         * docs/gst/tmpl/gsttrace.sgml:
740         * docs/gst/tmpl/gsttrashstack.sgml:
741         * docs/gst/tmpl/gsttypefind.sgml:
742         * docs/gst/tmpl/gsttypefindfactory.sgml:
743         * docs/gst/tmpl/gsttypes.sgml:
744         * docs/gst/tmpl/gsturihandler.sgml:
745         * docs/gst/tmpl/gsturitype.sgml:
746         * docs/gst/tmpl/gstutils.sgml:
747         * docs/gst/tmpl/gstvalue.sgml:
748         * docs/gst/tmpl/gstversion.sgml:
749         * docs/gst/tmpl/gstxml.sgml:
750         * docs/libs/tmpl/gstcontrol.sgml:
751         * docs/libs/tmpl/gstdataprotocol.sgml:
752         * docs/libs/tmpl/gstdparam.sgml:
753         * docs/libs/tmpl/gstdplinint.sgml:
754         * docs/libs/tmpl/gstdpman.sgml:
755         * docs/libs/tmpl/gstdpsmooth.sgml:
756         * docs/libs/tmpl/gstgetbits.sgml:
757         * docs/libs/tmpl/gstunitconvert.sgml:
758         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
759         (gst_push_src_base_init), (gst_push_src_class_init),
760         (gst_push_src_init), (gst_push_src_create):
761         * gst/base/gstpushsrc.h:
762         * gst/elements/gstelements.c:
763         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
764         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
765         (gst_fake_sink_init), (gst_fake_sink_set_property),
766         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
767         (gst_fake_sink_event), (gst_fake_sink_preroll),
768         (gst_fake_sink_render), (gst_fake_sink_change_state):
769         * gst/elements/gstfakesink.h:
770         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
771         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
772         (gst_fake_src_base_init), (gst_fake_src_class_init),
773         (gst_fake_src_init), (gst_fake_src_event_handler),
774         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
775         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
776         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
777         (gst_fake_src_create_buffer), (gst_fake_src_create),
778         (gst_fake_src_start), (gst_fake_src_stop):
779         * gst/elements/gstfakesrc.h:
780         * gst/elements/gstfilesink.c: (_do_init),
781         (gst_file_sink_base_init), (gst_file_sink_class_init),
782         (gst_file_sink_init), (gst_file_sink_dispose),
783         (gst_file_sink_set_location), (gst_file_sink_set_property),
784         (gst_file_sink_get_property), (gst_file_sink_open_file),
785         (gst_file_sink_close_file), (gst_file_sink_query),
786         (gst_file_sink_event), (gst_file_sink_render),
787         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
788         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
789         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
790         * gst/elements/gstfilesink.h:
791         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
792         (gst_file_src_class_init), (gst_file_src_init),
793         (gst_file_src_finalize), (gst_file_src_set_location),
794         (gst_file_src_set_property), (gst_file_src_get_property),
795         (gst_file_src_map_region), (gst_file_src_map_small_region),
796         (gst_file_src_create_mmap), (gst_file_src_create_read),
797         (gst_file_src_create), (gst_file_src_is_seekable),
798         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
799         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
800         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
801         (gst_file_src_uri_handler_init):
802         * gst/elements/gstfilesrc.h:
803           more autistic cleanliness in functions/names/defines
804
805 2005-07-13  Andy Wingo  <wingo@pobox.com>
806
807         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
808         source couldn't negotiate.
809
810         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
811         connections again.
812
813         * gst/gstutils.h:
814         * gst/gstutils.c (gst_element_link_pads_filtered): New old
815         function. I am channeling Hades. Put your boots on suckers!!!
816
817 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
818
819         * testsuite/caps/Makefile.am:
820         * testsuite/caps/value_compare.c:
821         * testsuite/caps/value_intersect.c:
822         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
823           move two testsuite apps over to the check dir
824
825 2005-07-12  Wim Taymans  <wim@fluendo.com>
826
827         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
828         Added more debug info in the negotiate process.
829
830         * gst/gstmessage.h:
831         Prepare for segment playback.
832
833         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
834         Better debugging.
835
836         * gst/gstutils.c:
837         Some more docs.
838
839         * tools/gst-launch.c: (main):
840         NULL pipeline on errors.
841
842 2005-07-12  Andy Wingo  <wingo@pobox.com>
843
844         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
845         not it comes from a malloc region. Make sure our copy gets freed.
846
847 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
848
849         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
850         * check/gst/gstmessage.c: (GST_START_TEST):
851         * check/gst/gststructure.c: (GST_START_TEST),
852         (gst_structure_suite), (main):
853           more testing
854         * gst/gstelement.c: (gst_element_message_full):
855           clean up GError and debug string now that they get copied
856         * gst/gstmessage.c: (gst_message_new_error),
857         (gst_message_new_warning), (gst_message_parse_error),
858         (gst_message_parse_warning):
859           use GST_TYPE_G_ERROR for structure_new, and take copies of
860           arguments, so that we don't mess up refcounting
861
862 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
863
864         * check/Makefile.am:
865           add per-test valgrind targets
866         * check/gst-libs/gdp.c: (GST_START_TEST),
867         (gst_data_protocol_suite), (main):
868           clean up
869
870 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
871
872         * check/Makefile.am:
873           instate more valgrindable tests
874         * check/elements/gstfakesrc.c: (chain_func), (event_func),
875         (GST_START_TEST), (fakesrc_suite):
876         * check/gst/gstpad.c: (GST_START_TEST):
877         * check/gst/gststructure.c: (GST_START_TEST):
878           fix test leaks
879         * docs/gst/tmpl/gstminiobject.sgml:
880         * gst/gstpad.c: (gst_pad_finalize):
881           fix the static mutex leak
882
883 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
884
885         * check/Makefile.am:
886           add two more tests for valgrinding
887         * check/gst/gstvalue.c: (GST_START_TEST):
888           test refcount of deserialized buffer, found a leak
889         * docs/gst/gstreamer-docs.sgml:
890         * docs/gst/gstreamer-sections.txt:
891         * docs/gst/gstreamer.types:
892         * docs/gst/tmpl/gstminiobject.sgml:
893           add miniobject to docs
894         * gst/gstminiobject.c:
895           add some docs
896         * gst/gstvalue.c: (gst_value_deserialize_buffer),
897         (gst_string_unwrap):
898           fix a hard-to-find invalid write for one of the tests
899           fix a leak for deserialized buffers
900
901 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
902
903         * docs/pwg/advanced-events.xml:
904         * docs/pwg/advanced-request.xml:
905         * docs/pwg/advanced-scheduling.xml:
906         * docs/pwg/appendix-porting.xml:
907         * docs/pwg/building-boiler.xml:
908         * docs/pwg/intro-preface.xml:
909         * docs/pwg/other-ntoone.xml:
910           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
911           of example code and explanation for pad activation, loop() and
912           getrange() functions and a bit more. Remove old comments pointing
913           to loop-functions.
914         * examples/pwg/Makefile.am:
915           Add loop/getrange examples.
916
917 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
918
919         * configure.ac:
920           check for valgrind binary + some fixes
921         * check/gst.supp:
922           valgrind suppressions for the tests
923         * check/Makefile.am:
924           add a valgrind: target that valgrinds the unit tests
925         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
926         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
927         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
928         * check/gst/gstghostpad.c:
929           added some cleanup
930         * check/gst/gstdata.c:
931           removed
932         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
933         (thread_unref), (gst_mini_object_suite), (main):
934           added
935         * gst/gst.c: (gst_deinit):
936         * gst/gst.h:
937           add a method to clean up.
938         * gst/gstsystemclock.c: (gst_system_clock_dispose),
939         (gst_system_clock_obtain):
940           allow for disposing the system clock.
941         * tools/gst-launch.c: (main):
942           deinit
943
944 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
945
946         * docs/gst/tmpl/gstbasesrc.sgml:
947         * docs/gst/tmpl/gstfakesrc.sgml:
948         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
949         (gst_base_src_init), (gst_base_src_set_property),
950         (gst_base_src_get_property), (gst_base_src_get_range),
951         (gst_base_src_start):
952         * gst/base/gstbasesrc.h:
953           add num-buffers property
954         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
955         (gst_fakesrc_init), (gst_fakesrc_set_property),
956         (gst_fakesrc_get_property), (gst_fakesrc_create),
957         (gst_fakesrc_start):
958           remove num-buffers property
959
960 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
961
962         * docs/gst/gstreamer-sections.txt:
963         * docs/gst/tmpl/gstbasesink.sgml:
964         * docs/gst/tmpl/gstbasesrc.sgml:
965         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
966         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
967         (gst_base_sink_finalize), (gst_base_sink_set_clock),
968         (gst_base_sink_set_property), (gst_base_sink_get_property),
969         (gst_base_sink_handle_object), (gst_base_sink_event),
970         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
971         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
972         (gst_base_sink_loop), (gst_base_sink_deactivate),
973         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
974         (gst_base_sink_change_state):
975         * gst/base/gstbasesink.h:
976         * gst/base/gstbasesrc.h:
977         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
978         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
979         (gst_filesink_init):
980           more macro splitting
981
982 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
983
984         * gst/gstelement.c: (gst_element_get_bus):
985           add debug
986         * tools/gst-launch.c: (check_intr), (event_loop):
987           fix bus leaks
988
989 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
990
991         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
992           fix a caps leak
993
994 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
995
996         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
997         (gst_base_src_finalize):
998           add finalize method and clean up properly
999         * gst/gstpipeline.c: (gst_pipeline_dispose):
1000           add debug
1001
1002 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1003
1004         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1005         (gst_bin_suite):
1006           add more things to check
1007         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1008         * gst/gstelement.c:
1009           more debug
1010
1011 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1012
1013         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1014         (GST_START_TEST), (fakesrc_suite):
1015         * check/gst-libs/gdp.c: (GST_START_TEST):
1016         * check/gst/gst.c: (GST_START_TEST):
1017         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1018         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1019         * check/gst/gstbus.c: (GST_START_TEST):
1020         * check/gst/gstcaps.c: (GST_START_TEST):
1021         * check/gst/gstdata.c: (GST_START_TEST):
1022         * check/gst/gstelement.c: (GST_START_TEST):
1023         * check/gst/gstghostpad.c: (GST_START_TEST):
1024         * check/gst/gstiterator.c: (GST_START_TEST):
1025         * check/gst/gstmessage.c: (GST_START_TEST):
1026         * check/gst/gstobject.c: (GST_START_TEST):
1027         * check/gst/gstpad.c: (GST_START_TEST):
1028         * check/gst/gststructure.c: (GST_START_TEST):
1029         * check/gst/gstsystemclock.c: (GST_START_TEST),
1030         (gst_systemclock_suite):
1031         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1032         * check/gst/gstvalue.c: (GST_START_TEST):
1033         * check/pipelines/cleanup.c: (GST_START_TEST):
1034         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1035         * check/states/sinks.c: (GST_START_TEST):
1036         * check/gstcheck.c: (gst_check_init):
1037         * check/gstcheck.h:
1038           add debugging category
1039           use GST_START_TEST now, so we add a debug line
1040
1041 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1042
1043         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1044           add test for state change message on a bin
1045         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1046           add another test
1047         * gst/gstbin.c: (gst_bin_init):
1048         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1049         * gst/gstelement.c: (gst_element_post_message),
1050         (gst_element_set_state):
1051         * gst/gstelementfactory.c: (gst_element_factory_create):
1052         * gst/gstmessage.c: (gst_message_new):
1053         * gst/gstscheduler.c:
1054           various debugging additions and cleanups
1055
1056 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1057
1058         * check/Makefile.am:
1059         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1060         (main):
1061           adding tests for elements
1062         * gst/gstelement.c: (gst_element_dispose):
1063
1064 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1065
1066         * gst/registries/gstlibxmlregistry.c: (load_feature):
1067           plug more leaks.  A simple gst_init() now is leakfree, yay.
1068
1069 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1070
1071         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1072         (gst_xml_registry_load):
1073           plug another memleak
1074
1075 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1076
1077         * configure.ac:
1078           use GST_SET_ERROR_CFLAGS
1079         * docs/faq/cvs.xml:
1080           change to ERROR_CFLAGS
1081
1082 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1083
1084         * configure.ac:
1085           make GST_ERROR_CFLAGS overridable and re-enable Werror
1086         * docs/faq/cvs.xml:
1087           add a note about error CFLAGS
1088         * docs/gst/tmpl/gstfakesrc.sgml:
1089         * gst/elements/gstfakesrc.c:
1090           comment out some unused code
1091         * gst/gst.c: (split_and_iterate):
1092         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1093         (load_feature):
1094           plug some memleaks
1095
1096 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1097
1098         * common/Makefile.am:
1099         * common/gtk-doc.mak:
1100         * docs/gst/Makefile.am:
1101           factor out gtk-doc.mak
1102
1103 2005-07-07  Wim Taymans  <wim@fluendo.com>
1104
1105         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1106         (gst_thread_scheduler_dispose):
1107         Unlock the STREAM_LOCK completely.
1108
1109 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1110
1111         * check/Makefile.am:
1112         * check/elements/.cvsignore:
1113         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1114         (START_TEST), (fakesrc_suite), (main):
1115         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1116         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1117         (gst_fakesrc_create), (gst_fakesrc_start):
1118         * gst/elements/gstfakesrc.h:
1119           adding a first element test
1120
1121 2005-07-07  Andy Wingo  <wingo@pobox.com>
1122
1123         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1124         debug message.
1125
1126 2005-07-07  Wim Taymans  <wim@fluendo.com>
1127
1128         * gst/gstquery.c:
1129         * gst/gstquery.h:
1130         Remove old types
1131
1132 2005-07-07  Wim Taymans  <wim@fluendo.com>
1133
1134         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1135         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1136         Allow subclasses to implement their own negotiation.
1137
1138 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1139
1140         * docs/design/part-gstbin.txt:
1141         * docs/design/part-gstpipeline.txt:
1142           Update design notes to reflect the movement of
1143           responsibility for bus handling from GstPipeline to
1144           GstBin
1145
1146 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1147
1148         * configure.ac:
1149           Remove unnecessary queue2/3/4 examples.
1150
1151 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1152
1153         * examples/Makefile.am:
1154         * examples/helloworld/helloworld.c: (event_loop), (main):
1155         * examples/queue/queue.c: (event_loop), (main):
1156         * examples/queue2/queue2.c: (main):
1157           Update a couple of the examples to work again.
1158
1159         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1160         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1161          Spelling corrections and extra debug.
1162         
1163         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1164         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1165         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1166         * gst/gstbin.h:
1167         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1168         (gst_pipeline_change_state):
1169         * gst/gstpipeline.h:
1170           Move the bus handler for children to the GstBin, and create a
1171           separate bus for receiving messages from children to the one the
1172           bus sends 'upwards' on.
1173
1174 2005-07-06  Wim Taymans  <wim@fluendo.com>
1175
1176         * gst/base/README:
1177         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1178         (gst_base_sink_handle_object), (gst_base_sink_loop),
1179         (gst_base_sink_change_state):
1180         * gst/base/gstbasesink.h:
1181         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1182         (gst_base_src_init), (gst_base_src_setcaps),
1183         (gst_base_src_getcaps), (gst_base_src_loop),
1184         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1185         (gst_base_src_start), (gst_base_src_change_state):
1186         * gst/base/gstbasesrc.h:
1187         Make basesrc negotiate.
1188         Handle the case where preroll fails in basesink.
1189         Update README.
1190
1191 2005-07-06  Wim Taymans  <wim@fluendo.com>
1192
1193         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1194         Implement the fixate function.
1195         Clean up acceptcaps.
1196
1197 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1198
1199         * docs/pwg/building-filterfactory.xml:
1200         * docs/pwg/pwg.xml:
1201           Remove never-written filter-factory chapter; I'll add the various
1202           base classes to part 4 ("other element types") later on.
1203
1204 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1205
1206         * docs/pwg/advanced-negotiation.xml:
1207         * docs/pwg/building-boiler.xml:
1208         * docs/pwg/building-pads.xml:
1209         * docs/pwg/pwg.xml:
1210         * examples/pwg/Makefile.am:
1211           Add a chapter on caps negotiation, simplify the original code
1212           samples a bit w.r.t. caps negotiation, add link to the advanced
1213           section. Add a bunch of examples showing different use cases of
1214           different types of caps negotiation. Upstream renegotiation isn't
1215           fully documented yet since nobody knows how that works.
1216
1217 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1218
1219         * check/gst/gstpad.c:
1220         * check/gstcheck.c:
1221         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1222           if pad has no parent, return NULL as list of internal links
1223
1224 2005-07-05  Andy Wingo  <wingo@pobox.com>
1225
1226         * gst/elements/gstfilesrc.c:
1227         * gst/elements/gstfakesrc.c: 
1228         * gst/base/gstpushsrc.c:
1229         * gst/base/gstbasesrc.h: 
1230         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1231         
1232 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1233
1234         * Makefile.am:
1235           better report generation target (lcov needs a patch)
1236
1237 2005-07-05  Andy Wingo  <wingo@pobox.com>
1238
1239         * gst/elements, testsuite: Null if we got it...
1240
1241 2005-07-05  Wim Taymans  <wim@fluendo.com>
1242
1243         * configure.ac:
1244         * libs/gst/dataprotocol/Makefile.am:
1245         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1246         * libs/gst/dataprotocol/dataprotocol.h:
1247         * pkgconfig/Makefile.am:
1248         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1249         * pkgconfig/gstreamer-dataprotocol.pc.in:
1250         Ported dataprotol to 0.9. 
1251         Added pkgconfig files.
1252
1253 2005-07-05  Andy Wingo  <wingo@pobox.com>
1254
1255         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1256         Default to returning TRUE for the case when tranform_caps returns
1257         a fixed caps, like for identity or volume.
1258
1259         * check/gst/gstbus.c (pound_bus_with_messages): 
1260         * check/gst/gstmessage.c (START_TEST): 
1261         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1262         message API change.
1263
1264         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1265         logic weaks here: always run transform_caps, trying passthrough
1266         operation only if the original caps intersects with the transform.
1267
1268         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1269         source and sink caps.
1270
1271         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1272         Intersect the peer caps with the pad template before going into
1273         transform_caps.
1274         (gst_base_transform_transform_caps): More debugging.
1275
1276         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1277         src argument.
1278
1279 2005-07-04  Edward Hervey  <edward@fluendo.com>
1280
1281         * gst/gstutils.c:
1282         * gst/gstutils.h:
1283         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1284         in bindings.
1285
1286 2005-07-04  Andy Wingo  <wingo@pobox.com>
1287
1288         * check/gst/gstpad.c: Only set explicit caps on pads.
1289
1290 2005-07-01  Andy Wingo  <wingo@pobox.com>
1291
1292         * tests/network-clock.scm: Commentary update.
1293
1294         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1295         Didn't really make sense, not implementable with basetransform,
1296         etc.
1297         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1298         attempt at implementing the sync property, needs an unlock method.
1299
1300         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1301         New func, by default returns the same caps (the identity
1302         transformation).
1303         (gst_base_transform_getcaps): Uses transform_caps to return
1304         something sensible.
1305         (gst_base_transform_setcaps): Complicated logic to get caps on
1306         both pads, even if they are different, and to call set_caps once
1307         for every time both pads get their caps set.
1308         (gst_base_transform_handle_buffer): Give the ref to the transform
1309         function. Allows in-place modification of the buffer.
1310
1311         * gst/base/gstbasetransform.h (transform_caps): New class method.
1312         Given caps on one side, what can I do on the other.
1313         (set_caps): Take two caps, one for each side of the element.
1314
1315         * gst/gstpad.h:
1316         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1317         caps in place. This is safe because we can check the mutability of
1318         the caps, and a good idea because fixate functions are just called
1319         as a matter of last resort. (Not actually implemented.)
1320         (gst_pad_set_caps): If the caps we're setting is actually the same
1321         as the existing pad caps, just update the pointer without calling
1322         setcaps. Assert that caps is either NULL or fixed, as per the
1323         docs.
1324
1325         * gst/gstghostpad.c: Update for fixate changes.
1326
1327 2005-07-02  Andy Wingo  <wingo@pobox.com>
1328
1329         * gst/gstcaps.c:
1330         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1331         two refcounts makes it immutable, which is enough. Doc more.
1332
1333 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1334
1335         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1336           Put the mini_object into GValue as a mini_object,
1337           not a gpointer, since that's how we declared
1338           the signal.
1339
1340 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1341
1342         * examples/pwg/Makefile.am:
1343           Fix buildbot again.
1344
1345 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1346
1347         * docs/pwg/building-testapp.xml:
1348           Add extra check.
1349         * examples/pwg/Makefile.am:
1350           Fix buildbot.
1351
1352 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1353
1354         * configure.ac:
1355         * examples/Makefile.am:
1356         * examples/pwg/Makefile.am:
1357         * examples/pwg/extract.pl:
1358           Enable building the PWG examples.
1359         * docs/pwg/advanced-interfaces.xml:
1360           Add URI interface stub.
1361         * docs/pwg/advanced-types.xml:
1362         * docs/pwg/other-autoplugger.xml:
1363         * docs/pwg/appendix-porting.xml:
1364         * docs/pwg/pwg.xml:
1365           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1366         * docs/pwg/building-boiler.xml:
1367         * docs/pwg/building-chainfn.xml:
1368         * docs/pwg/building-pads.xml:
1369         * docs/pwg/building-props.xml:
1370         * docs/pwg/building-state.xml:
1371         * docs/pwg/building-testapp.xml:
1372           Update the building-*.xml parts for 0.9 changes. All examples
1373           code blocks compile in examples/pwg/*.
1374
1375 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1376
1377         * docs/manual/advanced-autoplugging.xml:
1378         * docs/manual/appendix-checklist.xml:
1379         * docs/manual/appendix-integration.xml:
1380         * docs/manual/highlevel-components.xml:
1381           Fix playbin/decodebin examples, update docs a bit, mention bus
1382           instead of signals in various places, mention kmplayer and
1383           kaffeine since they have a working GStreamer backend in the KDE
1384           section.
1385
1386 2005-06-30  Wim Taymans  <wim@fluendo.com>
1387
1388         * CHANGES-0.9:
1389         * docs/design/draft-ghostpads.txt:
1390         * docs/design/draft-push-pull.txt:
1391         * docs/design/draft-query.txt:
1392         * docs/design/part-TODO.txt:
1393         * docs/design/part-query.txt:
1394         Added CHANGES-0.9 doc, updated status of other docs.
1395         
1396         * gst/gstquery.h:
1397         Remove "hmm" macro
1398
1399 2005-06-30  Wim Taymans  <wim@fluendo.com>
1400
1401         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1402         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1403         (gst_base_sink_change_state):
1404         * gst/base/gstbasesink.h:
1405         Some tweaks, only EOS and a buffer complete a preroll.
1406
1407 2005-06-30  Andy Wingo  <wingo@pobox.com>
1408
1409         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1410         activate_push down to the internal pad as well.
1411
1412 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1413
1414         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1415
1416         * gst/gsttaginterface.c:
1417           Some documentation fixes (#307394 and #307397).
1418
1419 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1420
1421         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1422
1423         * gst/gstvalue.c: (gst_value_intersect_list):
1424           Fix memleak (#309125).
1425
1426 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1427
1428         * docs/manual/advanced-dataaccess.xml:
1429           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1430         * docs/manual/basics-pads.xml:
1431           Add reference for filtered caps to above chapter.
1432
1433 2005-06-30  Wim Taymans  <wim@fluendo.com>
1434
1435         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1436         (gst_bin_change_state):
1437         Probes are gone.
1438         Lame attempt at making the state change function a bit
1439         more readable.
1440
1441 2005-06-30  Wim Taymans  <wim@fluendo.com>
1442
1443         * docs/design/part-clocks.txt:
1444         * docs/design/part-element-sink.txt:
1445         * docs/design/part-events.txt:
1446         * docs/design/part-preroll.txt:
1447         * docs/design/part-states.txt:
1448         Some more tweeks and additions to the docs.
1449
1450 2005-06-30  Wim Taymans  <wim@fluendo.com>
1451
1452         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1453         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1454         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1455         (gst_pad_check_pull_range), (gst_pad_get_range),
1456         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1457         * gst/gstpad.h:
1458         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1459         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1460         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1461         (gst_pad_remove_buffer_probe):
1462         Removed atomic operations, use existing LOCK.
1463         Move exception handling out of main code path.
1464
1465 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1466
1467         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1468         (silly_return_true_function), (gst_pad_class_init),
1469         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1470         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1471         (gst_pad_send_event):
1472           Fix accumulator, add default value by using _emitv() instead
1473           of _emit() for signal emission.
1474
1475 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1476
1477         * docs/manual/advanced-dataaccess.xml:
1478         * examples/manual/Makefile.am:
1479           Add probe example.
1480         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1481           Make work (??).
1482
1483 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1484
1485         * gst/elements/gstfilesink.c: (gst_filesink_render):
1486           Simplify code so that we don't have to handle short
1487           writes and return GST_FLOW_ERROR if an error occured.
1488
1489 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1490
1491         * docs/gst/gstreamer-docs.sgml:
1492           Remove probes more.
1493
1494 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1495
1496         * docs/gst/gstreamer-sections.txt:
1497         * docs/gst/tmpl/gstpad.sgml:
1498         * docs/gst/tmpl/gstprobe.sgml:
1499         * gst/Makefile.am:
1500         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1501         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1502         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1503         (gst_pad_push_event), (gst_pad_send_event):
1504         * gst/gstpad.h:
1505         * gst/gstutils.c: (gst_pad_add_data_probe),
1506         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1507         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1508         (gst_pad_remove_buffer_probe):
1509         * gst/gstutils.h:
1510           Remove old probes, add new g-signal-based probes and some utility
1511           functions.
1512
1513 2005-06-29  Edward Hervey  <edward@fluendo.com>
1514
1515         * gst/gstelementfactory.c:
1516         * gst/gstutils.h:
1517         * gst/gstutils.c:
1518         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1519         the definition to the header file.
1520
1521 2005-06-29  Andy Wingo  <wingo@pobox.com>
1522
1523         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1524         plugins from the source directory.
1525
1526 2005-06-29  Wim Taymans  <wim@fluendo.com>
1527
1528         * docs/gst/tmpl/gstbuffer.sgml:
1529         * docs/gst/tmpl/gstclock.sgml:
1530         Some fixings for blantently wrong text.
1531
1532 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1533
1534         * check/Makefile.am:
1535         * gst/gst.c: (add_path_func), (init_pre):
1536         * gst/gstregistry.c: (gst_registry_add_path):
1537           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1538           only scan the GST_PLUGIN_PATH locations, and not add
1539           system locations
1540
1541 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1542
1543         * docs/gst/gstreamer-sections.txt:
1544         * docs/gst/tmpl/gstbasesrc.sgml:
1545         * gst/gstelement.c:
1546         * gst/gstelement.h:
1547         * gst/gstevent.c:
1548         * gst/gstutils.c:
1549           doc fixes
1550
1551 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1552
1553         * docs/manual/advanced-autoplugging.xml:
1554           Fix autoplugging example.
1555
1556 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1557
1558         * docs/manual/advanced-autoplugging.xml:
1559         * docs/manual/mime-world.fig:
1560           Try to get autoplugging working, fix type detection. Fix text
1561           in hello-world image.
1562
1563 2005-06-29  Wim Taymans  <wim@fluendo.com>
1564
1565         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1566         (gst_base_sink_change_state):
1567         Small debug line.
1568
1569         * gst/gstclock.h:
1570         map SIGNAL and BROADCAST to the right function.
1571
1572         * gst/gstobject.h:
1573         Remove redundant braces.
1574
1575         * gst/gstpad.c: (gst_pad_set_caps):
1576         Don't call setcaps function when reseting caps to NULL.
1577
1578         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1579         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1580         (gst_system_clock_id_unschedule):
1581         Use BROADCAST as this is what we do.
1582
1583 2005-06-29  Wim Taymans  <wim@fluendo.com>
1584
1585         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1586         We are actually prerolling before commiting the state
1587         change. 
1588
1589 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1590
1591         * docs/manual/advanced-clocks.xml:
1592         * docs/manual/advanced-interfaces.xml:
1593         * docs/manual/advanced-metadata.xml:
1594         * docs/manual/advanced-position.xml:
1595         * docs/manual/advanced-schedulers.xml:
1596         * docs/manual/advanced-threads.xml:
1597         * docs/manual/appendix-porting.xml:
1598         * docs/manual/basics-bins.xml:
1599         * docs/manual/basics-bus.xml:
1600         * docs/manual/basics-elements.xml:
1601         * docs/manual/basics-helloworld.xml:
1602         * docs/manual/basics-pads.xml:
1603         * docs/manual/highlevel-components.xml:
1604         * docs/manual/manual.xml:
1605         * docs/manual/thread.fig:
1606           Update (until threads/scheduling) Application Development Manual;
1607           remove GstThread, add GstBus, add simple porting checklist, add
1608           documentation for tag writing, clocks, make all examples until this
1609           part compile and run.
1610         * examples/manual/Makefile.am:
1611           Update from changes to Application Development Manual; add bus
1612           example, remove thread example.
1613
1614 2005-06-28  Wim Taymans  <wim@fluendo.com>
1615
1616         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
1617         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
1618         (gst_bus_source_dispatch):
1619         Add debugging messages.
1620         Make internal methods static.
1621         Handle the case where the bus is flushed in the handler.
1622         
1623         * gst/gstelement.c: (gst_element_get_bus):
1624         Fix refcount in _get_bus();
1625
1626         * gst/gstpipeline.c: (gst_pipeline_change_state),
1627         (gst_pipeline_get_clock_func):
1628         Clock refcounting fixes.
1629         Handle the case where preroll timed out more gracefully.
1630         
1631         * gst/gstsystemclock.c: (gst_system_clock_dispose):
1632         Clean up the internal thread in dispose. This is needed
1633         for subclasses that actually get disposed.
1634         
1635         * gst/schedulers/threadscheduler.c:
1636         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1637         (gst_thread_scheduler_dispose):
1638         Free thread pool in dispose.
1639
1640 2005-06-28  Andy Wingo  <wingo@pobox.com>
1641
1642         * tests/network-clock-utils.scm (debug, print-event): New utils.
1643
1644         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
1645         (*packet-loss*): Unified loss probability.
1646         (network-time): Report out-of-band events.
1647
1648         * tests/plot-data: Add support for out-of-band events. Hack it
1649         into this script instead of passing it down the pipe; should fix
1650         this later.
1651
1652 2005-06-28  Wim Taymans  <wim@fluendo.com>
1653
1654         * docs/gst/gstreamer.types:
1655         * docs/gst/tmpl/gstbasesrc.sgml:
1656         * docs/gst/tmpl/gstpad.sgml:
1657         Docs fixes.
1658
1659 2005-06-28  Wim Taymans  <wim@fluendo.com>
1660
1661         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1662         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
1663         (gst_proxy_pad_do_fixatecaps):
1664         Correctly proxy the check_pull_range function.
1665
1666 2005-06-28  Andy Wingo  <wingo@pobox.com>
1667
1668         * tests/network-clock.scm: Removed need for slib.
1669         
1670 2005-06-28  Wim Taymans  <wim@fluendo.com>
1671
1672         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
1673         (gst_basesink_preroll_queue_flush):
1674         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
1675         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
1676         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1677         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1678         (gst_proxy_pad_set_property):
1679         * gst/gstpad.c:
1680         * gst/gstpad.h:
1681         * gst/gstqueue.c: (gst_queue_init):
1682         The deprecated pad loop function is removed now.
1683
1684 2005-06-28  Andy Wingo  <wingo@pobox.com>
1685
1686         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
1687         New parameters, simulate network packet loss.
1688
1689         * tests/network-clock-utils.scm: Initialize the RNG.
1690
1691 2005-06-28  Wim Taymans  <wim@fluendo.com>
1692
1693         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
1694         (gst_basesink_event), (gst_basesink_deactivate):
1695         Flushing the preroll queue always needs to unlock the waiters.
1696
1697 2005-06-28  Edward Hervey  <edward@fluendo.com>
1698
1699         * gst/gstpipeline.c: (gst_pipeline_send_event): 
1700         Wheen a seek was successful on a pipeline, set the stream_time to the
1701         seek offset in order to have a synchronized stream_time.
1702
1703 2005-06-28  Wim Taymans  <wim@fluendo.com>
1704
1705         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1706         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
1707         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
1708         (gst_proxy_pad_do_fixatecaps):
1709         Call wrapper function instead of just calling the function
1710         pointers. This takes care of any locking and whatmore.
1711
1712 2005-06-28  Wim Taymans  <wim@fluendo.com>
1713
1714         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
1715         (gst_pad_pull_range):
1716         * gst/gstpad.h:
1717         CONNECTED -> LINKED.
1718
1719 2005-06-28  Andy Wingo  <wingo@pobox.com>
1720
1721         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
1722         source-munging commit!!!
1723
1724         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
1725         (gst_object_sink): Take gpointer arguments, not GstObject --
1726         avoids casts. Like GLib.
1727
1728         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
1729         activate.
1730
1731 2005-06-27  Andy Wingo  <wingo@pobox.com>
1732
1733         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
1734         remaining buffer.
1735
1736         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
1737         returns a sorted copy of the trace list.
1738         (gst_alloc_trace_print_live): New API, only prints traces with
1739         live objects. Sort the list.
1740         (gst_alloc_trace_print_all): Sort the list.
1741         (gst_alloc_trace_print): Align columns.
1742
1743         * gst/elements/gstttypefindelement.c:
1744         * gst/elements/gsttee.c:
1745         * gst/base/gstbasesrc.c:
1746         * gst/base/gstbasesink.c:
1747         * gst/base/gstbasetransform.c:
1748         * gst/gstqueue.c: Adapt for pad activation changes.
1749
1750         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
1751         sched.
1752         (gst_pipeline_dispose): Drop ref on sched.
1753
1754         * gst/gstpad.c (gst_pad_init): Set the default activate func.
1755         (gst_pad_activate_default): Push mode by default.
1756         (pre_activate_switch, post_activate_switch): New stubs, things to
1757         do before and after switching activation modes on pads.
1758         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
1759         the pad's activate function to choose which mode to activate.
1760         Shortcut on deactivation and call the right function directly.
1761         (gst_pad_activate_pull): New API, (de)activates a pad in pull
1762         mode.
1763         (gst_pad_activate_push): New API, same for push mode.
1764         (gst_pad_set_activate_function) 
1765         (gst_pad_set_activatepull_function) 
1766         (gst_pad_set_activatepush_function): Setters for new API.
1767
1768         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
1769         Trace all miniobjects.
1770         (gst_mini_object_make_writable): Unref the arg if we copy, like
1771         gst_caps_make_writable.
1772
1773         * gst/gstmessage.c (_gst_message_initialize): No trace init.
1774
1775         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
1776         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
1777         Adapt for new pad API.
1778
1779         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
1780
1781         * gst/gstelement.h:
1782         * gst/gstelement.c (gst_element_iterate_src_pads) 
1783         (gst_element_iterate_sink_pads): New API functions.
1784         
1785         * gst/gstelement.c (iterator_fold_with_resync): New utility,
1786         should fold into gstiterator.c in some form.
1787         (gst_element_pads_activate): Simplified via use of fold and
1788         delegation of decisions to gstpad->activate.
1789
1790         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
1791         help in debugging.
1792
1793         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
1794         class once in init, like gstmessage. Didn't run into this issue
1795         but it seems correct. Don't initialize a trace, gstminiobject does
1796         that.
1797
1798         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
1799         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
1800         to the bus.
1801         (assert_live_count): New util function, uses alloc traces to check
1802         cleanup.
1803
1804         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
1805         To be modified when unlink drops the internal pad.
1806
1807 2005-06-27  Wim Taymans  <wim@fluendo.com>
1808
1809         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
1810         (gst_bin_change_state):
1811         Cleanup the get_state() function a little, make sure it
1812         iterates the same set of elements.
1813         Added stub iterate_state_order().
1814
1815 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1816
1817         * docs/gst/gstreamer-docs.sgml:
1818         * docs/gst/gstreamer-sections.txt:
1819         * docs/gst/gstreamer.types:
1820         * docs/gst/tmpl/gstbasesink.sgml:
1821         * docs/gst/tmpl/gstbasesrc.sgml:
1822         * docs/gst/tmpl/gstbasetransform.sgml:
1823         * docs/gst/tmpl/gstelement.sgml:
1824         * docs/gst/tmpl/gstiterator.sgml:
1825         * gst/base/gstbasesrc.c:
1826         * gst/base/gstbasesrc.h:
1827         * gst/base/gstbasetransform.h:
1828         * gst/gstelement.c:
1829         * gst/gstiterator.h:
1830           adding basetransform and iterator docs
1831
1832 2005-06-27  Andy Wingo  <wingo@pobox.com>
1833
1834         * docs/design/part-activation.txt: Notes on how activation should
1835         work -- not quite implemented yet.
1836
1837 2005-06-25  Wim Taymans  <wim@fluendo.com>
1838
1839         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
1840         At least get the chain function correct, needs more
1841         fixing.
1842
1843 2005-06-25  Wim Taymans  <wim@fluendo.com>
1844
1845         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1846         (gst_basesink_handle_object), (gst_basesink_event),
1847         (gst_basesink_do_sync), (gst_basesink_handle_event),
1848         (gst_basesink_change_state):
1849         * gst/gsttask.h:
1850         Right, two problems here: ghostpads don't take locks and
1851         glib _rec_mutex_lock_full() with depth==0 still locks.
1852         Catch illegal locking and g_warn them.
1853
1854 2005-06-25  Wim Taymans  <wim@fluendo.com>
1855
1856         * check/states/sinks.c: (START_TEST), (gst_object_suite):
1857         Have to check for completion now...
1858
1859 2005-06-25  Wim Taymans  <wim@fluendo.com>
1860
1861         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1862         (gst_basesink_handle_object), (gst_basesink_event),
1863         (gst_basesink_do_sync), (gst_basesink_handle_event),
1864         (gst_basesink_change_state):
1865         * gst/gstpad.h:
1866         Unlock STREAM_LOCK whatever the recursion was.
1867
1868 2005-06-25  Wim Taymans  <wim@fluendo.com>
1869
1870         * gst/base/gstbasesink.c: (gst_basesink_set_property),
1871         (gst_basesink_preroll_queue_empty),
1872         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
1873         (gst_basesink_event), (gst_basesink_do_sync),
1874         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
1875         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
1876         (gst_basesink_change_state):
1877         Reworked the base sink, handle event and buffer serialisation
1878         correctly and removed possible deadlock.
1879         Handle EOS correctly.
1880
1881 2005-06-25  Wim Taymans  <wim@fluendo.com>
1882
1883         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
1884         (gst_pipeline_change_state):
1885         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1886         Allow elements to post EOS in the state change function.
1887         Fix up -launch, make it exit the poll loop when the
1888         pipeline actually changed state.
1889         Fix up warning parsing in -launch.
1890
1891 2005-06-25  Wim Taymans  <wim@fluendo.com>
1892
1893         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
1894         (gst_tee_sink_activate):
1895         Core takes STREAM_LOCK for us now.
1896
1897 2005-06-25  Wim Taymans  <wim@fluendo.com>
1898
1899         * gst/gstelement.c: (gst_element_get_state_func),
1900         (gst_element_set_state):
1901         * gst/gstelement.h:
1902         * gst/gstmessage.c: (gst_message_parse_error),
1903         (gst_message_parse_warning):
1904         Keep track of current target state while performing a state
1905         change so that subclasses can do something interesting.
1906         Fix parsing of warning/error messages when GError is NULL.
1907
1908 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1909
1910         * docs/gst/Makefile.am:
1911         * docs/gst/gstreamer-docs.sgml:
1912         * docs/gst/gstreamer-sections.txt:
1913         * docs/gst/gstreamer.types:
1914         * docs/gst/tmpl/gstbasesink.sgml:
1915         * docs/gst/tmpl/gstbasesrc.sgml:
1916         * docs/gst/tmpl/gstbin.sgml:
1917         * docs/gst/tmpl/gstcompat.sgml:
1918         * docs/gst/tmpl/gstfakesink.sgml:
1919         * docs/gst/tmpl/gstfakesrc.sgml:
1920         * docs/gst/tmpl/gstfilesink.sgml:
1921         * docs/gst/tmpl/gstfilesrc.sgml:
1922         * docs/gst/tmpl/gstindex.sgml:
1923         * docs/manual/appendix-quotes.xml:
1924         * gst/base/gstbasesrc.h:
1925         * gst/elements/gstfakesrc.h:
1926         * gst/gstmessage.h:
1927           start pulling in base classes and elements in our docs
1928
1929 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
1930
1931         * docs/gst/Makefile.am:
1932         * docs/libs/Makefile.am:
1933           fixed make distcheck with gtk-doc 1.3
1934
1935 2005-06-23  Wim Taymans  <wim@fluendo.com>
1936
1937         * gst/gstelement.c: (gst_element_get_state_func),
1938         (gst_element_set_state), (gst_element_change_state):
1939         When the state did not change, also report NO_PREROLL
1940         when it matters.
1941
1942 2005-06-23  Wim Taymans  <wim@fluendo.com>
1943
1944         * gst/gstpad.c: (gst_pad_event_default):
1945         * gst/gstqueue.c: (gst_queue_loop):
1946         No unsafe task pausing please.
1947
1948 2005-06-23  Wim Taymans  <wim@fluendo.com>
1949
1950         * gst/schedulers/threadscheduler.c:
1951         (gst_thread_scheduler_task_start),
1952         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
1953         Ref the task before pushing it on the threadpool. This
1954         makes sure that we have a ref when the threadfunction is
1955         actually called.
1956
1957 2005-06-23  Andy Wingo  <wingo@pobox.com>
1958
1959         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
1960         offset is greater than the file's size.
1961
1962         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
1963         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
1964         * gst/gstobject.c (gst_object_class_init): Make the class lock
1965         recursive. Wim won't let me drop deep_notify. Decodebin works
1966         again, whoopdy doo.
1967
1968         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
1969         internal pad, and hacks accordingly. Doesn't do it on the target
1970         pad because we change its caps. Probably catches all cases of
1971         interest tho.
1972         (gst_ghost_pad_set_property): Connect to notify::caps as
1973         appropritate.
1974
1975         * tests/network-clock.scm (plot-simulation): Pipe data to the
1976         elite python skript.
1977
1978         * tests/network-clock-utils.scm (define-parameter): New macro,
1979         defines a parameter that can be set via the command line.
1980         (set-parameter!, parse-parameter-arguments): Command line args
1981         parser.
1982
1983         * tests/plot-data: Simple matplotlib-based plotter, takes input on
1984         stdin.
1985
1986 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
1987
1988         * gst/elements/gsttypefindelement.c:
1989         (gst_type_find_element_handle_event):
1990           Don't restart typefinding on a discont.
1991         * gst/gstelement.c: (gst_element_set_state):
1992           Debug spelling fix.
1993         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
1994           Allow changing mode of an active pad.
1995           Debug output fixes.
1996         * gst/registries/gstlibxmlregistry.c: (load_feature):
1997           Don't cast a static pad template to a normal pad template.
1998
1999 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2000
2001         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2002         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2003           remove gst_strtoll completely, since it didn't actually do
2004           anything more than what g_ascii_strtoull already does.
2005           check for range errors when deserializing
2006           do a cast for the unsigned cases; but further fixing needs
2007           a decision on what the interpretation of "(int)" and
2008           deserialization should be for values that fall outside the
2009           type's boundaries (ie, refuse, or interpret as casting)
2010
2011 2005-06-23  Wim Taymans  <wim@fluendo.com>
2012
2013         * check/Makefile.am:
2014         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2015         * docs/design/part-live-source.txt:
2016         * docs/design/part-states.txt:
2017         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2018         (gst_basesrc_set_live), (gst_basesrc_is_live),
2019         (gst_basesrc_get_range), (gst_basesrc_activate),
2020         (gst_basesrc_change_state):
2021         * gst/base/gstbasesrc.h:
2022         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2023         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2024         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2025         * gst/gstelement.c: (gst_element_get_state_func),
2026         (gst_element_set_state):
2027         * gst/gstelement.h:
2028         * gst/gsttypes.h:
2029         * tools/gst-launch.c: (event_loop), (main):
2030         Added support for live sources and other elements that
2031         cannot do preroll.
2032         Updated design docs, added live-source design doc.
2033         Implemented live source functionality in basesrc
2034         Fix error condition in _bin_get_state()
2035         Implement live source handling in -launch.
2036         Added check for live sources.
2037         Fixed case in GstBin where elements were changed state
2038         multiple times.
2039
2040
2041 2005-06-23  Andy Wingo  <wingo@pobox.com>
2042
2043         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2044         borken refcounting.
2045
2046         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2047         gst_caps_replace takes care of this for us.
2048
2049         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2050         gst_pad_set_caps on the target, not just its setcaps() function.
2051
2052         * tests/network-clock.scm: 
2053         * tests/network-clock-utils.scm: A network clock simulator.
2054         Something of an algorithmic testbed before doing something in C.
2055
2056 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2057
2058         * check/Makefile.am:
2059         * check/gst/capslist.h:
2060           copy over from 0.8, and add two with bitmasks specified with
2061           (int) 0xFF...
2062         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2063           add test to parse everything from capslist.h
2064         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2065         (main):
2066           add test for structure deserialization
2067         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2068           add tests for deserialization of strings to int types
2069         * gst/gststructure.c: (gst_structure_nth_field_name):
2070         * gst/gststructure.h:
2071           add a way to get the name of a field referenced by index
2072         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2073           instead of checking if the resulting long long lies between
2074           min and max, we check if the long long would fit into
2075           a number of bytes for the final type.
2076           This fixes cases where a string represents 2^32 - 1, which
2077           when cast to int would be the (valid) -1, but is bigger than
2078           G_MAXINT
2079
2080 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2081
2082         * gst/parse/grammar.y:
2083           add a log line for type deserialization
2084
2085 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2086
2087         * check/gst/gstvalue.c: (START_TEST):
2088         * gst/gstvalue.c: (gst_value_deserialize):
2089           return long long, not int, so gint64 deserialization actually
2090           works.  Is there any flag that makes the compiler check this ?
2091           Fixes #308559
2092
2093 2005-06-22  Wim Taymans  <wim@fluendo.com>
2094
2095         * gst/gstbuffer.h:
2096         Added convenience macros for setting buffers in GValue.
2097
2098 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2099
2100         * check/gst/.cvsignore:
2101         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2102           add a test deserializing int64, and comment part out because
2103           it fails, yay !
2104
2105 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2106
2107         * check/Makefile.am:
2108         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2109         * testsuite/Makefile.am:
2110         * testsuite/caps/Makefile.am:
2111         * testsuite/caps/value_serialize.c:
2112         * testsuite/test_gst_init.c:
2113           move a value_serialize test over
2114
2115 2005-06-20  Wim Taymans  <wim@fluendo.com>
2116
2117         * gst/gstpad.c:
2118         Small doc updates.
2119         
2120         * gst/gstvalue.c: (gst_value_compare_buffer),
2121         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2122         (gst_value_compare_flags), (gst_value_serialize_flags),
2123         (gst_value_deserialize_flags), (_gst_value_initialize):
2124         Fix serialisation of buffers, they are not boxed types anymore
2125
2126 2005-06-20  Wim Taymans  <wim@fluendo.com>
2127
2128         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2129         Testcase to show error in buffer-on-caps serialisation.
2130
2131 2005-06-20  Andy Wingo  <wingo@pobox.com>
2132
2133         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2134         will be adding to later.
2135
2136         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2137         if its socks fill with rocks.
2138         (gst_system_clock_obtain): Set the name on object construction.
2139         Avoid double-checked locking.
2140
2141 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2142
2143         * gst/gsturi.c: (gst_element_make_from_uri):
2144           Fix potential endless loop.
2145
2146 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2147
2148         * check/Makefile.am:
2149           add gsttag
2150         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2151         (main):
2152           move over from testsuite dir and clean up
2153         * configure.ac:
2154         * gst/gsttag.c:
2155         * testsuite/Makefile.am:
2156         * testsuite/tags/.cvsignore:
2157         * testsuite/tags/Makefile.am:
2158         * testsuite/tags/merge.c:
2159           remove testsuite/tags
2160
2161 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2162
2163         * docs/gst/gstreamer-sections.txt:
2164         * docs/gst/tmpl/gstenumtypes.sgml:
2165         * win32/gstenumtypes.c:
2166           clean up documentation build a little
2167
2168 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2169
2170         * check/gstcheck.h:
2171           add macros for checking refcounts on objects and caps
2172         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2173           add some more unit tests
2174         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2175         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2176           fix leaked refcounts (I hope :)) so unittest works
2177         * gst/gstpad.h:
2178           whitespace removal
2179
2180 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2181
2182         * configure.ac: back to HEAD
2183
2184 === release 0.9.1 ===
2185
2186 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2187
2188         * NEWS:
2189         * RELEASE:
2190           updated
2191
2192 2005-06-17  Andy Wingo  <wingo@pobox.com>
2193
2194         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2195         assert; it's always possible that the pad gets deactivated in
2196         between the checks in gstpad.c and the implementation. Rely on
2197         finish_preroll() to return a FLUSHING or similar instead of on the
2198         assert.
2199         
2200         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2201         clock and post an EOS message if we come out of finish_preroll in
2202         the playing state.
2203
2204 2005-06-16  David Schleef  <ds@schleef.org>
2205
2206         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2207         (gst_capsfilter_set_property): Allow NULL as possible value
2208         for filter_caps property, indicating GST_CAPS_ANY.
2209
2210 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2211
2212         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2213           fix debug output
2214         * gst/schedulers/Makefile.am:
2215           use libgst prefix
2216         * gstreamer.spec.in:
2217           fix spec for it
2218
2219 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2220
2221         * gstreamer.spec.in:
2222           clean up
2223
2224 2005-06-08  Andy Wingo  <wingo@pobox.com>
2225
2226         * gst/gstutils.c: RPAD fixes all around.
2227         (gst_element_link_pads): Refcounting fixes.
2228
2229         * tools/gst-inspect.c:
2230         * tools/gst-xmlinspect.c:
2231         * parse/grammar.y:
2232         * gst/base/gsttypefindhelper.c:
2233         * gst/base/gstbasesink.c:
2234         * gst/gstqueue.c: RPAD fixes.
2235
2236         * gst/gstghostpad.h:
2237         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2238         pads. The tricky thing is they provide both source and sink
2239         interfaces, since they proxy the internal pad for the external
2240         pad, and vice versa. Implement with lower-level ProxyPad objects,
2241         with the interior proxy pad as a child of the exterior ghost pad.
2242         Should write a doc on this.
2243         
2244         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2245         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2246         gst_object API.
2247         
2248         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2249         pads are real pads. No ghost pads in this file. Not documenting
2250         the myriad s/RPAD/PAD/ and REALIZE fixes.
2251         (gst_pad_class_init): Add properties for "direction" and
2252         "template". Both are construct-only, so they can't change during
2253         the life of the pad. Fixes properly deriving from GstPad.
2254         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2255         derived objects, just set properties when creating the objects via
2256         g_object_new.
2257         (gst_pad_get_parent): Implement as a function, return NULL if the
2258         parent is not an element.
2259         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2260         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2261         
2262         * gst/gstobject.c (gst_object_class_init): Make name a construct
2263         property. Don't set it in the object init.
2264
2265         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2266         with UNKNOWN direction.
2267         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2268         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2269         (gst_element_remove_pad): Remove ghost-pad special cases.
2270         (gst_element_pads_activate): Remove rpad cruft.
2271
2272         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2273         catch the pad's-parent-not-an-element case.
2274
2275         * gst/gst.h: Include gstghostpad.h.
2276
2277         * gst/gst.c (init_post): No more real, ghost pads.
2278
2279         * gst/Makefile.am: Add gstghostpad.[ch].
2280
2281         * check/Makefile.am:
2282         * check/gst/gstbin.c:
2283         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2284         into a bin creates ghost pads, and that the refcounts are right.
2285         Partly moved from gstbin.c.
2286
2287 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2288
2289         * check/gst-libs/.cvsignore:
2290         * check/gst/.cvsignore:
2291         * check/pipelines/.cvsignore:
2292           ignore more
2293         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2294         (START_TEST), (cleanup_suite), (main):
2295           add some tests related to cleanup after running pipelines
2296
2297 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2298
2299         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2300           add a testsuite for GstBuffer
2301
2302 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2303
2304         * gst/gstminiobject.h:
2305           add defines for accessing the refcount
2306
2307 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2308
2309         * Makefile.am: added support for html unit test coverage reports
2310
2311 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2312
2313         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2314           Free existing caps if the capsfilter changes. Add a FIXME about
2315           setting those caps on the pads.
2316
2317         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2318           Before adding a ghost pad to a parent bin, check that there isn't
2319           already one for the element on the bin. Prevents infinite recursion
2320           when using decodebin in parse pipelines. Andy says he'll rewrite the
2321           way this works anyway, so ignore the hack.
2322
2323 2005-06-02  Andy Wingo  <wingo@pobox.com>
2324
2325         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2326         file size, pass it on to the type find helper.
2327
2328         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2329         segment_start and segment_end properly according to the seek
2330         method. Segment_end is still a bit flaky because offset can be
2331         negative for CUR and END cases, but it takes -1 as an "unset"
2332         value.
2333
2334 2005-06-02  Wim Taymans  <wim@fluendo.com>
2335
2336         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2337         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2338         (gst_basesink_activate):
2339         * gst/base/gstbasesink.h:
2340         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2341         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2342         (gst_pad_query), (gst_pad_start_task):
2343         * gst/gstpad.h:
2344         * gst/gstqueue.c: (gst_queue_bufferalloc),
2345         (gst_queue_handle_sink_event), (gst_queue_chain):
2346         Bufferalloc: return GstFlowReturn to more accuratly report
2347         why allocation failed.
2348
2349 2005-06-02  Wim Taymans  <wim@fluendo.com>
2350
2351         * gst/gstpipeline.c: (gst_pipeline_send_event):
2352         Take snapshot of state without blocking.
2353
2354 2005-06-02  Wim Taymans  <wim@fluendo.com>
2355
2356         * docs/design/part-TODO.txt:
2357         * docs/design/part-caps.txt:
2358         * docs/design/part-clocks.txt:
2359         * docs/design/part-negotiation.txt:
2360         * docs/design/part-preroll.txt:
2361         Small doc updates 
2362
2363 2005-05-30  Wim Taymans  <wim@fluendo.com>
2364
2365         * gst/elements/gstidentity.c: (gst_identity_event),
2366         (gst_identity_transform), (gst_identity_get_property):
2367         Protect last_message property as it is accessed from
2368         multiple threads.
2369
2370 2005-05-30  Wim Taymans  <wim@fluendo.com>
2371
2372         * gst/gstelement.c: (gst_element_init),
2373         (gst_element_pads_activate), (gst_element_change_state):
2374         Slicker pad activation code.
2375
2376 2005-05-30  Wim Taymans  <wim@fluendo.com>
2377
2378         * gst/Makefile.am:
2379         * gst/gstelement.h:
2380         * gst/gstelementfactory.h:
2381         * gst/gsttypes.h:
2382         Move elementfactory methods to separate .h file.
2383
2384 2005-05-30  Wim Taymans  <wim@fluendo.com>
2385
2386         * docs/design/part-overview.txt:
2387         * gst/gstsystemclock.h:
2388         Small typo fixes, doc updates.
2389
2390 2005-05-30  Wim Taymans  <wim@fluendo.com>
2391
2392         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2393         (init_popt_callback):
2394         Remove cpu-opt flag.
2395
2396 2005-05-30  Wim Taymans  <wim@fluendo.com>
2397
2398         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2399         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2400         * gst/gstbuffer.h:
2401         Avoid typechecking in places where not needed.
2402         Added accessor for malloc_data.
2403
2404 2005-05-30  Wim Taymans  <wim@fluendo.com>
2405
2406         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2407         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2408         (gst_pad_configure_sink), (gst_pad_configure_src),
2409         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2410         (gst_pad_start_task):
2411         Propagate errors from _set_caps() in configure_src/sink
2412         functions instead of returning TRUE.
2413         FLUSH events can travel up and downstream
2414
2415
2416 2005-05-30  Wim Taymans  <wim@fluendo.com>
2417
2418         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2419         (gst_basesink_activate):
2420         Handle EOS in preroll.
2421
2422 2005-05-30  Wim Taymans  <wim@fluendo.com>
2423
2424         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2425         (gst_queue_loop), (gst_queue_handle_src_event):
2426         Remove old pieces of code
2427         Flushing the queue in an upstream event is a very bad idea.
2428
2429 2005-05-26  Andy Wingo  <wingo@pobox.com>
2430
2431         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2432         gst_value_set_mini_object so as to add a ref on the object (which
2433         will be removed when the value is unset).
2434
2435         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2436         arg type in ::handoff.
2437
2438         * gst/gstelement.c (gst_element_change_state): Also deactivate
2439         pads in READY->NULL, just in case the element didn't make it to
2440         PAUSED. Wingo tested, Wim approved.
2441
2442 2005-05-26  Wim Taymans  <wim@fluendo.com>
2443
2444         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2445         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2446         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2447         A flushing pad cannot be used to alloc_buffer from.
2448
2449 2005-05-26  Wim Taymans  <wim@fluendo.com>
2450
2451         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2452         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2453         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2454         (gst_bus_create_watch), (gst_bus_add_watch_full):
2455         * gst/gstbus.h:
2456         Implement a real GSource and use g_main_context_wakeup() to
2457         signal new messages instead of the socketpair.
2458
2459 2005-05-25  Wim Taymans  <wim@fluendo.com>
2460
2461         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2462         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2463         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2464         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2465         (gst_pad_send_event), (gst_pad_start_task):
2466         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2467         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2468         (gst_queue_sink_activate), (gst_queue_src_activate),
2469         (gst_queue_change_state):
2470         * gst/gstqueue.h:
2471         Fix state changes for non sinks. We now change sinks, then elements
2472         with unconnected srcpads, then the rest.
2473         More efficient queue unlocking in flush and state changes.
2474         Set the pad activate mode even if it does not have an activate
2475         function.
2476
2477 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2478
2479         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2480           Don't go in pull mode for non-seekable sources.
2481         * gst/elements/gsttypefindelement.h:
2482         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2483         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2484         (free_entry), (stop_typefinding),
2485         (gst_type_find_element_handle_event), (find_peek),
2486         (gst_type_find_element_chain), (do_pull_typefind),
2487         (gst_type_find_element_change_state):
2488           Allow typefinding (w/o seeking) in push-mode, simplified version
2489           of what was in 0.8.
2490         * gst/gstutils.c: (gst_buffer_join):
2491         * gst/gstutils.h:
2492           gst_buffer_join() from 0.8.
2493
2494 2005-05-25  Wim Taymans  <wim@fluendo.com>
2495
2496         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2497         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2498         (gst_pad_send_event), (gst_pad_start_task):
2499         Disable attempt at mode switching until it is figured out.
2500
2501 2005-05-25  Wim Taymans  <wim@fluendo.com>
2502
2503         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2504         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2505         (gst_basesink_finish_preroll), (gst_basesink_chain),
2506         (gst_basesink_loop), (gst_basesink_activate),
2507         (gst_basesink_change_state):
2508         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2509         (gst_basesrc_get_range), (gst_basesrc_loop),
2510         (gst_basesrc_activate):
2511         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2512         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2513         (gst_real_pad_init), (gst_real_pad_set_property),
2514         (gst_real_pad_get_property), (gst_pad_set_active),
2515         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2516         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2517         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2518         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2519         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2520         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2521         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2522         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2523         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2524         (gst_pad_stop_task):
2525         * gst/gstpad.h:
2526         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2527         (gst_queue_loop), (gst_queue_src_activate):
2528         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2529         (gst_task_get_state):
2530         * gst/gsttask.h:
2531         * gst/schedulers/threadscheduler.c:
2532         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2533         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2534         in task function.
2535         Remove ACTIVE pad flag, use FLUSHING everywhere
2536         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2537         functions.
2538         Add locks around IS_FLUSHING when reading.
2539         Take STREAM lock in chain(), get_range() functions so plugins
2540         don't need to take it anymore.
2541         
2542
2543
2544 2005-05-25  Wim Taymans  <wim@fluendo.com>
2545
2546         * tools/gst-launch.c: (event_loop):
2547         Unref message after using its contents instead of
2548         before.
2549
2550 2005-05-24  Wim Taymans  <wim@fluendo.com>
2551
2552         * docs/design/draft-ghostpads.txt:
2553         * docs/design/draft-push-pull.txt:
2554         * docs/design/draft-query.txt:
2555         * docs/design/part-overview.txt:
2556         Docs updates, added general overview doc.
2557
2558 2005-05-21  David Schleef  <ds@schleef.org>
2559
2560         * docs/gst/tmpl/old/GstBin.sgml:
2561         * docs/gst/tmpl/old/GstBuffer.sgml:
2562         * docs/gst/tmpl/old/GstCaps.sgml:
2563         * docs/gst/tmpl/old/GstClock.sgml:
2564         * docs/gst/tmpl/old/GstCompat.sgml:
2565         * docs/gst/tmpl/old/GstData.sgml:
2566         * docs/gst/tmpl/old/GstElement.sgml:
2567         * docs/gst/tmpl/old/GstEvent.sgml:
2568         * docs/gst/tmpl/old/GstIndex.sgml:
2569         * docs/gst/tmpl/old/GstStructure.sgml:
2570         * docs/gst/tmpl/old/GstTag.sgml:
2571         * docs/gst/tmpl/old/cothreads.sgml:
2572         * docs/gst/tmpl/old/cothreads_compat.sgml:
2573         * docs/gst/tmpl/old/gettext.sgml:
2574         * docs/gst/tmpl/old/gobject2gtk.sgml:
2575         * docs/gst/tmpl/old/grammar.tab.sgml:
2576         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2577         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2578         * docs/gst/tmpl/old/gst_private.sgml:
2579         * docs/gst/tmpl/old/gstaggregator.sgml:
2580         * docs/gst/tmpl/old/gstarch.sgml:
2581         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2582         * docs/gst/tmpl/old/gstbufferstore.sgml:
2583         * docs/gst/tmpl/old/gstdata_private.sgml:
2584         * docs/gst/tmpl/old/gstdisksink.sgml:
2585         * docs/gst/tmpl/old/gstdisksrc.sgml:
2586         * docs/gst/tmpl/old/gstelementfactory.sgml:
2587         * docs/gst/tmpl/old/gstextratypes.sgml:
2588         * docs/gst/tmpl/old/gstfakesink.sgml:
2589         * docs/gst/tmpl/old/gstfakesrc.sgml:
2590         * docs/gst/tmpl/old/gstfdsink.sgml:
2591         * docs/gst/tmpl/old/gstfdsrc.sgml:
2592         * docs/gst/tmpl/old/gstfilesink.sgml:
2593         * docs/gst/tmpl/old/gstfilesrc.sgml:
2594         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2595         * docs/gst/tmpl/old/gstidentity.sgml:
2596         * docs/gst/tmpl/old/gstindexfactory.sgml:
2597         * docs/gst/tmpl/old/gstmarshal.sgml:
2598         * docs/gst/tmpl/old/gstmd5sink.sgml:
2599         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2600         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2601         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2602         * docs/gst/tmpl/old/gstpipefilter.sgml:
2603         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2604         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
2605         * docs/gst/tmpl/old/gstshaper.sgml:
2606         * docs/gst/tmpl/old/gstspider.sgml:
2607         * docs/gst/tmpl/old/gstspideridentity.sgml:
2608         * docs/gst/tmpl/old/gststatistics.sgml:
2609         * docs/gst/tmpl/old/gsttee.sgml:
2610         * docs/gst/tmpl/old/gsttimecache.sgml:
2611         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
2612         * docs/gst/tmpl/old/gstxmlregistry.sgml:
2613         * docs/gst/tmpl/old/gthread-cothreads.sgml:
2614         * docs/gst/tmpl/old/types.sgml:
2615           I didn't intend to add these or check them in.
2616
2617 2005-05-19  David Schleef  <ds@schleef.org>
2618
2619         * configure.ac: Use -no-common everywhere.  In a sane world, it
2620           would be the default in libtool, because without it, you can't
2621           build DLLs on Windows.
2622         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
2623         * docs/gst/gstreamer-sections.txt:
2624         * docs/gst/tmpl/gstcpu.sgml:
2625         * docs/gst/tmpl/gstdata.sgml:
2626         * docs/gst/tmpl/gstthread.sgml:
2627
2628 2005-05-19  David Schleef  <ds@schleef.org>
2629
2630         * gst/gstminiobject.c: (gst_value_set_mini_object),
2631         (gst_value_take_mini_object), (gst_value_get_mini_object):
2632         * gst/gstminiobject.h: Add GValue set/get functions.
2633
2634 2005-05-19  Wim Taymans  <wim@fluendo.com>
2635
2636         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
2637         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
2638         (gst_subbuffer_init), (gst_buffer_is_span_fast):
2639         * gst/gstbuffer.h:
2640         * gst/gstbus.c: (gst_bus_post):
2641         * gst/gstelement.c: (gst_element_get_random_pad):
2642         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
2643         Make subbufer unref the parent in finalize.
2644         some more debugging info.
2645
2646
2647 2005-05-19  Wim Taymans  <wim@fluendo.com>
2648
2649         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2650         (gst_basesink_init), (gst_basesink_finalize),
2651         (gst_basesink_activate), (gst_basesink_change_state):
2652         Don't free preroll queue too early.
2653
2654 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2655
2656         * gst/Makefile.am:
2657         * gst/ROADMAP:
2658           Hi, I'm outdated. Please shoot me.
2659
2660 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2661
2662         * gst/gstpipeline.c: (gst_pipeline_send_event):
2663           Do not access variables after they have been deleted.
2664
2665 2005-05-19  Wim Taymans  <wim@fluendo.com>
2666
2667         * tools/gst-inspect.c: (print_plugin_features):
2668         A plugin feature does unfortunatly not use the
2669         object name yet...
2670
2671 2005-05-18  Wim Taymans  <wim@fluendo.com>
2672
2673         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
2674         Port _span() functions to new subbuffers.
2675
2676 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2677
2678         * gst/gstbin.c: (gst_bin_add_func):
2679           Fix clock settery in bins when adding kids after the clock has
2680           been selected.
2681
2682 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2683
2684         * gst/elements/gstidentity.c: (gst_identity_class_init):
2685           Workaround until signals support GstMiniObject.
2686
2687 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
2688
2689         * gst/gstbuffer.c:
2690         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
2691
2692 2005-05-18  Wim Taymans  <wim@fluendo.com>
2693
2694         * gst/base/Makefile.am:
2695         * gst/base/gstadapter.c: (gst_adapter_base_init),
2696         (gst_adapter_class_init), (gst_adapter_init),
2697         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
2698         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
2699         (gst_adapter_flush), (gst_adapter_available),
2700         (gst_adapter_available_fast):
2701         * gst/base/gstadapter.h:
2702         Ported and added adapter to the base classes.
2703
2704 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2705
2706         * gst/gst.c:
2707         * gst/gstmessage.c:
2708           Make sure the class is reffed/unreffed once before threads can be
2709           used.  Fixes #304551.
2710
2711 2005-05-17  Wim Taymans  <wim@fluendo.com>
2712
2713         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
2714         (gst_basesink_chain_unlocked), (gst_basesink_activate):
2715         * gst/gstminiobject.c: (gst_mini_object_get_type),
2716         (gst_mini_object_free):
2717         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
2718         (gst_pad_push), (gst_pad_push_event):
2719         * gst/gstqueue.c: (gst_queue_change_state):
2720         Don't queue buffers in basesink when we are flushing.
2721         Unref buffer when flushing in basesink.
2722         Flush queue when going to READY
2723         Unref buffer when _push() returns an error.
2724         Don't free MiniObject instance when refcount is incremented
2725         in _finalize() so that we can recover objects.
2726
2727 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2728
2729         * docs/manual/advanced-schedulers.xml:
2730         * docs/manual/appendix-checklist.xml:
2731         * docs/pwg/advanced-clock.xml:
2732         * docs/pwg/advanced-interfaces.xml:
2733         * docs/pwg/advanced-request.xml:
2734         * docs/pwg/advanced-types.xml:
2735         * docs/pwg/intro-preface.xml:
2736         * examples/plugins/example.c: (gst_example_get_type),
2737         (gst_example_class_init), (gst_example_chain),
2738         (gst_example_set_property), (gst_example_get_property),
2739         (gst_example_change_state), (plugin_init):
2740         * examples/plugins/example.h:
2741           small doc fixes
2742
2743 2005-05-17  Wim Taymans  <wim@fluendo.com>
2744
2745         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
2746         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
2747         * gst/gstqueue.c: (gst_queue_change_state):
2748         Clear queue when going to READY.
2749         Remove IN_SETCAPS flag too.
2750
2751 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
2752
2753         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
2754           Remove implicit cast from gboolean to GstElementStateReturn;
2755           make sure we still return failure in paused => ready case if
2756           the parent class fails to change state and our own stop 
2757           vfunc succeeds.
2758
2759 2005-05-17  Wim Taymans  <wim@fluendo.com>
2760
2761         * tools/gst-launch.c: (event_loop):
2762         Message was unreffed too soon.
2763
2764 2005-05-16  Andy Wingo  <wingo@pobox.com>
2765
2766         * gst/gstbin.c (sink_iterator_filter): Err... um...
2767
2768         * check/gst/gstbin.c (test_ghost_pads): New test for the
2769         ghosting-if-elements-not-in-same-bin behavior.
2770
2771 2005-05-16  David Schleef  <ds@schleef.org>
2772
2773         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
2774         accessing refcount directly.
2775
2776 2005-05-15  David Schleef  <ds@schleef.org>
2777
2778         * check/Makefile.am: remove GstData checks
2779         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
2780         * gst/Makefile.am: add miniobject, remove data
2781         * gst/gst.h: add miniobject, remove data
2782         * gst/gstdata.c: remove
2783         * gst/gstdata.h: remove
2784         * gst/gstdata_private.h: remove
2785         * gst/gsttypes.h: remove GstEvent and GstMessage
2786         * gst/gstelement.c: (gst_element_post_message): fix for API changes
2787         * gst/gstmarshal.list: change BOXED -> OBJECT
2788
2789         Implement GstMiniObject.
2790         * gst/gstminiobject.c:
2791         * gst/gstminiobject.h:
2792
2793         Modify to be subclasses of GstMiniObject.
2794         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
2795         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
2796         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
2797         (gst_subbuffer_get_type), (gst_subbuffer_init),
2798         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
2799         (gst_buffer_span):
2800         * gst/gstbuffer.h:
2801         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
2802         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
2803         (_gst_event_copy), (gst_event_new):
2804         * gst/gstevent.h:
2805         * gst/gstmessage.c: (_gst_message_initialize),
2806         (gst_message_get_type), (gst_message_class_init),
2807         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
2808         (gst_message_new), (gst_message_new_error),
2809         (gst_message_new_warning), (gst_message_new_tag),
2810         (gst_message_new_state_changed), (gst_message_new_application):
2811         * gst/gstmessage.h:
2812         * gst/gstprobe.c: (gst_probe_perform),
2813         (gst_probe_dispatcher_dispatch):
2814         * gst/gstprobe.h:
2815         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
2816         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
2817         (_gst_query_copy), (gst_query_new):
2818
2819         Update elements for GstData -> GstMiniObject changes
2820         * gst/gstquery.h:
2821         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
2822         (gst_queue_chain), (gst_queue_loop):
2823         * gst/elements/gstbufferstore.c:
2824         (gst_buffer_store_add_buffer_func),
2825         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
2826         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2827         (gst_fakesink_render):
2828         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2829         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
2830         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
2831         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
2832         (gst_filesrc_create_read):
2833         * gst/elements/gstidentity.c: (gst_identity_class_init):
2834         * gst/elements/gsttypefindelement.c:
2835         (gst_type_find_element_src_event), (free_entry_buffers),
2836         (gst_type_find_element_handle_event):
2837         * libs/gst/dataprotocol/dataprotocol.c:
2838         (gst_dp_header_from_buffer):
2839         * libs/gst/dataprotocol/dataprotocol.h:
2840         * libs/gst/dataprotocol/dp-private.h:
2841
2842 2005-05-15  David Schleef  <ds@schleef.org>
2843
2844         * gst/elements/gstelements.c: Don't include headers that were
2845         just removed.
2846
2847 2005-05-15  David Schleef  <ds@schleef.org>
2848
2849         * gst/elements/Makefile.am: Remove some elements that don't
2850         need to be in the core (or even exist at all).
2851         * gst/elements/gstaggregator.c:
2852         * gst/elements/gstaggregator.h:
2853         * gst/elements/gstmd5sink.c:
2854         * gst/elements/gstmd5sink.h:
2855         * gst/elements/gstmultifilesrc.c:
2856         * gst/elements/gstmultifilesrc.h:
2857         * gst/elements/gstpipefilter.c:
2858         * gst/elements/gstpipefilter.h:
2859         * gst/elements/gstshaper.c:
2860         * gst/elements/gstshaper.h:
2861         * gst/elements/gststatistics.c:
2862         * gst/elements/gststatistics.h:
2863         * po/POTFILES.in: Remove above files.
2864
2865 2005-05-14  Andy Wingo  <wingo@pobox.com>
2866
2867         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
2868         so as to get the refs right.
2869         (sink_iterator_filter): New function, wraps bin_element_is_sink,
2870         unreffing objects that don't pass the filter.
2871
2872         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
2873         gst_element_set_bus.
2874         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
2875         normal cases, this will destroy the bus.
2876
2877         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
2878         object.
2879
2880         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
2881         has no sinks.
2882
2883 2005-05-13  Andy Wingo  <wingo@pobox.com>
2884
2885         * gst/gstutils.c (gst_element_link_pads): Instead of calling
2886         gst_pad_link, call pad_link_maybe_ghosting,
2887         (pad_link_maybe_ghosting): Links pads, making sure that the
2888         elements being linked are in the same bin.
2889         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
2890         Helpers for pad_link_maybe_ghosting.
2891
2892 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2893
2894         * configure.ac:
2895           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
2896
2897 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2898
2899         * docs/design/part-element-source.txt:
2900           Mention GstPushSrc
2901
2902 2005-05-12  Wim Taymans  <wim@fluendo.com>
2903
2904         * gst/base/gstbasesink.c: (gst_basesink_init),
2905         (gst_basesink_activate):
2906         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
2907         (gst_basesrc_is_seekable):
2908         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
2909         (bin_element_is_sink), (gst_bin_change_state):
2910         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2911         * gst/gstelement.h:
2912         Identify sinks by their flag to avoid overly complicated
2913         checks (fow now).
2914         Do state changes even for elements not reachable from the
2915         sinks.
2916         BaseSink is a sink now :)
2917         Some more debugging info in the basesrc.
2918
2919
2920 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2921
2922         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
2923           Implement _query on a bin, similar to _send_event.
2924
2925 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
2926
2927         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
2928           Discont event offset format should be GST_FORMAT_BYTES,
2929           not GST_FORMAT_TIME.
2930
2931 2005-05-12  Wim Taymans  <wim@fluendo.com>
2932
2933         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
2934         Same fix as Ronald's but without the signal. 
2935
2936 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2937
2938         * gst/gstutils.c: (gst_element_query_position):
2939           No, an element is not a pad.
2940
2941 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2942
2943         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
2944         (gst_bin_get_state):
2945           If a child is removed from a bin while we remove the child from
2946           the bin and while we're retrieving its state, signal this to the
2947           get_state function so we abort the wait (instead of waiting for
2948           a timeout) and can immediately re-iterate over all other elements.
2949
2950 2005-05-12  Wim Taymans  <wim@fluendo.com>
2951
2952         * gst/base/Makefile.am:
2953         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
2954         (gst_basesrc_start):
2955         * gst/base/gstbasesrc.h:
2956         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
2957         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
2958         (gst_pushsrc_init), (gst_pushsrc_create):
2959         * gst/base/gstpushsrc.h:
2960         Added is_seekable to BaseSrc
2961         Added simple PushSrc.
2962
2963 2005-05-11  Wim Taymans  <wim@fluendo.com>
2964
2965         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2966         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2967         (gst_element_link_pads), (gst_element_query_position),
2968         (gst_element_query_convert), (intersect_caps_func),
2969         (gst_pad_query_position), (gst_pad_query_convert):
2970         Fix refcounting in utils function.
2971         No point in trying to activate a pad when it's added, it could
2972         be added from the state change function and then we deadlock, the
2973         element has to decide what to do.
2974
2975 2005-05-10  Andy Wingo  <wingo@pobox.com>
2976
2977         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
2978         *all* the arguments.
2979
2980         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
2981         stream lock if it's a FLUSH_DONE; normal flushes don't get the
2982         lock (according to the docs -- if this is wrong change the docs).
2983
2984         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
2985         flush messages in the NULL state.
2986
2987         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
2988         message immediately and return.
2989         (gst_bus_set_flushing): New function. If a bus is flushing, it
2990         flushes out any queued messages and immediately unrefs new
2991         messages. This is so when an element goes to NULL, all of the
2992         unhandled messages coming from it can be freed, and their
2993         references to the element dropped. In other words: message source
2994         ref considered harmful :P
2995
2996         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
2997         we're finished with it.
2998
2999         * gst/gstmessage.c (gst_message_new_state_changed): 
3000
3001 2005-05-10  Wim Taymans  <wim@fluendo.com>
3002
3003         * gst/gstvalue.c: (gst_value_compare_flags),
3004         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3005         (_gst_value_initialize):
3006         Added flags serialize/deserialize/compare code.
3007
3008 2005-05-09  Andy Wingo  <wingo@pobox.com>
3009
3010         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3011         Intersect the peer's caps with our caps.
3012
3013 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3014
3015         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3016         * gst/elements/gsttypefindelement.c: (find_peek):
3017           Handle negative offsets better. Fixes decodebin.
3018
3019 2005-05-09  Wim Taymans  <wim@fluendo.com>
3020
3021         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3022         (gst_base_transform_event):
3023         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3024         Implement accept_caps.
3025         Fix silly lock/unlock mismatch in base class.
3026
3027 2005-05-09  Wim Taymans  <wim@fluendo.com>
3028
3029         * docs/design/draft-push-pull.txt:
3030         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3031         * gst/elements/gstfilesink.c: (gst_filesink_init),
3032         (gst_filesink_query):
3033         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3034         (gst_type_find_handle_src_query), (find_element_get_length):
3035         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3036         * gst/gstelement.h:
3037         * gst/gstmessage.c:
3038         * gst/gstmessage.h:
3039         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3040         (gst_real_pad_get_caps_unlocked),
3041         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3042         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3043         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3044         (gst_real_pad_dispose), (gst_real_pad_finalize),
3045         (gst_pad_load_and_link), (gst_pad_save_thyself),
3046         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3047         (gst_pad_check_pull_range), (gst_pad_pull_range),
3048         (gst_pad_template_get_type), (gst_pad_template_class_init),
3049         (gst_pad_template_init), (gst_pad_template_dispose),
3050         (name_is_valid), (gst_static_pad_template_get),
3051         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3052         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3053         (gst_pad_get_element_private), (gst_pad_start_task),
3054         (gst_pad_pause_task), (gst_pad_stop_task),
3055         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3056         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3057         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3058         (gst_ghost_pad_new):
3059         * gst/gstpad.h:
3060         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3061         (gst_query_new_position), (gst_query_set_position),
3062         (gst_query_parse_position), (gst_query_new_convert),
3063         (gst_query_set_convert), (gst_query_parse_convert):
3064         * gst/gstquery.h:
3065         * gst/gstqueryutils.c:
3066         * gst/gstqueryutils.h:
3067         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3068         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3069         (gst_queue_handle_src_query):
3070         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3071         (gst_element_query_position), (gst_element_query_convert),
3072         (intersect_caps_func), (gst_pad_query_position),
3073         (gst_pad_query_convert):
3074         * gst/gstutils.h:
3075         * tools/gst-inspect.c: (print_pad_info):
3076         * tools/gst-xmlinspect.c: (print_element_info):
3077         Remove old query functions. Ported old code.
3078         Added position/convert helper functions to gstutils.
3079         Reordered gstpad.c code, grouping relevant things.
3080         Remove gst_message_new(), always need to speficy a specific
3081         message.
3082
3083
3084 2005-05-09  Andy Wingo  <wingo@pobox.com>
3085
3086         * gst/gstiterator.h: Add some includes.
3087
3088         * gst/gstqueryutils.h: Include more headers.
3089
3090         * gst/gstpad.h:
3091         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3092         some uses of gst_pad_query.
3093
3094         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3095         NULL out parameters.
3096         (gst_query_new_position): New proc, allocates a new position
3097         query.
3098
3099         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3100         gstqueryutils.c to the build.
3101
3102         * gst/gststructure.c (gst_structure_set_valist): Implement with
3103         the generic G_VALUE_COLLECT.
3104         
3105 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3106
3107         * gst/Makefile.am: (gst_headers):
3108         Added gstqueryutils.h to the list of headers to install, that was
3109         a 'nachty' move wingo :)
3110
3111 2005-05-06  Andy Wingo  <wingo@pobox.com>
3112
3113         * gst/gstquery.h
3114         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3115         GstData, init a memchunk.
3116         (standard_definitions): Add a few query types, deprecate a few.
3117         (gst_query_get_type): New proc.
3118         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3119         implementation.
3120         (gst_query_new_application, gst_query_get_structure): New public
3121         procs.
3122
3123         * docs/design/draft-query.txt: Removed LINKS from the query types,
3124         because all the rest can be dispatched to other pads -- seemed
3125         ugly to have a query that couldn't be dispatched. internal_links
3126         is fine as a pad method.
3127
3128         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3129         in gstpad.c, but maintain binary compatibility for the moment.
3130         Will fix before 0.9 is out.
3131
3132         * gst/gstqueryutils.c: 
3133         * gst/gstqueryutils.h: New files, implement 3 methods for each
3134         query type: parse_query, parse_response, and set. Probably need an
3135         allocator as well.
3136
3137         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3138
3139         * gst/elements/gstfilesink.c (gst_filesink_query2):
3140         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3141         query_types, and formats methods.
3142
3143         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3144         (gst_pad_set_query2_function): New functions.
3145         (gst_real_pad_init): Set query2_default as the default query2
3146         function. Basically just dispatches to internally linked pads.
3147
3148         Needs review!
3149         
3150         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3151         without using the atomic operations. Only one thread can possibly
3152         be accessing the data at this point. Changed so as to avoid
3153         gst_atomic operations.
3154
3155 2005-05-06  Wim Taymans  <wim@fluendo.com>
3156
3157         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3158         Also set caps if we use the fallback buffer alloc.
3159
3160 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3161
3162         * docs/gst/Makefile.am:
3163         * docs/gst/gstreamer-docs.sgml:
3164         * docs/gst/gstreamer-sections.txt:
3165         * docs/gst/tmpl/gstatomic.sgml:
3166         * docs/gst/tmpl/gstmemchunk.sgml:
3167         * testsuite/elements/struct_i386.h:
3168         * win32/GStreamer.vcproj:
3169         * win32/Makefile:
3170           Purge GstAtomic stuff from docs and win32 makefiles as well
3171
3172 2005-05-06  Wim Taymans  <wim@fluendo.com>
3173
3174         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3175         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3176         * gst/gstpad.c: (gst_pad_peer_get_caps):
3177         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3178         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3179         (gst_queue_src_activate), (gst_queue_change_state):
3180         * gst/gstqueue.h:
3181         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3182         (intersect_caps_func):
3183         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3184         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3185         Some fixes for the peer_get_caps() change.
3186
3187 2005-05-06  Wim Taymans  <wim@fluendo.com>
3188
3189         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3190         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3191         (gst_basesink_activate):
3192         Actually do something with error codes returned from the push
3193         functions.
3194
3195 2005-05-06  Wim Taymans  <wim@fluendo.com>
3196
3197         * docs/design/part-element-sink.txt:
3198         * docs/design/part-element-source.txt:
3199         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3200         (gst_basesink_event), (gst_basesink_activate):
3201         * gst/base/gstbasesink.h:
3202         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3203         (gst_basesrc_activate):
3204         * gst/base/gstbasesrc.h:
3205         * gst/gstelement.c: (gst_element_pads_activate):
3206         Some more documentation.
3207         Fixed scheduling decision in _pads_activate().
3208
3209 2005-05-05  Andy Wingo  <wingo@pobox.com>
3210
3211         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3212         the test suite.
3213
3214 2005-05-05  Wim Taymans  <wim@fluendo.com>
3215
3216         * gst/base/Makefile.am:
3217         * gst/base/gstbasesink.h:
3218         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3219         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3220         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3221         (gst_collectpads_class_init), (gst_collectpads_init),
3222         (gst_collectpads_finalize), (gst_collectpads_new),
3223         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3224         (find_pad), (gst_collectpads_remove_pad),
3225         (gst_collectpads_is_active), (gst_collectpads_collect),
3226         (gst_collectpads_collect_range), (gst_collectpads_start),
3227         (gst_collectpads_stop), (gst_collectpads_peek),
3228         (gst_collectpads_pop), (gst_collectpads_available),
3229         (gst_collectpads_read), (gst_collectpads_flush),
3230         (gst_collectpads_chain):
3231         * gst/base/gstcollectpads.h:
3232         * gst/elements/Makefile.am:
3233         * gst/elements/gstelements.c:
3234         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3235         (gst_fakesink_get_times), (gst_fakesink_event),
3236         (gst_fakesink_preroll), (gst_fakesink_render):
3237         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3238         (gst_filesink_init), (gst_filesink_set_location),
3239         (gst_filesink_open_file), (gst_filesink_close_file),
3240         (gst_filesink_pad_query), (gst_filesink_event),
3241         (gst_filesink_render), (gst_filesink_change_state):
3242         * gst/elements/gstfilesink.h:
3243         Added object to help in making collect pad based elements.
3244         Ported filesink.
3245         Make event function in sink baseclass return gboolean.
3246
3247 2005-05-05  Wim Taymans  <wim@fluendo.com>
3248
3249         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3250         (gst_bin_get_by_name):
3251         * gst/gstbuffer.h:
3252         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3253         (gst_clock_finalize):
3254         * gst/gstdata.c: (gst_data_replace):
3255         * gst/gstdata.h:
3256         * gst/gstelement.c: (gst_element_request_pad),
3257         (gst_element_pads_activate):
3258         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3259         (gst_object_unref):
3260         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3261         (gst_pad_set_checkgetrange_function),
3262         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3263         (gst_pad_check_pull_range), (gst_pad_pull_range),
3264         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3265         (gst_pad_pause_task), (gst_pad_stop_task):
3266         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3267         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3268         Fix name lookup in GstBin.
3269         Added _data_replace() function and _buffer_replace()
3270         Use finalize method to clean up clock.
3271         Fix refcounting on request pads.
3272         Fix pad schedule mode error.
3273         Some more object refcounting debug info,
3274
3275
3276 2005-05-04  Andy Wingo <wingo@pobox.com>
3277
3278         * check/Makefile.am:
3279         * docs/gst/tmpl/gstatomic.sgml:
3280         * docs/gst/tmpl/gstplugin.sgml:
3281         * gst/base/gstbasesink.c: (gst_basesink_activate):
3282         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3283         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3284         (gst_basesrc_query), (gst_basesrc_set_property),
3285         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3286         (gst_basesrc_activate):
3287         * gst/base/gstbasesrc.h:
3288         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3289         (gst_base_transform_src_activate):
3290         * gst/elements/gstelements.c:
3291         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3292         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3293         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3294         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3295         (gst_type_find_element_checkgetrange),
3296         (gst_type_find_element_activate):
3297         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3298         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3299         (gst_caps_load_thyself):
3300         * gst/gstelement.c: (gst_element_pads_activate),
3301         (gst_element_save_thyself), (gst_element_restore_thyself):
3302         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3303         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3304         * gst/gstpad.h:
3305         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3306         (gst_xml_parse_file), (gst_xml_parse_memory),
3307         (gst_xml_get_element), (gst_xml_make_element):
3308         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3309         (_file_index_id_save_xml), (gst_file_index_commit):
3310         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3311         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3312         (load_paths):
3313         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3314         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3315         * tools/gst-complete.c: (main):
3316         * tools/gst-compprep.c: (main):
3317         * tools/gst-inspect.c: (print_element_properties_info):
3318         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3319         * tools/gst-xmlinspect.c: (print_element_properties):
3320         GCC 4 fixen.
3321         
3322 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3323
3324         * gst/gstplugin.c: (gst_plugin_check_module),
3325         (gst_plugin_check_file), (gst_plugin_load_file):
3326             apply patch from #172526 to make register work on MacOSX
3327
3328 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3329
3330         * docs/gst/tmpl/gstconfig.sgml:
3331         * gst/gstconfig.h.in:
3332           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3333         * testsuite/debug/printf_extension.c: (main):
3334           Do not use GST_PTR_FORMAT on pointers to types with
3335           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3336         * testsuite/elements/property.h:
3337           use correct printf format
3338
3339 2005-05-02  Wim Taymans  <wim@fluendo.com>
3340
3341         * docs/design/draft-push-pull.txt:
3342         * docs/design/draft-query.txt:
3343         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3344         (gst_basesrc_start):
3345         Added draft for new query API.
3346         Added draft for better selecting scheduling methods.
3347         Make basesrc ignore length if the subclass does not support
3348         it.
3349
3350 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3351
3352         * gst/Makefile.am:
3353           possible fixes for automake-1.5 - _LIBADD is reserved
3354
3355 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3356
3357         * docs/faq/Makefile.am:
3358         * docs/manual/Makefile.am:
3359         * docs/manuals.mak:
3360         * docs/pwg/Makefile.am:
3361         * gst/Makefile.am:
3362           possible fixes for automake-1.5
3363
3364 2005-04-28  Wim Taymans  <wim@fluendo.com>
3365
3366         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3367         (gst_basesink_pad_getcaps), (gst_basesink_init),
3368         (gst_basesink_do_sync):
3369         * gst/gstclock.c: (gst_clock_entry_new):
3370         * gst/gstevent.c: (gst_event_discont_get_value):
3371         * gst/gstpipeline.c: (pipeline_bus_handler),
3372         (gst_pipeline_change_state):
3373         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3374         Better debugging of clocking info.
3375         Allow NULL values when getting discont values.
3376
3377 2005-04-27  Wim Taymans  <wim@fluendo.com>
3378
3379         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3380         * check/gst/gstpad.c: (gst_pad_suite):
3381         Increase timeout for checks.
3382
3383 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3384
3385         * check/Makefile.am:
3386           fix the broken rule for cleanup.  Apparently this rule is
3387           only needed on FC2, so maybe this warrants further autotool
3388           inspection.
3389
3390 2005-04-26  Wim Taymans  <wim@fluendo.com>
3391
3392         * gst/gsttrashstack.h:
3393         Ooohh. a nasty one! After having a failed pop() from the stack,
3394         it's possible that the stack is empty. In that case, don't
3395         follow the NULL pointer.
3396
3397 2005-04-25  Wim Taymans  <wim@fluendo.com>
3398
3399         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3400         (gst_pad_set_checkgetrange_function),
3401         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3402         (gst_pad_check_pull_range), (gst_pad_pull_range),
3403         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3404         (gst_pad_pause_task), (gst_pad_stop_task):
3405         * gst/gstplugin.c: (gst_plugin_load):
3406         * gst/gstplugin.h:
3407         Remove gst_library_load as it does more harm than good with
3408         the new g_module flags.
3409         Revert bogus caps template check in pad linking, pad caps
3410         are important when linking not the template, which is more
3411         general than the current caps.
3412
3413 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3414
3415         * gst/autoplug/.cvsignore:
3416         * gst/autoplug/Makefile.am:
3417         * gst/autoplug/gstsearchfuncs.c:
3418         * gst/autoplug/gstsearchfuncs.h:
3419         * gst/autoplug/gstspider.c:
3420         * gst/autoplug/gstspider.h:
3421         * gst/autoplug/gstspideridentity.c:
3422         * gst/autoplug/gstspideridentity.h:
3423         * gst/autoplug/spidertest.c:
3424           Die, spider, die.
3425
3426 2005-04-25  Wim Taymans  <wim@fluendo.com>
3427
3428         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3429         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3430         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3431         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3432         * gst/gstpad.h:
3433         Added stubs for unimplemented functions. 
3434
3435 2005-04-24  David Schleef  <ds@schleef.org>
3436
3437         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3438         please fix.
3439
3440 2005-04-24  David Schleef  <ds@schleef.org>
3441
3442         Convert everything from GstAtomicInt to g_atomic_int_*, and
3443         remove gstatomic.
3444         * gst/Makefile.am:
3445         * gst/gstatomic.c:
3446         * gst/gstatomic.h:
3447         * gst/gstatomic_impl.h:
3448         * gst/gstbuffer.c:
3449         * gst/gstcaps.c:
3450         * gst/gstcaps.h:
3451         * gst/gstclock.c:
3452         * gst/gstclock.h:
3453         * gst/gstdata.c:
3454         * gst/gstdata.h:
3455         * gst/gstdata_private.h:
3456         * gst/gstevent.c:
3457         * gst/gstinfo.c:
3458         * gst/gstinfo.h:
3459         * gst/gstmessage.c:
3460         * gst/gstobject.c:
3461         * gst/gstobject.h:
3462         * gst/gststructure.c:
3463         * gst/gststructure.h:
3464         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3465         * gst/gstutils.h:
3466
3467 2005-04-24  David Schleef  <ds@schleef.org>
3468
3469         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3470         make the regressions tests work.  Remove some code that is no
3471         longer true.
3472         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3473         Disable warning for pads without templates.
3474
3475 2005-04-24  David Schleef  <ds@schleef.org>
3476
3477         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3478         functions that handle filtered links.
3479         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3480         removed functions.
3481         * gst/gstutils.c: Fix/remove utility functions that handle
3482         filtered caps.
3483         * gst/gstutils.h:
3484         * gst/gstvalue.c: Add serialization/deserialization of caps
3485         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3486         requires fixing so that the filter caps notation creates
3487         a capsfilter element and sets the filter_caps property.  I
3488         think everyone probably wants to keep the shorthand notation.
3489         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3490         * docs/gst/tmpl/gstpad.sgml:
3491
3492         * gst/elements/gstelements.c: Register capsfilter element.
3493         * gst/Makefile.am: fix spacing
3494         * docs/random/ds/0.9-suggested-changes: random
3495
3496 2005-04-23  David Schleef  <ds@schleef.org>
3497
3498         * gst/elements/Makefile.am:
3499         * gst/elements/gstcapsfilter.c: New element that acts like an
3500         identity, but filters caps.  Will eventually replace filtered
3501         caps in pad linking.
3502         * gst/gstutils.c: (gst_element_create_all_pads): New function
3503         to create all the ALWAYS pads that are registered with an
3504         element class.  This functionality should eventually be
3505         merged in with GstElement initialization.
3506         * gst/gstutils.h:
3507         * testsuite/trigger/README: part of trigger test code that should
3508         have been checked in a long time ago.
3509
3510 2005-04-23  David Schleef  <ds@schleef.org>
3511
3512         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3513         needed with new versions of libtool (nobody will confirm this),
3514         and hard to carry around.
3515         * gst/autoplug/Makefile.am:
3516         * gst/base/Makefile.am:
3517         * gst/elements/Makefile.am:
3518         * gst/indexers/Makefile.am:
3519         * gst/schedulers/Makefile.am:
3520         * libs/gst/bytestream/Makefile.am:
3521         * libs/gst/control/Makefile.am:
3522         * libs/gst/dataprotocol/Makefile.am:
3523         * libs/gst/getbits/Makefile.am:
3524
3525 2005-04-21  Wim Taymans  <wim@fluendo.com>
3526
3527         * docs/design/draft-push-pull.txt:
3528         * docs/design/part-MT-refcounting.txt:
3529         * docs/design/part-TODO.txt:
3530         * docs/design/part-caps.txt:
3531         * docs/design/part-events.txt:
3532         * docs/design/part-gstbus.txt:
3533         * docs/design/part-gstpipeline.txt:
3534         * docs/design/part-messages.txt:
3535         * docs/design/part-push-pull.txt:
3536         * docs/design/part-query.txt:
3537         Some more docs.
3538
3539 2005-04-21  Wim Taymans  <wim@fluendo.com>
3540
3541         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3542         (gst_message_new), (gst_message_new_error),
3543         (gst_message_new_warning), (gst_message_new_tag),
3544         (gst_message_new_state_changed), (gst_message_new_application),
3545         (gst_message_get_structure):
3546         * gst/gstmessage.h:
3547         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3548         (gst_structure_copy_conditional):
3549         Use parent refcount in GstMessage to ensure GstStructure
3550         consistency.
3551         Cleaned up headers a bit.
3552         
3553
3554 2005-04-20  Wim Taymans  <wim@fluendo.com>
3555
3556         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3557         (gst_basesink_pad_getcaps), (gst_basesink_init),
3558         (gst_basesink_chain_unlocked):
3559         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3560         (gst_type_find_helper):
3561         * gst/elements/gsttypefindelement.c:
3562         (gst_type_find_element_have_type), (gst_type_find_element_init),
3563         (stop_typefinding), (gst_type_find_element_handle_event),
3564         (find_suggest), (gst_type_find_element_chain),
3565         (gst_type_find_element_checkgetrange),
3566         (gst_type_find_element_getrange), (do_typefind),
3567         (gst_type_find_element_activate):
3568         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3569         (gst_buffer_default_free), (gst_buffer_default_copy),
3570         (gst_buffer_set_caps):
3571         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3572         (gst_caps_replace):
3573         * gst/gstmessage.c: (gst_message_new),
3574         (gst_message_new_state_changed):
3575         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3576         (gst_pad_set_checkgetrange_function),
3577         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3578         (gst_pad_set_caps), (gst_pad_check_pull_range),
3579         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3580         * gst/gstpad.h:
3581         * gst/gsttypefind.c: (gst_type_find_register):
3582         Make gst_caps_replace() work like other _replace() functions.
3583         Use _caps_replace() where possible.
3584         Make sure _message_new() initialises its field.
3585         Add gst_static_pad_template_get_caps()
3586
3587
3588 2005-04-18  Andy Wingo  <wingo@pobox.com>
3589
3590         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3591         on the peer, not the pad. I think that was a typo. Pass an extra
3592         arg to see if random access is possible. Activate the pads as
3593         PULL_RANGE if possible.
3594
3595         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3596
3597         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3598         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3599         to PROP_....
3600
3601 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3602
3603         * docs/faq/using.xml:
3604           Add note on gstreamer-properties (#154996).
3605
3606 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3607
3608         * docs/random/bbb/optional-properties:
3609           Some analysis on optional properties.
3610
3611 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3612
3613         * docs/gst/tmpl/gstelementfactory.sgml:
3614         * gst/gstelement.h:
3615         * gst/gstelementfactory.c: (gst_element_factory_init),
3616         (gst_element_factory_cleanup), (gst_element_register),
3617         (__gst_element_factory_add_static_pad_template),
3618         (gst_element_factory_get_static_pad_templates),
3619         (gst_element_factory_can_src_caps),
3620         (gst_element_factory_can_sink_caps):
3621         * gst/registries/Makefile.am:
3622         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
3623         (gst_xml_registry_class_init), (gst_xml_registry_init),
3624         (gst_xml_registry_new), (gst_xml_registry_set_property),
3625         (gst_xml_registry_get_property), (get_time), (make_dir),
3626         (gst_xml_registry_get_perms_func),
3627         (plugin_times_older_than_recurse), (plugin_times_older_than),
3628         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
3629         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
3630         (add_to_char_array), (read_string), (read_uint), (read_enum),
3631         (load_pad_template), (load_feature), (load_plugin), (load_paths),
3632         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
3633         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
3634         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
3635         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
3636         (gst_xml_registry_rebuild):
3637         * gst/registries/gstlibxmlregistry.h:
3638         * tools/gst-compprep.c: (main):
3639         * tools/gst-inspect.c: (print_pad_templates_info):
3640         * tools/gst-xmlinspect.c: (print_element_info):
3641           Use libxml2 for registry parsing, use staticpadtemplates in
3642           elementfactories. Makes gst_init() +/- 10x faster.
3643
3644 2005-04-12  Wim Taymans  <wim@fluendo.com>
3645
3646         * gst/base/Makefile.am:
3647         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3648         (gst_basesink_pad_getcaps), (gst_basesink_init),
3649         (gst_basesink_event), (gst_basesink_change_state):
3650         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3651         (gst_basesrc_init), (gst_basesrc_query),
3652         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3653         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3654         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3655         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3656         (gst_basesrc_stop), (gst_basesrc_activate),
3657         (gst_basesrc_change_state):
3658         * gst/base/gsttypefindhelper.c: (helper_find_peek),
3659         (helper_find_suggest), (gst_type_find_helper):
3660         * gst/base/gsttypefindhelper.h:
3661         * gst/elements/Makefile.am:
3662         * gst/elements/gstelements.c:
3663         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3664         (gst_fakesink_get_times), (gst_fakesink_event),
3665         (gst_fakesink_preroll), (gst_fakesink_render):
3666         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3667         (gst_fakesrc_init), (gst_fakesrc_event_handler),
3668         (gst_fakesrc_get_property), (gst_fakesrc_create),
3669         (gst_fakesrc_start), (gst_fakesrc_stop):
3670         * gst/elements/gstfakesrc.h:
3671         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
3672         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3673         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3674         (gst_filesrc_create_read), (gst_filesrc_create),
3675         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
3676         (gst_filesrc_start):
3677         * gst/elements/gsttypefindelement.c:
3678         (gst_type_find_element_have_type), (gst_type_find_element_init),
3679         (start_typefinding), (stop_typefinding), (push_buffer_store),
3680         (gst_type_find_element_handle_event),
3681         (gst_type_find_element_chain),
3682         (gst_type_find_element_checkgetrange),
3683         (gst_type_find_element_getrange), (do_typefind),
3684         (gst_type_find_element_activate),
3685         (gst_type_find_element_change_state):
3686         * gst/elements/gsttypefindelement.h:
3687         * gst/gstpipeline.c: (pipeline_bus_handler):
3688         Added typefind helper.
3689         Small preroll fix in the base sink.
3690         Disable typefind code in basesrc.
3691         Crude port of typefindelement.
3692         Fakesrc cleanups.
3693
3694
3695 2005-04-11  Wim Taymans  <wim@fluendo.com>
3696
3697         * check/gst/gstbus.c: (gstbus_suite):
3698         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
3699         * check/gstcheck.h:
3700           Fix up the timeout so that the test does not fail.
3701
3702 2005-04-06  Wim Taymans  <wim@fluendo.com>
3703
3704         * gst/base/README:
3705         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3706         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
3707         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3708         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3709         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3710         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3711         (gst_basesrc_stop), (gst_basesrc_activate),
3712         (gst_basesrc_change_state), (basesrc_find_peek),
3713         (basesrc_find_suggest), (gst_basesrc_type_find):
3714         * gst/base/gstbasesrc.h:
3715         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
3716         (gst_filesrc_class_init), (gst_filesrc_init),
3717         (gst_filesrc_finalize), (gst_filesrc_set_location),
3718         (gst_filesrc_set_property), (gst_filesrc_get_property),
3719         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3720         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3721         (gst_filesrc_create_read), (gst_filesrc_create),
3722         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
3723         * gst/elements/gstfilesrc.h:
3724         * gst/gstelement.c: (gst_element_get_state_func),
3725         (gst_element_lost_state), (gst_element_pads_activate):
3726         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3727         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3728         (gst_pad_pull_range):
3729         * gst/gstpad.h:
3730         More work on the generic source base class, implement seeking,
3731         query.
3732         Make filesrc extend the base source class.
3733         Added gst_pad_set_checkgetrange_function to GstPad.
3734
3735 2005-04-06  Andy Wingo  <wingo@pobox.com>
3736
3737         * pkgconfig/gstreamer-base.pc.in:
3738         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
3739
3740         * pkgconfig/Makefile.am:
3741         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
3742
3743 2005-04-04  Wim Taymans  <wim@fluendo.com>
3744
3745         * gst/base/Makefile.am:
3746         * gst/base/README:
3747         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3748         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3749         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3750         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
3751         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3752         (gst_basesrc_base_init), (gst_basesrc_class_init),
3753         (gst_basesrc_init), (gst_basesrc_get_formats),
3754         (gst_basesrc_get_query_types), (gst_basesrc_query),
3755         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
3756         (gst_basesrc_set_property), (gst_basesrc_get_property),
3757         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
3758         (gst_basesrc_loop), (gst_basesrc_activate),
3759         (gst_basesrc_change_state):
3760         * gst/base/gstbasesrc.h:
3761         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
3762         (gst_fakesrc_class_init), (gst_fakesrc_init),
3763         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
3764         (gst_fakesrc_get_property), (gst_fakesrc_create):
3765         * gst/elements/gstfakesrc.h:
3766         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
3767         (gst_filesrc_open_file), (gst_filesrc_loop),
3768         (gst_filesrc_activate), (filesrc_find_peek),
3769         (gst_filesrc_type_find):
3770         Made base source class, make fakesrc extend it.
3771         Add comments to basesink class.
3772         Some filesrc cleanup.
3773
3774 2005-03-31  David Schleef  <ds@schleef.org>
3775
3776         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
3777         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
3778         expected to link against libgstreamer.
3779         * gst/base/Makefile.am: link against libgstreamer
3780         * gst/elements/Makefile.am: same
3781
3782 2005-03-31  Andy Wingo  <wingo@pobox.com>
3783
3784         * tests/instantiate/Makefile.am:
3785         * tests/instantiate/caps.c: Add test to test speed of caps copy
3786         and free.
3787
3788         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
3789         GMemChunk to be fair.
3790
3791         * gst/gsttrashstack.h: Remove warning about using the fallback
3792         trash stack implementation, it's still faster than malloc.
3793
3794 2005-03-30  Andy Wingo  <wingo@pobox.com>
3795
3796         * tests/complexity.c: Add a copyright.
3797
3798 2005-03-31  Wim Taymans  <wim@fluendo.com>
3799
3800         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
3801         (gst_base_transform_class_init), (gst_base_transform_init),
3802         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
3803         (gst_base_transform_get_property),
3804         (gst_base_transform_sink_activate),
3805         (gst_base_transform_src_activate),
3806         (gst_base_transform_change_state):
3807         * gst/base/gstbasetransform.h:
3808         * gst/elements/gstidentity.c: (gst_identity_class_init),
3809         (gst_identity_event), (gst_identity_check_perfect),
3810         (gst_identity_transform), (gst_identity_start),
3811         (gst_identity_stop):
3812         Added start/stop methods to transform base class so subclasses 
3813         don't need to deal with state changes even.
3814
3815 2005-03-31  Wim Taymans  <wim@fluendo.com>
3816
3817         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
3818         (gst_event_new_discontinuous), (gst_event_discont_get_value):
3819         * gst/gstevent.h:
3820         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3821         (gst_pad_pull_range):
3822         Added rate to the discont event to prepare for variable speed
3823         and reverse playback.
3824
3825 2005-03-29  David Schleef  <ds@schleef.org>
3826
3827         * configure.ac:
3828         * testsuite/trigger/Makefile.am:
3829         * testsuite/trigger/trigger.c: A little example program to show
3830         how trigger-based elements can work.
3831
3832 2005-03-29  Wim Taymans  <wim@fluendo.com>
3833
3834         * gst/base/Makefile.am:
3835         * gst/base/README:
3836         * gst/base/gstbasesink.c: (gst_basesink_get_type),
3837         (gst_basesink_base_init), (gst_basesink_class_init),
3838         (gst_basesink_pad_getcaps), (gst_basesink_init),
3839         (gst_basesink_activate), (gst_basesink_change_state):
3840         * gst/base/gstbasesink.h:
3841         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
3842         (gst_base_transform_base_init), (gst_base_transform_finalize),
3843         (gst_base_transform_class_init), (gst_base_transform_init),
3844         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
3845         (gst_base_transform_event), (gst_base_transform_getrange),
3846         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
3847         (gst_base_transform_set_property),
3848         (gst_base_transform_get_property),
3849         (gst_base_transform_sink_activate),
3850         (gst_base_transform_src_activate),
3851         (gst_base_transform_change_state):
3852         * gst/base/gstbasetransform.h:
3853         * gst/elements/gstidentity.c: (gst_identity_finalize),
3854         (gst_identity_class_init), (gst_identity_init),
3855         (gst_identity_event), (gst_identity_check_perfect),
3856         (gst_identity_transform), (gst_identity_set_property),
3857         (gst_identity_get_property), (gst_identity_change_state):
3858         * gst/elements/gstidentity.h:
3859         * gst/gstelement.c: (gst_element_get_state_func),
3860         (gst_element_lost_state), (gst_element_pads_activate):
3861         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3862         (gst_pad_check_pull_range), (gst_pad_pull_range):
3863         * gst/gstpad.h:
3864         Simplify pad activation.
3865         Added function to check if pull_range can be performed.
3866         Error out when pulling inactive or flushing pads.
3867         Removed const from refcounted types as it does not make sense.
3868         Simplify pad templates in basesink
3869         Added base class for simple 1-to-1 transforms.
3870         Make identity subclass the base transform.
3871
3872 2005-03-29  Andy Wingo  <wingo@pobox.com>
3873
3874         * docs/libs/gstreamer-libs-overrides.txt: 
3875         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
3876         really don't understand what's going on, but like whatever. I want
3877         green buildbot!
3878
3879         * docs/gst/Makefile.am:
3880         * docs/libs/Makefile.am: Dist the overrides files.
3881
3882         * check/Makefile.am (clean-local): Remove .libs directories.
3883
3884         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
3885         elements to EXTRA_DIST, so po/ files are happy.
3886
3887         * po/POTFILES.in: Er, remove it here.
3888
3889         * po/POTFILES: Remove gstspider.c.
3890
3891         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
3892
3893         * docs/libs/gstreamer-libs-docs.sgml: 
3894         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
3895         bytestream.
3896
3897         * tests/complexity.c (main): Set the length of the preroll queue
3898         on the sinks to prevent a lockup.
3899
3900         * libs/gst/dataprotocol/Makefile.am: 
3901         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
3902         the same as the one in check/gst-libs/gdp.c.
3903
3904         * po/, docs/gst/: Commit automatic changes to docs and po files.
3905
3906         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
3907         the versioned libgstbase.
3908
3909         * check/Makefile.am: Depend on an unversioned gst-register, seems
3910         to make autoconf happier.
3911
3912         * gst/base/Makefile.am: Make libgstbase a versioned lib.
3913
3914 2005-03-28  Wim Taymans  <wim@fluendo.com>
3915
3916         * configure.ac:
3917         * docs/design/part-gstelement.txt:
3918         * docs/design/part-negotiation.txt:
3919         * docs/design/part-preroll.txt:
3920         * docs/design/part-scheduling.txt:
3921         * docs/design/part-states.txt:
3922         * gst/Makefile.am:
3923         * gst/base/Makefile.am:
3924         * gst/base/README:
3925         * gst/base/gstbasesink.c: (gst_basesink_get_template),
3926         (gst_basesink_base_init), (gst_basesink_class_init),
3927         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3928         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3929         (gst_basesink_set_pad_functions),
3930         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
3931         (gst_basesink_set_property), (gst_basesink_get_property),
3932         (gst_base_sink_get_template), (gst_base_sink_get_caps),
3933         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
3934         (gst_basesink_preroll_queue_push),
3935         (gst_basesink_preroll_queue_empty),
3936         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
3937         (gst_basesink_event), (gst_basesink_get_times),
3938         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
3939         (gst_basesink_chain_unlocked), (gst_basesink_chain),
3940         (gst_basesink_loop), (gst_basesink_activate),
3941         (gst_basesink_change_state):
3942         * gst/base/gstbasesink.h:
3943         * gst/elements/Makefile.am:
3944         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
3945         (gst_fakesink_class_init), (gst_fakesink_init),
3946         (gst_fakesink_set_property), (gst_fakesink_get_property),
3947         (gst_fakesink_get_times), (gst_fakesink_event),
3948         (gst_fakesink_preroll), (gst_fakesink_render),
3949         (gst_fakesink_change_state):
3950         * gst/elements/gstfakesink.h:
3951         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3952         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
3953         * gst/gstelement.c: (gst_element_add_pad),
3954         (gst_element_get_state_func), (gst_element_abort_state),
3955         (gst_element_commit_state), (gst_element_lost_state),
3956         (gst_element_set_state), (gst_element_pads_activate):
3957         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
3958         * gst/gstpipeline.c: (gst_pipeline_send_event),
3959         (gst_pipeline_change_state):
3960         Added state change code.
3961         Added/updated docs.
3962         Added sink base class, make fakesink extend the base class.
3963         Small cleanups in GstPipeline.
3964
3965 2005-03-26  David Schleef  <ds@schleef.org>
3966
3967         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
3968         is broken and should be implemented in a different library.
3969         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
3970         * gst/gst.h: remove gstcpu.h
3971         * gst/gstcpu.c: remove
3972         * gst/gstcpu.h: remove
3973         * gst/Makefile.am.future: Remove this file.  It's ancient.
3974
3975 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3976
3977         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3978         (gst_bin_send_event):
3979           Add default event/set_manager handlers. The set_manager handler
3980           takes care that the manager is distributed over kids that were
3981           already in the bin before the manager was set. The event handler
3982           is a utility virtual function that sends the event over all sinks,
3983           so that gst_element_send_event (bin, event); has the expected
3984           behaviour.
3985         * gst/gstpad.c: (gst_pad_event_default):
3986           Re-install default event handling for discontinuities, so that
3987           seeking works without requiring hacks in applications or extra
3988           code in sinks.
3989         * gst/gstpipeline.c: (gst_pipeline_class_init),
3990         (gst_pipeline_send_event):
3991           Half hack, half utility: set a pipeline to PAUSED for seek events,
3992           since that is the only way we can guarantee a/v sync. Means that
3993           you can do gst_element_seek (pipeline, method, pos); on a pipeline
3994           and it "just works".
3995
3996 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3997
3998         * gst/gstpipeline.c: (gst_pipeline_use_clock):
3999           Lock/unlock mismatch.
4000
4001 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4002
4003         * docs/faq/gst-uninstalled:
4004           add gst-plugins-base
4005         * docs/gst/Makefile.am:
4006           don't error out until docs are fixed
4007         * docs/gst/gstreamer.types:
4008           remove thread
4009
4010 2005-03-22  Wim Taymans  <wim@fluendo.com>
4011
4012         * check/Makefile.am:
4013         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4014         * gst/gststructure.c: (gst_structure_set_valist),
4015         (gst_structure_copy_conditional):
4016         Activated more tests.
4017         Added message test.
4018         Added G_TYPE_POINTER to GstStructure.
4019         
4020
4021 2005-03-22  Wim Taymans  <wim@fluendo.com>
4022
4023         * docs/design/part-TODO.txt:
4024         * docs/design/part-events.txt:
4025         * docs/design/part-gstbin.txt:
4026         * docs/design/part-gstbus.txt:
4027         * docs/design/part-gstpipeline.txt:
4028         * docs/design/part-messages.txt:
4029         * gst/gstbus.c:
4030         * gst/gstmessage.c:
4031         Docs updates
4032
4033 2005-03-21  Wim Taymans  <wim@fluendo.com>
4034
4035         * gst/gstbus.c: (gst_bus_post):
4036         Fix copy-and-paste error.
4037
4038 2005-03-21  Wim Taymans  <wim@fluendo.com>
4039
4040         * check/Makefile.am:
4041         * gst/Makefile.am:
4042         * gst/elements/Makefile.am:
4043         * gst/elements/gstelements.c:
4044         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4045         (gst_fakesink_event), (gst_fakesink_chain):
4046         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4047         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4048         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4049         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4050         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4051         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4052         (gst_fakesrc_loop), (gst_fakesrc_activate),
4053         (gst_fakesrc_change_state):
4054         * gst/elements/gstfakesrc.h:
4055         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4056         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4057         (gst_filesrc_open_file), (gst_filesrc_loop),
4058         (gst_filesrc_activate), (gst_filesrc_change_state),
4059         (filesrc_find_peek), (filesrc_find_suggest),
4060         (gst_filesrc_type_find):
4061         * gst/elements/gstidentity.c: (gst_identity_finalize),
4062         (gst_identity_class_init), (gst_identity_init),
4063         (gst_identity_proxy_getcaps), (identity_queue_push),
4064         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4065         (gst_identity_getrange), (gst_identity_chain),
4066         (gst_identity_sink_loop), (gst_identity_src_loop),
4067         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4068         (gst_identity_set_property), (gst_identity_get_property),
4069         (gst_identity_change_state):
4070         * gst/elements/gstidentity.h:
4071         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4072         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4073         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4074         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4075         (gst_tee_sink_activate):
4076         * gst/elements/gsttee.h:
4077         * gst/gst.c: (gst_register_core_elements), (init_post):
4078         * gst/gst.h:
4079         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4080         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4081         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4082         (gst_bin_change_state):
4083         * gst/gstbin.h:
4084         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4085         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4086         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4087         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4088         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4089         (bus_watch_callback), (bus_watch_destroy),
4090         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4091         (poll_timeout), (gst_bus_poll):
4092         * gst/gstbus.h:
4093         * gst/gstcaps.h:
4094         * gst/gstdata.h:
4095         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4096         (gst_element_post_message), (gst_element_message_full),
4097         (gst_element_get_state_func), (gst_element_get_state),
4098         (gst_element_abort_state), (gst_element_commit_state),
4099         (gst_element_lost_state), (gst_element_set_state),
4100         (gst_element_pads_activate), (gst_element_change_state),
4101         (gst_element_dispose), (gst_element_set_manager_func),
4102         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4103         (gst_element_set_manager), (gst_element_get_manager),
4104         (gst_element_set_bus), (gst_element_get_bus),
4105         (gst_element_set_scheduler), (gst_element_get_scheduler):
4106         * gst/gstelement.h:
4107         * gst/gstevent.c: (gst_event_new_segment_seek),
4108         (gst_event_new_flush):
4109         * gst/gstevent.h:
4110         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4111         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4112         (gst_message_new_eos), (gst_message_new_error),
4113         (gst_message_new_warning), (gst_message_new_tag),
4114         (gst_message_new_state_changed), (gst_message_new_application),
4115         (gst_message_get_structure), (gst_message_parse_tag),
4116         (gst_message_parse_state_changed), (gst_message_parse_error),
4117         (gst_message_parse_warning):
4118         * gst/gstmessage.h:
4119         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4120         (gst_real_pad_set_property), (gst_pad_set_active),
4121         (gst_pad_is_active), (gst_pad_set_blocked_async),
4122         (gst_pad_set_blocked), (gst_pad_is_blocked),
4123         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4124         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4125         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4126         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4127         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4128         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4129         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4130         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4131         (gst_pad_set_caps), (gst_pad_configure_sink),
4132         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4133         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4134         (gst_real_pad_dispose), (gst_real_pad_finalize),
4135         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4136         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4137         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4138         * gst/gstpad.h:
4139         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4140         (pipeline_bus_handler), (gst_pipeline_change_state),
4141         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4142         * gst/gstpipeline.h:
4143         * gst/gstprobe.h:
4144         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4145         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4146         (gst_queue_link_src), (gst_queue_bufferalloc),
4147         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4148         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4149         (gst_queue_loop), (gst_queue_handle_src_event),
4150         (gst_queue_handle_src_query), (gst_queue_src_activate),
4151         (gst_queue_change_state):
4152         * gst/gstqueue.h:
4153         * gst/gstscheduler.c: (gst_scheduler_init),
4154         (gst_scheduler_dispose), (gst_scheduler_create_task),
4155         (gst_scheduler_factory_create):
4156         * gst/gstscheduler.h:
4157         * gst/gststructure.c: (gst_structure_get_type),
4158         (gst_structure_copy_conditional):
4159         * gst/gststructure.h:
4160         * gst/gsttaginterface.h:
4161         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4162         (gst_task_init), (gst_task_dispose), (gst_task_create),
4163         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4164         (gst_task_pause):
4165         * gst/gsttask.h:
4166         * gst/gstthread.c:
4167         * gst/gstthread.h:
4168         * gst/gsttypes.h:
4169         * gst/schedulers/Makefile.am:
4170         * gst/schedulers/cothreads_compat.h:
4171         * gst/schedulers/entryscheduler.c:
4172         * gst/schedulers/faircothreads.c:
4173         * gst/schedulers/faircothreads.h:
4174         * gst/schedulers/fairscheduler.c:
4175         * gst/schedulers/gstbasicscheduler.c:
4176         * gst/schedulers/gstoptimalscheduler.c:
4177         * gst/schedulers/gthread-cothreads.h:
4178         * gst/schedulers/threadscheduler.c:
4179         (gst_thread_scheduler_task_get_type),
4180         (gst_thread_scheduler_task_class_init),
4181         (gst_thread_scheduler_task_init),
4182         (gst_thread_scheduler_task_start),
4183         (gst_thread_scheduler_task_stop),
4184         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4185         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4186         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4187         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4188         (plugin_init):
4189         * libs/gst/Makefile.am:
4190         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4191         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4192         (gst_file_pad_parent_set):
4193         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4194         (gst_dp_event_from_packet):
4195         * tests/complexity.c: (main):
4196         * tests/mass_elements.c: (main):
4197         * testsuite/states/locked.c: (message_received), (main):
4198         * testsuite/states/parent.c: (main):
4199         * tools/gst-inspect.c: (print_element_flag_info),
4200         (print_implementation_info), (print_pad_info):
4201         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4202         (main):
4203         * tools/gst-md5sum.c: (event_loop), (main):
4204         * tools/gst-typefind.c: (main):
4205         * tools/gst-xmlinspect.c: (print_element_info):
4206         Next big merge.
4207         Added GstBus for mainloop integration.
4208         Added GstMessage for sending notifications on the bus.
4209         Added GstTask as an abstraction for pipeline entry points.
4210         Removed GstThread.
4211         Removed Schedulers.
4212         Simplified GstQueue for multithreaded core.
4213         Made _link threadsafe, removed old capsnego.
4214         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4215         Added pad blocking functions.
4216         Reworked scheduling functions in GstPad to prepare for
4217         scheduling updates soon.
4218         Moved events out of data stream.
4219         Simplified GstEvent types.
4220         Added return values to push/pull.
4221         Removed clocking from GstElement.
4222         Added prototypes for state change function for next merge.
4223         Removed iterate from bins and state change management.
4224         Fixed some elements, disabled others for now.
4225         Fixed -inspect and -launch.
4226         Added check for GstBus.
4227
4228 2005-03-10  Wim Taymans  <wim@fluendo.com>
4229
4230         * docs/design/part-MT-refcounting.txt:
4231         * docs/design/part-clocks.txt:
4232         * docs/design/part-gstelement.txt:
4233         * docs/design/part-gstobject.txt:
4234         * docs/design/part-standards.txt:
4235         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4236         (gst_bin_remove_func), (gst_bin_remove):
4237         * gst/gstbin.h:
4238         * gst/gstbuffer.c:
4239         * gst/gstcaps.h:
4240         * testsuite/clock/clock1.c: (main):
4241         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4242         (main):
4243         * testsuite/dlopen/loadgst.c: (do_test):
4244         * testsuite/refcounting/bin.c: (add_remove_test1),
4245         (add_remove_test2), (main):
4246         * testsuite/refcounting/element.c: (main):
4247         * testsuite/refcounting/element_pad.c: (main):
4248         * testsuite/refcounting/pad.c: (main):
4249         * tools/gst-launch.c: (sigint_handler_sighandler):
4250         * tools/gst-typefind.c: (main):
4251         Doc updates.
4252         Added doc about clock.
4253         removed gst_bin_iterate_recurse_up(), marked methods
4254         for removal.
4255         Fix more testsuites.
4256
4257 2005-03-09  Wim Taymans  <wim@fluendo.com>
4258
4259         * gst/gstpad.c: (gst_pad_get_direction),
4260         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4261         (gst_pad_collect_valist):
4262         * testsuite/bins/interface.c: (main):
4263         * testsuite/caps/audioscale.c: (test_caps):
4264         * testsuite/caps/caps.c: (test1), (test2), (test3):
4265         * testsuite/caps/deserialize.c: (main):
4266         * testsuite/caps/enumcaps.c: (main):
4267         * testsuite/caps/filtercaps.c: (main):
4268         * testsuite/caps/intersect2.c: (main):
4269         * testsuite/caps/random.c: (main):
4270         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4271         * testsuite/caps/sets.c: (check_caps):
4272         * testsuite/caps/simplify.c: (check_caps), (main):
4273         * testsuite/caps/subtract.c: (check_caps):
4274         Fix _pad_get_direction wrt ghostpads.
4275         Fix caps testsuite.
4276
4277 2005-03-09  Wim Taymans  <wim@fluendo.com>
4278
4279         * check/Makefile.am:
4280         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4281         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4282         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4283         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4284         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4285         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4286         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4287         (bin_element_is_sink), (gst_bin_iterate_sinks),
4288         (gst_bin_iterate_all_by_interface):
4289         * gst/gstbin.h:
4290         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4291         (gst_element_change_state), (gst_element_dispose),
4292         (gst_element_finalize), (gst_element_set_loop_function):
4293         * gst/gstelement.h:
4294         * gst/gstiterator.c: (find_custom_fold_func):
4295         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4296         (gst_pad_collectv), (gst_pad_collect_valist),
4297         (gst_pad_template_new):
4298         * gst/gstpipeline.c: (gst_pipeline_class_init),
4299         (gst_pipeline_dispose), (gst_pipeline_set_property),
4300         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4301         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4302         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4303         * gst/gstutils.h:
4304         * gst/schedulers/entryscheduler.c:
4305         * gst/schedulers/gstbasicscheduler.c:
4306         (gst_basic_scheduler_cothreaded_chain),
4307         (gst_basic_scheduler_chain_add_element):
4308         * testsuite/bins/interface.c: (main):
4309         Added GstBin test.
4310         Added GstSystemClock test.
4311         Implemented clock distribution code in GstBin.
4312         Implemented iterate sinks method for future use.
4313         Rearranged gstelement.h
4314         Fix GstIterator comparison bug.
4315         Moved some code to GstPipeline, mostly clocking related.
4316
4317 2005-03-09  Wim Taymans  <wim@fluendo.com>
4318
4319         * configure.ac:
4320         * gst/gst_private.h:
4321         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4322         (gst_bin_remove_func), (gst_bin_remove),
4323         (gst_bin_get_by_name_recurse_up):
4324         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4325         (gst_clock_id_compare_func), (gst_clock_id_wait),
4326         (gst_clock_id_wait_async), (gst_clock_init),
4327         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4328         * gst/gstelement.h:
4329         * gst/gstinfo.c: (_gst_debug_init):
4330         * gst/gstobject.h:
4331         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4332         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4333         * gst/gstpad.h:
4334         Bump version number, we're now 0.9.0
4335         Add future debugging category.
4336         Fix NULL _unref() in _get_by_name_recurse_up
4337         Rearrange gstpad.h.
4338         Update some docs.
4339
4340 2005-03-08  Wim Taymans  <wim@fluendo.com>
4341
4342         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4343         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4344         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4345         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4346         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4347         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4348         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4349         * gst/elements/gstidentity.c: (gst_identity_class_init):
4350         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4351         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4352         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4353         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4354         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4355         (gst_tee_link):
4356         * gst/gstelement.c: (gst_element_class_init),
4357         (gst_element_base_class_init), (gst_element_init),
4358         (gst_element_get_random_pad), (gst_element_wait_state_change),
4359         (gst_element_change_state), (gst_element_dispose),
4360         (gst_element_finalize), (gst_element_set_loop_function):
4361         * gst/gstelement.h:
4362         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4363         * gst/gstthread.c: (gst_thread_class_init),
4364         (gst_thread_release_children_locks), (gst_thread_change_state):
4365         * gst/schedulers/gstbasicscheduler.c:
4366         (gst_basic_scheduler_loopfunc_wrapper),
4367         (gst_basic_scheduler_chain_wrapper),
4368         (gst_basic_scheduler_src_wrapper),
4369         (gst_basic_scheduler_remove_element):
4370         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4371         Remove threadsafe properties. Fix elements because GObject
4372         complains when installing a property before declaring a
4373         set/get_property handler.
4374         Rearrange gstelement.h file, use STATE macros for state locks.
4375         Free mutexes in the finalize method instead of dispose.
4376
4377 2005-03-08  Wim Taymans  <wim@fluendo.com>
4378
4379         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4380         * gst/gstthread.c: (gst_thread_release_children_locks):
4381         Added parentage check.
4382         Fix build og GstThread again.
4383
4384 2005-03-08  Wim Taymans  <wim@fluendo.com>
4385
4386         * docs/design/part-MT-refcounting.txt:
4387         * docs/design/part-conventions.txt:
4388         * docs/design/part-gstobject.txt:
4389         * docs/design/part-relations.txt:
4390         * docs/design/part-standards.txt:
4391         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4392         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4393         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4394         (gst_bin_iterate_all_by_interface):
4395         * gst/gstbuffer.h:
4396         * gst/gstclock.h:
4397         * gst/gstelement.c: (gst_element_class_init),
4398         (gst_element_change_state), (gst_element_set_loop_function):
4399         * gst/gstelement.h:
4400         * gst/gstiterator.c:
4401         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4402         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4403         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4404         (gst_object_set_parent), (gst_object_unparent),
4405         (gst_object_check_uniqueness):
4406         * gst/gstobject.h:
4407         Docs updates, clean up some headers.
4408
4409 2005-03-07  Wim Taymans  <wim@fluendo.com>
4410
4411         * check/.cvsignore:
4412         * check/Makefile.am:
4413         * check/gst-libs/.cvsignore:
4414         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4415         * check/gst/.cvsignore:
4416         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4417         (START_TEST), (gstbus_suite), (main):
4418         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4419         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4420         (gst_data_suite), (main):
4421         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4422         (add_fold_func), (gstiterator_suite), (main):
4423         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4424         (thread_name_object), (thread_name_object_default),
4425         (gst_object_name_compare), (gst_object_suite), (main):
4426         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4427         (gst_pad_suite), (main):
4428         * check/gstcheck.c: (gst_check_log_message_func),
4429         (gst_check_log_critical_func), (gst_check_init):
4430         * check/gstcheck.h:
4431         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4432         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4433         Added checks.
4434
4435 2005-03-07  Wim Taymans  <wim@fluendo.com>
4436
4437         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4438         (gst_list_iterator_next), (gst_list_iterator_resync),
4439         (gst_list_iterator_free), (gst_iterator_new_list),
4440         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4441         (gst_iterator_free), (gst_iterator_push), (filter_next),
4442         (filter_resync), (filter_uninit), (filter_free),
4443         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4444         (gst_iterator_foreach), (find_custom_fold_func),
4445         (gst_iterator_find_custom):
4446         * gst/gstiterator.h:
4447         Added missing files.
4448
4449 2005-03-07  Wim Taymans  <wim@fluendo.com>
4450
4451         * Makefile.am:
4452         * configure.ac:
4453         * docs/design/part-MT-refcounting.txt:
4454         * docs/design/part-conventions.txt:
4455         * docs/design/part-gstobject.txt:
4456         * docs/design/part-relations.txt:
4457         * examples/mixer/mixer.c: (main):
4458         * examples/thread/thread.c: (eos), (main):
4459         * gst/Makefile.am:
4460         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4461         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4462         (gst_spider_plug_from_srcpad):
4463         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4464         (gst_spider_identity_change_state),
4465         (gst_spider_identity_sink_loop_type_finding):
4466         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4467         * gst/elements/gstidentity.c: (gst_identity_init):
4468         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4469         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4470         * gst/elements/gsttypefindelement.c: (free_entry):
4471         * gst/gst.c:
4472         * gst/gst.h:
4473         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4474         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4475         (gst_bin_set_index), (gst_bin_set_element_sched),
4476         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4477         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4478         (gst_bin_iterate_elements), (iterate_child_recurse),
4479         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4480         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4481         (compare_interface), (gst_bin_get_by_interface),
4482         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4483         * gst/gstbin.h:
4484         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4485         (gst_buffer_default_free), (gst_buffer_default_copy),
4486         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4487         (gst_buffer_create_sub):
4488         * gst/gstbuffer.h:
4489         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4490         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4491         (gst_caps_unref), (gst_static_caps_get),
4492         (gst_caps_remove_and_get_structure), (gst_caps_append),
4493         (gst_caps_append_structure), (gst_caps_remove_structure),
4494         (gst_caps_copy_nth), (gst_caps_set_simple),
4495         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4496         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4497         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4498         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4499         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4500         (gst_caps_structure_figure_out_union),
4501         (gst_caps_switch_structures), (gst_caps_do_simplify),
4502         (gst_caps_replace), (gst_caps_from_string),
4503         (gst_caps_copy_conditional):
4504         * gst/gstcaps.h:
4505         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4506         (_gst_clock_id_free), (gst_clock_id_unref),
4507         (gst_clock_id_compare_func), (gst_clock_id_wait),
4508         (gst_clock_id_wait_async), (gst_clock_class_init),
4509         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4510         (gst_clock_get_time), (gst_clock_set_time_adjust),
4511         (gst_clock_set_property), (gst_clock_get_property):
4512         * gst/gstclock.h:
4513         * gst/gstcompat.h:
4514         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4515         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4516         * gst/gstdata.h:
4517         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4518         (gst_element_requires_clock), (gst_element_provides_clock),
4519         (gst_element_set_clock), (gst_element_clock_wait),
4520         (gst_element_wait), (gst_element_set_time_delay),
4521         (gst_element_is_indexable), (gst_element_add_pad),
4522         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4523         (pad_compare_name), (gst_element_get_static_pad),
4524         (gst_element_request_pad), (gst_element_get_request_pad),
4525         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4526         (gst_element_class_get_pad_template_list),
4527         (gst_element_class_get_pad_template), (gst_element_error_func),
4528         (gst_element_get_random_pad), (gst_element_get_event_masks),
4529         (gst_element_send_event), (gst_element_seek),
4530         (gst_element_get_query_types), (gst_element_query),
4531         (gst_element_get_formats), (gst_element_convert),
4532         (gst_element_is_locked_state), (gst_element_set_locked_state),
4533         (gst_element_sync_state_with_parent), (gst_element_change_state),
4534         (gst_element_finalize), (gst_element_yield),
4535         (gst_element_interrupt), (gst_element_set_scheduler),
4536         (gst_element_get_scheduler), (gst_element_set_loop_function):
4537         * gst/gstelement.h:
4538         * gst/gstevent.h:
4539         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4540         (gst_format_get_by_nick), (gst_format_get_details),
4541         (gst_format_iterate_definitions):
4542         * gst/gstformat.h:
4543         * gst/gstindex.c: (gst_index_gtype_resolver):
4544         * gst/gstinfo.c:
4545         * gst/gstinfo.h:
4546         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4547         (gst_mem_chunk_free):
4548         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4549         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4550         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4551         (gst_object_dispatch_properties_changed),
4552         (gst_object_set_name_default), (gst_object_set_name),
4553         (gst_object_get_name), (gst_object_set_name_prefix),
4554         (gst_object_get_name_prefix), (gst_object_set_parent),
4555         (gst_object_get_parent), (gst_object_unparent),
4556         (gst_object_check_uniqueness), (gst_object_save_thyself),
4557         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4558         (gst_object_set_property), (gst_object_get_property),
4559         (gst_object_get_path_string):
4560         * gst/gstobject.h:
4561         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4562         (gst_real_pad_init), (gst_real_pad_get_property),
4563         (gst_pad_custom_new), (gst_pad_get_direction),
4564         (gst_pad_set_active), (gst_pad_is_active),
4565         (gst_pad_set_event_function), (gst_pad_is_linked),
4566         (gst_pad_link_free), (gst_pad_link_intersect),
4567         (gst_pad_link_fixate), (gst_pad_set_caps),
4568         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4569         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4570         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4571         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4572         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4573         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4574         (gst_pad_realize), (gst_pad_get_allowed_caps),
4575         (gst_real_pad_dispose), (gst_real_pad_finalize),
4576         (gst_pad_collectv), (gst_pad_collect_valist),
4577         (gst_pad_template_dispose), (gst_pad_template_new),
4578         (gst_pad_get_internal_links):
4579         * gst/gstpad.h:
4580         * gst/gstpipeline.c: (gst_pipeline_dispose),
4581         (gst_pipeline_change_state):
4582         * gst/gstpipeline.h:
4583         * gst/gstplugin.c:
4584         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4585         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4586         * gst/gstpluginfeature.h:
4587         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4588         * gst/gstquery.c: (_gst_query_type_initialize),
4589         (gst_query_type_register), (gst_query_type_get_by_nick),
4590         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4591         * gst/gstquery.h:
4592         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4593         * gst/gstscheduler.c: (gst_scheduler_add_element),
4594         (gst_scheduler_factory_create):
4595         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4596         (gst_structure_free), (gst_structure_set_name),
4597         (gst_structure_id_set_value), (gst_structure_set_value),
4598         (gst_structure_set_valist), (gst_structure_remove_field),
4599         (gst_structure_remove_fields),
4600         (gst_structure_remove_fields_valist),
4601         (gst_structure_remove_all_fields), (gst_structure_foreach),
4602         (gst_structure_map_in_place),
4603         (gst_caps_structure_fixate_field_nearest_int),
4604         (gst_caps_structure_fixate_field_nearest_double):
4605         * gst/gststructure.h:
4606         * gst/gstsystemclock.c: (gst_system_clock_class_init),
4607         (gst_system_clock_init), (gst_system_clock_dispose),
4608         (gst_system_clock_async_thread),
4609         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
4610         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
4611         * gst/gstsystemclock.h:
4612         * gst/gsttag.c: (gst_tag_list_add_value_internal),
4613         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
4614         * gst/gsttaginterface.c:
4615         * gst/gstthread.c: (gst_thread_dispose),
4616         (gst_thread_release_children_locks), (gst_thread_change_state),
4617         (gst_thread_main_loop):
4618         * gst/gsttrashstack.h:
4619         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
4620         * gst/gsttypes.h:
4621         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4622         (gst_element_request_pad), (gst_element_get_pad_from_template),
4623         (gst_element_request_compatible_pad),
4624         (gst_element_get_compatible_pad_filtered),
4625         (gst_element_get_compatible_pad), (gst_element_state_get_name),
4626         (gst_element_link_pads_filtered), (gst_element_link_filtered),
4627         (gst_element_link_many), (gst_element_link),
4628         (gst_element_link_pads), (gst_element_unlink_pads),
4629         (gst_element_unlink_many), (gst_element_unlink),
4630         (gst_pad_can_link_filtered), (gst_pad_can_link),
4631         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
4632         (gst_object_default_error), (gst_bin_add_many),
4633         (gst_bin_remove_many), (gst_element_populate_std_props),
4634         (gst_element_class_install_std_props), (gst_buffer_merge),
4635         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
4636         (link_fold_func), (gst_pad_proxy_setcaps):
4637         * gst/gstutils.h:
4638         * gst/gstvalue.c: (gst_value_deserialize_string):
4639         * gst/parse/grammar.y:
4640         * gst/schedulers/gstbasicscheduler.c:
4641         (gst_basic_scheduler_cothreaded_chain),
4642         (gst_basic_scheduler_chain_recursive_add),
4643         (gst_basic_scheduler_pad_link):
4644         * gst/schedulers/gstoptimalscheduler.c:
4645         (get_group_schedule_function),
4646         (gst_opt_scheduler_state_transition),
4647         (gst_opt_scheduler_add_element), (element_get_reachables_func):
4648         * libs/gst/bytestream/bytestream.c:
4649         * libs/gst/dataprotocol/dataprotocol.c:
4650         (gst_dp_header_from_buffer):
4651         * po/nb.po:
4652         * po/ru.po:
4653         * tests/threadstate/threadstate2.c: (eos):
4654         * tools/gst-compprep.c: (main):
4655         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
4656         (print_pad_info), (print_children_info):
4657         * tools/gst-launch.c: (idle_func), (main):
4658         * tools/gst-md5sum.c: (idle_func), (main):
4659         * tools/gst-xmlinspect.c: (print_element_info):
4660         First THREADED backport attempt, focusing on adding locks and
4661         making sure the API is threadsafe. Needs more work. More docs
4662         follow this week.
4663
4664 2005-02-24  Andy Wingo  <wingo@pobox.com>
4665
4666         * tests/bench-complexity.scm:
4667         * tests/complexity.gnuplot: New files, good for running complexity
4668         benchmarks.
4669
4670         * tests/Makefile.am:
4671         * tests/complexity.c: New test, sets up N elements, at each level
4672         teeing into M streams per element. Eeeenteresting.
4673
4674         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
4675         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
4676         running bench-mass_elements.scm.
4677
4678         * tests/bench-mass_elements.scm: New script, runs mass_elements
4679         for various numbers of identities, outputting the results to a
4680         file. Requires guile 1.6. Just for testing.
4681
4682 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4683
4684         * gst/schedulers/fairscheduler.c:
4685           compile with debug disabled
4686
4687 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
4688
4689         * configure.ac:
4690           hunting season on 0.9 is now OPEN
4691
4692 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
4693
4694         * docs/libs/tmpl/gstcontrol.sgml:
4695         * docs/libs/tmpl/gstdparam.sgml:
4696         * docs/libs/tmpl/gstdplinint.sgml:
4697         * docs/libs/tmpl/gstdpman.sgml:
4698         * docs/libs/tmpl/gstdpsmooth.sgml:
4699         * docs/libs/tmpl/gstunitconvert.sgml:
4700           more docs for the state of dparams
4701
4702 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4703
4704         * gst/gstelementfactory.c: (gst_element_factory_create):
4705         * gst/gstobject.c: (gst_object_init),
4706         (gst_object_set_name_default), (gst_object_set_name):
4707           name objects by default, not in gst_element_factory_create. Allows
4708           using elements created with g_object_new. (fixes #167283)
4709
4710 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4711
4712         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
4713           make the time that debugging functions print relative to when
4714           gst_init was called
4715
4716 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
4717
4718         * gst/gsttaginterface.c:
4719           Fix inline docs: tag setter vararg functions are NULL-terminated,
4720           GST_TAG_INVALID doesn't exist any more.
4721
4722 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4723
4724         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
4725         Allocate the 1 byte more memory that was forgotten!!!!!
4726         fixes memory corruption on 64bit platforms
4727
4728 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
4729
4730         * docs/pwg/building-pads.xml:
4731         * docs/pwg/intro-basics.xml:
4732           fixed a few typos, relabeled introductionary list of types
4733         * docs/random/ensonic/dparams.txt:
4734           more notes abut dparam changes
4735         * libs/gst/control/dparam.c: (gst_dparam_attach):
4736         * libs/gst/control/dparammanager.c:
4737         * libs/gst/control/dparammanager.h:
4738           - many comments and notes on dparam implementation
4739           - new dparams are were not initialized to the default value
4740             from param spec
4741
4742 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
4743
4744         submitted by: Peter Astakhov
4745
4746         * po/LINGUAS:
4747         * po/ru.po:
4748           adding Russian translation
4749
4750 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4751
4752         * configure.ac:
4753         * docs/gst/Makefile.am:
4754         * docs/libs/Makefile.am:
4755           make sure popt is added to gtk-doc flags.  Fixes #147782.
4756
4757 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
4758
4759         * docs/faq/using.xml:
4760           Fix typo in FAQ (artssink => artsdsink)
4761
4762 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4763
4764         * tools/gst-launch.1.in:
4765           Fix typo (#166699).
4766
4767 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
4768
4769         * docs/faq/using.xml:
4770           Add -v argument to fakesrc/fakesink gst-launch line,
4771           so that the promised output will actually show up.
4772
4773 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4774
4775         * gst/gstthread.c: (gst_thread_change_state):
4776           Implement state-change error handling (#166073).
4777
4778 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4779
4780         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4781           Release interrupt after handling (#166250).
4782
4783 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4784
4785         * configure.ac:
4786           back to HEAD
4787
4788 === release 0.8.9 ===
4789
4790 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4791
4792         * NEWS:
4793         * RELEASE:
4794         * configure.ac:
4795           releasing 0.8.9, "Like Eating Glass"
4796
4797 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4798
4799         submitted by: Clytie Siddall
4800
4801         * po/vi.po: Added Vietnamese translation
4802
4803 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4804
4805         patch by: Tim Philipp-Müller
4806
4807         * configure.ac:
4808         * gst/gstpad.c:
4809           unref data when probe function returns FALSE.  Fixes #166362
4810
4811 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4812
4813         * gst/gst.c: (gst_init_get_popt_table):
4814           Fix typo (#166269).
4815
4816 2005-02-04  Andy Wingo  <wingo@pobox.com>
4817
4818         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
4819         the debugging on whether the caps are compatible.
4820
4821 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4822
4823         * docs/manual/basics-elements.xml:
4824           Fix two typos.
4825
4826 2005-02-02  Wim Taymans  <wim@fluendo.com>
4827
4828         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
4829         (schedule_chain), (get_invalid_call), (chain_invalid_call),
4830         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
4831         Remove some FIXMEs after analysing and commenting why they
4832         are not issues.
4833
4834 2005-02-02  Wim Taymans  <wim@fluendo.com>
4835
4836         * gst/schedulers/gstoptimalscheduler.c:
4837         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
4838         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
4839         (get_invalid_call), (chain_invalid_call),
4840         (get_group_schedule_function), (loop_group_schedule_function),
4841         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
4842         (gst_opt_scheduler_state_transition),
4843         (gst_opt_scheduler_add_element),
4844         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
4845         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
4846         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
4847         (gst_opt_scheduler_show):
4848         Added lock to protect scheduler data structures.
4849
4850 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4851
4852         * testsuite/threads/threadi.c: (cb_data):
4853           Fix buglet in test.
4854
4855 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4856
4857         * testsuite/threads/Makefile.am:
4858         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
4859           On Wim's request, split the test in three separately-compiled
4860           tests that each test a very specific bug. Two of them still fail,
4861           will create bugs for those. threadi.c indicates why they fail.
4862
4863 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4864
4865         * gst/schedulers/gstoptimalscheduler.c:
4866         (get_group_schedule_function):
4867           Try to work with the threading mess that queue_link is.
4868
4869 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4870
4871         * gst/gstbin.c: (gst_bin_remove_func):
4872           Explicitely make an element release locks in a group when being
4873           remove from a bin.
4874         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4875           If there's no scheduler, always return immediately (similar to
4876           gst_element_interrupt).
4877
4878 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4879
4880         * gst/gstbin.c: (gst_bin_child_state_change_func):
4881           Remove a piece of code that could never be reached.
4882         * docs/gst/gstreamer-sections.txt:
4883         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
4884         (gst_pad_call_get_function):
4885         * gst/gstpad.h:
4886         * testsuite/pad/Makefile.am:
4887           Fix #150546, enable tests.
4888
4889 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4890
4891         * docs/pwg/advanced-types.xml:
4892           Fix description for buffer-frames=0.
4893         * docs/gst/tmpl/gstbin.sgml:
4894         * gst/gstbin.c: (gst_bin_child_state_change_func),
4895         (gst_bin_change_state), (gst_bin_change_state_norecurse):
4896         * gst/gstbin.h:
4897         * testsuite/threads/Makefile.am:
4898         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
4899         (cb_state), (cb_play), (main):
4900           Fix non-recursive state changes to *really* change the state
4901           of the object, and not just call parent_class->state_change.
4902           Fix a lot of lockups caused by this. Fixes #132775. Add test
4903           for the problem. Also enable test to show #142588 (fixed).
4904         * gst/gstthread.c: (gst_thread_change_state),
4905         (gst_thread_child_state_change):
4906           Don't exit the thread if we go to NULL and are inside thread
4907           context. Instead, return control to the main thread context
4908           and exit from there.
4909         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
4910           Don't unset virtual functions, since those may still be used.
4911           That's not necessarily correct, but suffices for now.
4912         * configure.ac:
4913         * testsuite/Makefile.am:
4914         * testsuite/pad/Makefile.am:
4915         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
4916         (gst_test_sink_base_init), (gst_test_sink_chain),
4917         (gst_test_sink_init), (main):
4918         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
4919         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
4920         (main):
4921         * testsuite/pad/link.c: (gst_test_element_class_init),
4922         (gst_test_element_base_init), (gst_test_src_get),
4923         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
4924         (gst_test_filter_loop), (gst_test_filter_init),
4925         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
4926         (cb_error), (main):
4927           Add tests to show #150546. Pass, but should fail (currently
4928           disabled from the testsuite).
4929         * gst/gstscheduler.c: (gst_scheduler_dispose):
4930           Dereference child schedulers on dispose (#94464).
4931         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
4932           Fix typo.
4933         * testsuite/threads/thread.c: (main):
4934           Add more debug.
4935
4936 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4937
4938         * gst/gstpad.c: (gst_pad_push):
4939           Oops, revert previous commit, broke testsuite...
4940
4941 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4942
4943         * gst/gstpad.c: (gst_pad_push):
4944           Add check that the pad on which the push is performed is not a
4945           get-based pad (#150546).
4946
4947 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4948
4949         * gst/elements/gsttypefindelement.c:
4950         (gst_type_find_element_handle_event):
4951           Fix buffer pushing if stream EOSes during typefinding.
4952
4953 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
4954
4955         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4956
4957         * gst/gstvalue.c: (gst_string_wrap):
4958           Allow NULL-strings as argument (#165365).
4959
4960 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
4961
4962         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4963
4964         * gst/schedulers/faircothreads.c:
4965         (gst_fair_scheduler_cothread_queue_show):
4966           Fix build without debug enabled.
4967
4968 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
4969
4970         * docs/gst/gstreamer-sections.txt:
4971         * docs/libs/gstreamer-libs-docs.sgml:
4972         * docs/libs/gstreamer-libs-sections.txt:
4973         * docs/libs/tmpl/gstcontrol.sgml:
4974         * docs/libs/tmpl/gstdparam.sgml:
4975         * docs/libs/tmpl/gstdplinint.sgml:
4976         * docs/libs/tmpl/gstdpman.sgml:
4977         * docs/libs/tmpl/gstdpsmooth.sgml:
4978         * docs/libs/tmpl/gstputbits.sgml:
4979         * docs/libs/tmpl/gstunitconvert.sgml:
4980         * libs/gst/control/dparam.c:
4981         * libs/gst/control/dparam.h:
4982         * libs/gst/control/dparammanager.c:
4983         (gst_dpman_add_required_dparam_callback),
4984         (gst_dpman_add_required_dparam_direct),
4985         (gst_dpman_add_required_dparam_array),
4986         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
4987         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
4988         (gst_dpman_get_manager)
4989           restructured DParam docs
4990
4991 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
4992
4993         * gst-element-check.m4:
4994           Only check for gst-inspect if we haven't already
4995           found it in previous element check runs
4996
4997 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
4998
4999         * docs/gst/Makefile.am:
5000         * docs/libs/Makefile.am:
5001           fixed install rules to treat style.css as optional
5002
5003 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5004
5005         * docs/gst/Makefile.am:
5006         * docs/libs/Makefile.am:
5007           install style.css along with docs
5008         * docs/gst/tmpl/gstbin.sgml:
5009         * docs/gst/tmpl/gstclock.sgml:
5010         * docs/gst/tmpl/gstdata.sgml:
5011         * docs/gst/tmpl/gstelement.sgml:
5012         * gst/gstbin.h:
5013         * gst/gstelement.c: (gst_element_class_init):
5014         * gst/gstelement.h:
5015           fixing incomplete docs
5016
5017 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5018
5019         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5020           Don't unref seek event twice when fflush() fails
5021           
5022 2005-01-22  David Schleef  <ds@schleef.org>
5023
5024         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5025
5026 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5027
5028         * docs/gst/Makefile.am:
5029         * docs/libs/Makefile.am:
5030           added params for deprecation guards
5031         * gst/gst.c:
5032         * gst/gst.h:
5033         * gst/gsterror.c: (_gst_resource_errors_init),
5034         (_gst_stream_errors_init):
5035         * gst/gsterror.h:
5036           documented some more enums
5037
5038 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5039         * gst/autoplug/gstspideridentity.c:
5040         Cosmetic fix - spider_find_peek should be static
5041         * gst/parse/parse.l:
5042         Applying fix for #164261
5043
5044 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5045
5046         * docs/gst/gstreamer-sections.txt:
5047         * docs/gst/tmpl/gstplugin.sgml:
5048         * docs/libs/gstreamer-libs-sections.txt:
5049         * docs/libs/tmpl/gstcontrol.sgml:
5050         * gst/gstbuffer.h:
5051         * gst/gsttag.h:
5052         * gst/gstvalue.c:
5053           added docs for the TAG defines
5054
5055 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5056
5057         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5058           Only unref entry if there is an entry.
5059
5060 2005-01-17  Wim Taymans  <wim@fluendo.com>
5061
5062         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5063         (remove_from_group), (schedule_group), (normalize_group),
5064         (gst_opt_scheduler_iterate):
5065         Also ref/unref decoupled elements before iterating the
5066         group since they are not added to the list of elements.
5067
5068 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5069
5070         * docs/manual/highlevel-components.xml:
5071           Add subtitle/streamselection as new features to playbin.
5072
5073 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5074
5075         * docs/manual/manual.xml:
5076           Re-enable dataaccess docs (oops).
5077
5078 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5079
5080         * docs/pwg/advanced-types.xml:
5081         * docs/random/mimetypes:
5082           Add documentation on libsndfile types (#163309), by Steve Baker
5083           <steve@stevebaker.org>.
5084         * gst/gstelement.c: (gst_element_release_request_pad):
5085           If an element has no explicit function, just remove the pad.
5086
5087 2005-01-17  Luca Ognibene  <luogni@tin.it>
5088
5089         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5090
5091         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5092           Fix memleak (#163801).
5093
5094 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5095
5096         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5097           I think this is actually more correct...
5098
5099 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5100
5101         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5102           Another workaround for memory access while destroyed in callback.
5103           Please, someone with refcount knowledge, have a look at this.
5104
5105 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5106
5107         * docs/faq/faq.xml:
5108         * docs/faq/legal.xml:
5109           move the legal Q&A here
5110
5111 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5112
5113         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5114         (gst_tee_request_new_pad):
5115           Fix negotiation.
5116
5117 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5118
5119         * docs/random/omega/caps2:
5120         * testsuite/caps/caps_strings:
5121           replace framerate aproximations by their real value
5122           (24000/1001, 30000/1001, 60000/1001)
5123           Partially fixes bug #164049
5124
5125 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5126
5127         * docs/gst/Makefile.am:
5128           don't fail on the stupid GstPoptOption
5129
5130 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5131
5132         * gst/gstpad.h:
5133         * gst/gstprobe.c:
5134           allow probes to work on ghost pads by realizing the pad
5135           probe debugging
5136
5137 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5138
5139         * docs/gst/gstreamer-sections.txt:
5140         * docs/gst/tmpl/gstpad.sgml:
5141         * gst/gstpad.c: (gst_pad_set_active_recursive):
5142         * gst/gstpad.h:
5143           Add gst_pad_set_active_recursive().
5144
5145 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5146
5147         * docs/random/release:
5148           updates
5149         * gst/gst_private.h:
5150         * gst/gstinfo.c:
5151         * gst/gstobject.c:
5152           move deep_notify logging to a new category
5153         * gst/gstprobe.c:
5154         * gst/gstprobe.h:
5155           add stuff so bindings can wrap probes
5156
5157 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5158
5159         * gst/gstplugin.c: (gst_plugin_load):
5160           Fix plugin loading if plugin/lib was already loaded. Fixes
5161           #163383
5162
5163 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5164
5165         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5166
5167         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5168           Protect plugin loading by a mutex so it's threadsafe. Fixes
5169           #163234.
5170
5171 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5172
5173         * gst/gstevent.c: (_gst_event_copy):
5174           Reference source object when copying events, since it'll be
5175           dereferenced on event dereferencing as well.
5176
5177 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5178
5179         * docs/gst/gstreamer-sections.txt:
5180         * docs/gst/tmpl/gstevent.sgml:
5181         * gst/gstevent.c: (gst_event_new_filler_stamped),
5182         (gst_event_filler_get_duration):
5183         * gst/gstevent.h:
5184           Add two new functions for filler events (which are used to
5185           synchronize streams if one of them is not having any data
5186           for a while) without interrupting the actual data-stream.
5187           Basically a no-op.
5188         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5189         (gst_queue_link_sink), (gst_queue_link_src),
5190         (gst_queue_change_state):
5191           Allow for renegotiation while filled. Required for stream
5192           switching while playing.
5193
5194 2005-01-08  Benjamin Otte  <otte@gnome.org>
5195
5196         * gst/gstelement.c: (gst_element_link_many):
5197           fix up g_return_if_fail's
5198         * po/LINGUAS:
5199         * po/de.po:
5200           add German translation, that was somehow not included
5201
5202 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5203
5204         * docs/random/mimetypes:
5205           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5206           do not add them to riff-lib as they are not common
5207
5208 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5209
5210         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5211           Check for existence of probe after performing the probe before
5212           re-accessing it to prevent segfaults caused by removal of the
5213           probe in the callback.
5214
5215 2005-01-05  David Schleef  <ds@schleef.org>
5216
5217         * testsuite/registry/Makefile.am:
5218         * testsuite/registry/gst-print-formats.c:
5219         (print_pad_templates_info), (print_element_list),
5220         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5221         (g_list_uniqify), (get_pad_templates_info),
5222         (get_element_mime_list), (print_mime_list), (main): A little
5223         program that looks through the registry to find elements of
5224         a given type.  Not particularly interesting as a test, except
5225         that there's no other test covering the same area.
5226
5227 2005-01-05  David Schleef  <ds@schleef.org>
5228
5229         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5230         (fault_handler_sigaction), (fault_spin),
5231         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5232         in signal.h-type signal handlers by not calling forbidden functions,
5233         including gst_element_set_state().
5234
5235 2005-01-05  David Schleef  <ds@schleef.org>
5236
5237         * gst/gstvalue.h: Mark _gst_reserved[] as private
5238
5239 2005-01-05  David Schleef  <ds@schleef.org>
5240
5241         * gst/gstvalue.c: Fix doc build problem.
5242
5243 2005-01-05  David Schleef  <ds@schleef.org>
5244
5245         * gst/gstvalue.c: Add some documentation
5246
5247 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5248
5249         * docs/README:
5250           another shell oneliner for empty return value docs
5251         * gst/gstcaps.c:
5252         * gst/gstvalue.c:
5253         * libs/gst/control/dparam.c:
5254           more doc fixes (parameters and return values)
5255
5256 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5257
5258         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5259
5260         * gst/gstregistry.h:
5261         * gst/registries/gstxmlregistry.c:
5262           Fix macro's for Mingw (fixes #162276).
5263
5264 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5265
5266         * docs/README:
5267           quick shell oneliner to find undocumented members
5268         * docs/gst/tmpl/gstplugin.sgml:
5269         * docs/gst/tmpl/gstscheduler.sgml:
5270         * docs/gst/tmpl/gstthread.sgml:
5271           more enumtypes cleanup
5272         * gst/gsterror.h:
5273           activated documentation comments, now someone needs to document
5274           the enums :(
5275
5276 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5277
5278         * docs/manual/manual.xml:
5279           Add dataaccess part (doh!).
5280
5281 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5282
5283         * docs/manual/advanced-autoplugging.xml:
5284           Fix typo (intiate -> initiate).
5285
5286 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5287
5288         * docs/random/bbb/streamselection:
5289           Add some notes on how to handle multi-subtitle/-audio streams.
5290
5291 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5292
5293         * docs/gst/gstreamer-docs.sgml:
5294         * docs/gst/gstreamer-sections.txt:
5295         * docs/gst/tmpl/gstenumtypes.sgml:
5296         * docs/gst/tmpl/gsterror.sgml:
5297         * docs/gst/tmpl/gstevent.sgml:
5298         * docs/gst/tmpl/gstpad.sgml:
5299         * docs/gst/tmpl/gstpadtemplate.sgml:
5300         * docs/gst/tmpl/gstthread.sgml:
5301           removed gstenumtypes section from docs and put all the enums into
5302           their sections
5303
5304 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5305
5306         * gst/gstplugin.c:
5307           document gst_library_load a bit more (riff special case + return
5308           value if already loaded)
5309         * testsuite/bytestream/filepadsink.c:
5310           plugin name is 'gstbytestream', not 'bytestream'
5311
5312 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5313
5314         * docs/random/bbb/subtitles:
5315           Add some first mind rumblings on proper subtitle support.
5316
5317 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5318
5319         * po/ca.po:
5320         * po/sv.po:
5321           updated translations
5322
5323 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5324
5325         * docs/manual/advanced-dataaccess.xml:
5326           Add section on how to use fakesrc/fakesink/identity in your
5327           application, plus section on how to embed plugins. Also mention
5328           probes.
5329         * docs/manual/appendix-checklist.xml:
5330         * docs/manual/appendix-debugging.xml:
5331         * docs/manual/appendix-gnome.xml:
5332         * docs/manual/appendix-integration.xml:
5333           Debug -> checklist, GNOME -> integration, add sections on Linux,
5334           KDE integration and add other things useful for application
5335           development.
5336         * docs/manual/manual.xml:
5337           Remove some fixmes, update some file pointers.
5338         * docs/pwg/appendix-checklist.xml:
5339           Fix typo.
5340         * docs/pwg/building-boiler.xml:
5341           Remove ugly header and add commented fixme.
5342         * docs/pwg/pwg.xml:
5343           Add fixme.
5344         * examples/manual/Makefile.am:
5345           Add example for added docs.
5346
5347 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5348
5349         * configure.ac:
5350           back to HEAD
5351
5352 === release 0.8.8 ===
5353
5354 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5355
5356         * NEWS:
5357         * RELEASE:
5358         * configure.ac:
5359           Releasing 0.8.8, "I'll Take Care Of You"
5360
5361 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5362
5363         * configure.ac:
5364           second prerelease
5365
5366 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5367
5368         patch by: Wim Taymans
5369
5370         * gst/gstbin.c:
5371           Fix for #159852 - make iterate emission threadsafe
5372
5373 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5374
5375         * docs/faq/cvs.xml:
5376           notes about new fdo account request
5377
5378 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5379
5380         * docs/gst/gstreamer-docs.sgml:
5381         * docs/gst/tmpl/gstenumtypes.sgml:
5382         * docs/gst/tmpl/gstplugin.sgml:
5383         * docs/libs/gstreamer-libs-docs.sgml:
5384           Added missing short docs. Added ids for navigation.
5385
5386 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5387
5388         * docs/manual/advanced-autoplugging.xml:
5389         * docs/manual/advanced-schedulers.xml:
5390         * docs/manual/advanced-threads.xml:
5391           Rewrites. Remove cothreads, go a bit into opt specifically,
5392           document threads and their gotchas, and do some technical stuff
5393           on autoplugging plus add some working examples. Fixes #157395.
5394         * examples/manual/Makefile.am:
5395           Add typefind/autoplugger example (one that actually works).
5396           Remove queue example since it's a duplicate of the thread one.
5397
5398 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5399
5400         * gst/gstvalue.c: (gst_value_deserialize_string):
5401           use deprecated g_value_set_string_take_ownership to keep compatible
5402           with glib 2.2
5403
5404 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5405
5406         * gst/gstvalue.c: (gst_value_deserialize_string):
5407           revert last patch, only dom a g_utf8_validate now before accepting
5408           the string - caps parsing strips " from strings so we can't rely on
5409           them
5410         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5411           disable a test that tested the above and comment it
5412
5413 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5414
5415         Patch reviewed by David Schleef  <ds@schleef.org>
5416
5417         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5418         bug #153882)
5419         * win32/gstenumtypes.h: same
5420
5421 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5422
5423         * gst/gstpad.c: (gst_pad_query):
5424           Do query on realized pad, similar to how convert/send_event handle
5425           this. Also makes sense, since this pad belongs to the function to
5426           which this query will be sent. Fixes #158163.
5427
5428 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5429
5430         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5431
5432 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5433
5434         * docs/faq/general.xml: fix pipeline to actually work
5435
5436 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5437
5438         * gst/gstvalue.c: (gst_value_deserialize_string):
5439           check that a simple string that gets deserialized does not contain
5440           invalid characters
5441         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5442           remove a test that tested a wring behaviour
5443
5444 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5445
5446         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5447
5448         * docs/manual/intro-motivation.xml:
5449           Fix typos.
5450
5451 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5452
5453         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5454
5455         * docs/gst/tmpl/gstprobe.sgml:
5456           Fix documentation of probe callback - it is supposed to return
5457           FALSE, not TRUE, to remove data from the stream (#159087).
5458
5459 2004-12-16  Daniel Gazard  <dany42@free.fr>
5460
5461         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5462
5463         * gst/gstelementfactory.c: (gst_element_factory_create):
5464           Fix compile failure if compiling without libxml2 support (#149936).
5465
5466 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5467
5468         * docs/manual/advanced-autoplugging.xml:
5469         * docs/manual/highlevel-components.xml:
5470           Move spider from autoplugging to components. Autoplugging is for
5471           internals, not for solutions. ;-).
5472
5473 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5474
5475         * docs/random/ds/0.9-suggested-changes:
5476           Make note on device/location/uri property names.
5477
5478 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5479
5480         * docs/manual/advanced-autoplugging.xml:
5481         * docs/manual/advanced-clocks.xml:
5482         * docs/manual/advanced-interfaces.xml:
5483         * docs/manual/advanced-metadata.xml:
5484         * docs/manual/advanced-position.xml:
5485         * docs/manual/advanced-schedulers.xml:
5486         * docs/manual/advanced-threads.xml:
5487         * docs/manual/appendix-gnome.xml:
5488         * docs/manual/appendix-programs.xml:
5489         * docs/manual/appendix-quotes.xml:
5490         * docs/manual/autoplugging.xml:
5491         * docs/manual/basics-bins.xml:
5492         * docs/manual/basics-data.xml:
5493         * docs/manual/basics-elements.xml:
5494         * docs/manual/basics-helloworld.xml:
5495         * docs/manual/basics-init.xml:
5496         * docs/manual/basics-pads.xml:
5497         * docs/manual/basics-plugins.xml:
5498         * docs/manual/bins-api.xml:
5499         * docs/manual/bins.xml:
5500         * docs/manual/buffers-api.xml:
5501         * docs/manual/buffers.xml:
5502         * docs/manual/clocks.xml:
5503         * docs/manual/components.xml:
5504         * docs/manual/cothreads.xml:
5505         * docs/manual/debugging.xml:
5506         * docs/manual/dparams-app.xml:
5507         * docs/manual/dynamic.xml:
5508         * docs/manual/elements-api.xml:
5509         * docs/manual/elements.xml:
5510         * docs/manual/factories.xml:
5511         * docs/manual/gnome.xml:
5512         * docs/manual/goals.xml:
5513         * docs/manual/helloworld.xml:
5514         * docs/manual/helloworld2.xml:
5515         * docs/manual/highlevel-components.xml:
5516         * docs/manual/highlevel-xml.xml:
5517         * docs/manual/init-api.xml:
5518         * docs/manual/intro-basics.xml:
5519         * docs/manual/intro-motivation.xml:
5520         * docs/manual/intro-preface.xml:
5521         * docs/manual/intro.xml:
5522         * docs/manual/links-api.xml:
5523         * docs/manual/links.xml:
5524         * docs/manual/manual.xml:
5525         * docs/manual/motivation.xml:
5526         * docs/manual/pads-api.xml:
5527         * docs/manual/pads.xml:
5528         * docs/manual/plugins-api.xml:
5529         * docs/manual/plugins.xml:
5530         * docs/manual/programs.xml:
5531         * docs/manual/queues.xml:
5532         * docs/manual/quotes.xml:
5533         * docs/manual/schedulers.xml:
5534         * docs/manual/states-api.xml:
5535         * docs/manual/states.xml:
5536         * docs/manual/threads.xml:
5537         * docs/manual/typedetection.xml:
5538         * docs/manual/win32.xml:
5539         * docs/manual/xml.xml:
5540           Try 2. This time, include a short preface as a "general
5541           introduction", also add code blocks around all code samples
5542           so they get compiled. We still need a way to tell readers
5543           the filename of the code sample. In some cases, don't show
5544           all code in the documentation, but do include it in the generated
5545           code. This allows for focussing on specific bits in the docs,
5546           while still having a full test application available.
5547         * examples/manual/Makefile.am:
5548           Fix up examples for new ADM. Add several of the new examples that
5549           were either added or were missing from the build system.
5550         * examples/manual/extract.pl:
5551           Allow nameless blocks.
5552
5553 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5554
5555         * docs/manual/elements-api.xml:
5556         * docs/manual/helloworld.xml:
5557         * examples/manual/extract.pl:
5558           fix last example.  Add example of adding code blocks that are not
5559           shown in docbook output.
5560
5561 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5562
5563         * docs/manual/dynamic.xml:
5564         * docs/manual/elements-api.xml:
5565         * docs/manual/gnome.xml:
5566         * docs/manual/helloworld2.xml:
5567         * docs/manual/init-api.xml:
5568         * docs/manual/queues.xml:
5569         * docs/manual/threads.xml:
5570         * docs/manual/xml.xml:
5571         * examples/manual/extract.pl:
5572           Make it possible to extract example code from separate blocks.
5573           Should make Ronald happy.
5574
5575 2004-12-15  Wim Taymans  <wim@fluendo.com>
5576
5577         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5578         (remove_from_group), (group_elements_set_visited),
5579         (normalize_group), (gst_opt_scheduler_iterate):
5580         Fix bug where a flag was not updated on a decoupled entry point 
5581         because we were just checking the group element list and decoupled
5582         elements are not in that list..
5583
5584 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5585
5586         * docs/manual/advanced-autoplugging.xml:
5587         * docs/manual/advanced-clocks.xml:
5588         * docs/manual/advanced-dparams.xml:
5589         * docs/manual/advanced-interfaces.xml:
5590         * docs/manual/advanced-metadata.xml:
5591         * docs/manual/advanced-position.xml:
5592         * docs/manual/advanced-schedulers.xml:
5593         * docs/manual/advanced-threads.xml:
5594         * docs/manual/appendix-debugging.xml:
5595         * docs/manual/appendix-gnome.xml:
5596         * docs/manual/appendix-programs.xml:
5597         * docs/manual/appendix-quotes.xml:
5598         * docs/manual/appendix-win32.xml:
5599         * docs/manual/autoplugging.xml:
5600         * docs/manual/basics-bins.xml:
5601         * docs/manual/basics-data.xml:
5602         * docs/manual/basics-elements.xml:
5603         * docs/manual/basics-helloworld.xml:
5604         * docs/manual/basics-init.xml:
5605         * docs/manual/basics-pads.xml:
5606         * docs/manual/basics-plugins.xml:
5607         * docs/manual/bins-api.xml:
5608         * docs/manual/bins.xml:
5609         * docs/manual/buffers-api.xml:
5610         * docs/manual/buffers.xml:
5611         * docs/manual/clocks.xml:
5612         * docs/manual/components.xml:
5613         * docs/manual/cothreads.xml:
5614         * docs/manual/debugging.xml:
5615         * docs/manual/dparams-app.xml:
5616         * docs/manual/dynamic.xml:
5617         * docs/manual/elements-api.xml:
5618         * docs/manual/elements.xml:
5619         * docs/manual/factories.xml:
5620         * docs/manual/gnome.xml:
5621         * docs/manual/goals.xml:
5622         * docs/manual/helloworld.xml:
5623         * docs/manual/helloworld2.xml:
5624         * docs/manual/highlevel-components.xml:
5625         * docs/manual/highlevel-xml.xml:
5626         * docs/manual/init-api.xml:
5627         * docs/manual/intro-motivation.xml:
5628         * docs/manual/intro-preface.xml:
5629         * docs/manual/intro.xml:
5630         * docs/manual/links-api.xml:
5631         * docs/manual/links.xml:
5632         * docs/manual/manual.xml:
5633         * docs/manual/motivation.xml:
5634         * docs/manual/pads-api.xml:
5635         * docs/manual/pads.xml:
5636         * docs/manual/plugins-api.xml:
5637         * docs/manual/plugins.xml:
5638         * docs/manual/programs.xml:
5639         * docs/manual/queues.xml:
5640         * docs/manual/quotes.xml:
5641         * docs/manual/schedulers.xml:
5642         * docs/manual/states-api.xml:
5643         * docs/manual/states.xml:
5644         * docs/manual/threads.xml:
5645         * docs/manual/typedetection.xml:
5646         * docs/manual/win32.xml:
5647         * docs/manual/xml.xml:
5648           First try at rewriting the ADM. Needs lotsamore work, but some
5649           parts might already be somewhat useful.
5650         * docs/pwg/advanced-interfaces.xml:
5651           Remove properties interface, it never actually existed (except for
5652           on my HD...).
5653
5654 2004-12-13  David Schleef  <ds@schleef.org>
5655
5656         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
5657         be NULL (bug #160220).
5658
5659 2004-12-13  David Schleef  <ds@schleef.org>
5660
5661         * configure.ac: remove all mmx stuff, because it's not used.
5662         * docs/random/ds/0.9-suggested-changes: additional notes
5663         * include/Makefile.am: we don't use these anymore
5664         * include/mmx.h: remove
5665         * include/sse.h: remove
5666
5667 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5668
5669         * docs/random/mimetypes:
5670           Add FOURCC code for h264 codec (VSSH)
5671           Add alternate FOURCC codes for h263 related codecs
5672
5673 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
5674
5675         * docs/manual/programs.xml:
5676           Added more gst-launch examples.
5677
5678 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5679
5680         * gst/gstqueue.c: (gst_queue_handle_src_query):
5681           Check for availability again.
5682
5683 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5684
5685         * gst/gstcaps.c: (gst_caps_compare_structures):
5686           Simple caps go first. This has the nice side-effect of fixing an
5687           obscure warning.
5688
5689 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5690
5691         * gst/gstversion.h.in:
5692           Protect header.
5693
5694 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5695
5696         * gst/schedulers/gstoptimalscheduler.c:
5697         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
5698         (gst_opt_scheduler_get_wrapper):
5699           When we're recursing into a chain run, only run the directly
5700           related group, not all queued ones. This will fix a possible
5701           deadlock in chains with more than two groups.
5702
5703 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5704
5705         * autogen.sh:
5706           remove patch if autopoint fails
5707
5708 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5709
5710         * docs/gst/gstreamer-sections.txt:
5711           Document Thomas' addition, fix build, make Luis the sheriff happy.
5712
5713 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5714
5715         * gst/gstplugin.c:
5716         * gst/gstplugin.h:
5717           add accessor for version field
5718
5719 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5720
5721         submitted by: Luca Ferretti <elle.uca@infinito.it>
5722
5723         * po/LINGUAS:
5724         * po/it.po:
5725           New tranlation added: Italian
5726
5727 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5728
5729         * gst/gstpad.c: (gst_pad_is_negotiated),
5730         (gst_pad_get_negotiated_caps):
5731           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
5732           it doesn't actually check the contents), so be sure to hand it
5733           a RealPad else we'll crash.
5734
5735 2004-12-03  Wim Taymans  <wim@fluendo.com>
5736
5737         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5738         (gst_queue_link), (gst_queue_handle_src_query):
5739         Reverted to 1.110 until this makes the testsuite and various
5740         apps work.
5741
5742 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
5743
5744         * docs/upload.mak: fix included CVS conflict strings
5745
5746 2004-12-01  William Jon McCann  <mccann@jhu.edu>
5747
5748         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5749
5750         * gst/gstelement.c: (gst_element_error_full):
5751           Use g_error_new_literal because error text may have
5752           percentage signs in it. Fixes #160019.
5753
5754 2004-12-01  Benjamin Otte  <otte@gnome.org>
5755
5756         * gst/elements/gstbufferstore.c:
5757         (gst_buffer_store_add_buffer_func):
5758           don't try to make subbuffers bigger than they can be. (fixes
5759           #159970)
5760
5761 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5762
5763         * docs/gst/gstreamer-sections.txt:
5764         * docs/gst/tmpl/gstvalue.sgml:
5765           Add new function to docs to fix build.
5766
5767 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5768
5769         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
5770         * gst/gstpad.c: (_gst_pad_default_fixate_value),
5771         (_gst_pad_default_fixate_foreach):
5772         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
5773         * gst/gstvalue.h:
5774           Deprecate _type_is_fixed, use _value_is_fixed instead, since
5775           in some cases (arrays), the fixedness depends on the content.
5776         * gst/gstqueue.c: (gst_queue_handle_src_query):
5777           Check for availability before doing something.
5778
5779 2004-11-29  Wim Taymans  <wim@fluendo.com>
5780
5781         * testsuite/threads/Makefile.am:
5782         * testsuite/threads/signals.c: (gst_test_get_type),
5783         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
5784         (gst_test_set_property), (gst_test_get_property),
5785         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
5786         (gst_test_do_prop), (run_thread), (main):
5787         Added a bunch of testcases that show threadsafety bugs in glib.
5788
5789 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
5790
5791         * docs/manual/programs.xml:
5792           Added a first batch of gst-launch examples, as provided by Ronald
5793           and others from the devel-mlist
5794
5795 2004-11-28  Benjamin Otte  <otte@gnome.org>
5796
5797         * gst/gstelement.c: (gst_element_negotiate_pads):
5798           simplify
5799         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
5800         (gst_value_serialize_string), (gst_value_deserialize_string):
5801           add unwrapping of previously wrapped strings. Fix bug in wrapping
5802           while at it.
5803         * testsuite/caps/value_serialize.c: (test1),
5804         (test_string_serialization), (test_string_deserialization), (main):
5805           add tests for string (de)serialization
5806
5807 2004-11-26  Wim Taymans  <wim@fluendo.com>
5808
5809         * testsuite/threads/159566.c: (object_deep_notify), (main):
5810         * testsuite/threads/Makefile.am:
5811         Added testsuite to show bug #159566
5812
5813 2004-11-25  Wim Taymans  <wim@fluendo.com>
5814
5815         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
5816         (gst_thread_child_state_change), (gst_thread_main_loop):
5817         Ref the thread object in the GThread mainloop. Break out of the
5818         thread mainloop if it holds the last ref. This properly exits
5819         the threads when disposing the thread from its own context. It
5820         also avoids possible deadlocks in the dispose function.
5821
5822 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
5823
5824         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
5825         it is necessary to wait.
5826
5827 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5828
5829         * docs/pwg/building-boiler.xml:
5830           Make description somewhat clearer.
5831
5832 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5833
5834         * docs/upload.mak:
5835           Apparently docs changed location on FDO's server.
5836
5837 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5838
5839         * docs/pwg/appendix-checklist.xml:
5840           Add some random notes on things to check when writing an element.
5841           This list can be extended as people see fit.
5842
5843 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
5844
5845         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
5846         (gst_queue_link_src): Allow for renegotiating the caps of the sink
5847         pad. The queue will now wait until it is empty and forward the new
5848         caps to the source.
5849         * gst/gstbin.c (gst_bin_set_element_sched)
5850         (gst_bin_unset_element_sched): Make sure that all elements and
5851         links are registered and unregistered with the scheduler exactly
5852         once. This elaborates on a fix by Benjamin Otte, but
5853         guarantees that decoupled elements are also registered.
5854
5855 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5856
5857         * docs/manual/quotes.xml:
5858           add a quote
5859         * configure.ac:
5860         * gst/gst.c:
5861         * gst/gstinfo.c:
5862           add LIBDIR and move init message higher up so it's at the start
5863
5864 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5865
5866         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
5867         * gstreamer.spec.in: add fair
5868
5869 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5870
5871         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5872         * gst/elements/gstidentity.c: (gst_identity_class_init):
5873           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
5874           <teuf@gnome.org> (#157263).
5875         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
5876         (gst_type_find_handle_src_query):
5877           Subtract size of internally stored data from position queries.
5878
5879 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
5880
5881         * gst/schedulers/fairscheduler.c:
5882         * gst/schedulers/faircothreads.c:
5883         * gst/schedulers/faircothreads.h:
5884         New cothread based scheduler: Fair scheduler.
5885         * gst/schedulers/gthread-cothreads.h: 
5886         Add the standard #if around the whole file.
5887         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
5888         compilation of the functions defined in this file. This is
5889         necessary to be able to use this file as a normal header.
5890         * gst/schedulers/Makefile.am: Add compiling support for fair
5891         scheduler.
5892         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
5893         scheduler cothreads layer from documentation generation.
5894
5895 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5896
5897         * gst/autoplug/gstspideridentity.c:
5898         (gst_spider_identity_sink_loop_type_finding):
5899           Don't crash if that function is not implemented.
5900
5901 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5902
5903         * docs/pwg/advanced-types.xml:
5904           Another typo.
5905
5906 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5907
5908         * docs/pwg/intro-preface.xml:
5909           Hm, ok, so the brackets weren't really useful...
5910         * docs/pwg/other-ntoone.xml:
5911           Fix embarassing typo.
5912
5913 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5914
5915         * docs/pwg/intro-preface.xml:
5916           Rewrite preface.
5917
5918 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5919
5920         * docs/pwg/advanced-scheduling.xml:
5921         * docs/pwg/advanced-tagging.xml:
5922         * docs/pwg/advanced-types.xml:
5923         * docs/pwg/building-boiler.xml:
5924         * docs/pwg/building-chainfn.xml:
5925         * docs/pwg/building-signals.xml:
5926         * docs/pwg/building-state.xml:
5927         * docs/pwg/building-testapp.xml:
5928         * docs/pwg/intro-basics.xml:
5929         * docs/pwg/other-manager.xml:
5930         * docs/pwg/other-source.xml:
5931           Typo fixes.
5932         * docs/pwg/other-manager.xml:
5933           Add some first content. No example code yet.
5934         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5935           Remove double newlines.
5936
5937 2004-11-04  Wim Taymans  <wim@fluendo.com>
5938
5939         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5940         (remove_from_group), (normalize_group), (group_migrate_connected),
5941         (gst_opt_scheduler_iterate):
5942         * testsuite/schedulers/.cvsignore:
5943         * testsuite/schedulers/Makefile.am:
5944         * testsuite/schedulers/queue_link.c: (main):
5945         Added testcase for scheduler segfault.
5946         Fix scheduler segfault when removing a decoupled
5947         entry point as the last element from a group.
5948
5949 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5950
5951         * gst/gstmarshal.list: add missing marshaller, fixes build
5952
5953 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5954
5955         * docs/random/signal: added notes about using BOXED for GstBuffer
5956         signal marshallers, not POINTER
5957
5958 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5959
5960         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5961         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
5962         POINTER=>BOXED changes to marshal GstBuffers
5963
5964 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5965
5966         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
5967         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
5968
5969 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
5970
5971         * docs/gst/gstreamer-sections.txt:
5972         * docs/gst/tmpl/gstcaps.sgml:
5973         * docs/gst/tmpl/gsterror.sgml:
5974         * docs/gst/tmpl/gstinfo.sgml:
5975         * docs/gst/tmpl/gstmacros.sgml:
5976         * docs/gst/tmpl/gstutils.sgml:
5977         * docs/random/ensonic/interfaces.txt:
5978         * gst/gstinfo.h:
5979           added some more docs, removed two obsolete defines
5980
5981 2004-11-02  Kjartan Maraas <as at gnome.org>
5982
5983         reviewed by: Wim Taymans, Ronald Bultje.
5984
5985         * gst/cothreads.c: (cothread_create):
5986         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
5987         (gst_bin_child_state_change_func):
5988         * gst/gstbuffer.c: (gst_buffer_span):
5989         * gst/gstelement.c: (gst_element_get_index),
5990         (gst_element_get_event_masks), (gst_element_get_query_types),
5991         (gst_element_get_formats):
5992         * gst/gsterror.c: (_gst_core_errors_init),
5993         (_gst_library_errors_init), (_gst_resource_errors_init),
5994         (_gst_stream_errors_init):
5995         * gst/gstobject.c: (gst_object_default_deep_notify):
5996         * gst/gstpad.c: (gst_pad_get_event_masks),
5997         (gst_pad_get_internal_links_default):
5998         * gst/gstplugin.c: (gst_plugin_register_func),
5999         (gst_plugin_get_module):
6000         * gst/gststructure.c: (gst_structure_get_string),
6001         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6002         (gst_structure_to_abbr):
6003         * gst/gstutils.c: (gst_print_element_args):
6004         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6005         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6006         Aplied part of patch #157127: Cleanup of issues reported by 
6007         sparse.
6008         Also do not try to use cothreads when there is no cothread
6009         context yet.
6010
6011 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6012
6013         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6014         (gst_opt_scheduler_iterate):
6015         Applied patch #154061. Running a pipeline in which an element 
6016         calls GST_ELEMENT_ERROR in the chain function, the opt 
6017         scheduler doesn't unref the chain so it never gets freed.
6018
6019 2004-11-02  Wim Taymans  <wim@fluendo.com>
6020
6021         * gst/gststructure.c: (gst_structure_get_abbrs),
6022         (gst_structure_from_abbr), (gst_structure_to_abbr):
6023         Remove that ugly if-then thing in the code that converts
6024         between strings and types.
6025
6026 2004-11-02  Wim Taymans  <wim@fluendo.com>
6027
6028         * gst/gstscheduler.c: (gst_scheduler_add_element),
6029         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6030         Aplied clock distribution patch, this should fix bug
6031         #148787.
6032
6033 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6034
6035         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6036
6037         * po/LINGUAS:
6038         * po/nb.po:
6039           Added Norwegian Bokmaal translation
6040
6041 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6042
6043         * tools/gst-inspect.c: (print_signal_info):
6044           print signal arguments as pointers if they are
6045
6046 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6047
6048         * docs/pwg/building-boiler.xml:
6049           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6050
6051 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6052
6053         * gst/parse/parse.l:
6054         * testsuite/parse/parse1.c: (main):
6055         Since parse can do 'element name=a:b' make 'a:b.' work as
6056         well. 
6057         Added testcase to verify fix.
6058
6059 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6060
6061         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6062         Use the realpad when printing the direction.
6063         Add extra \n when printing extensions of typefind factories.
6064
6065 2004-10-13  David Schleef  <ds@schleef.org>
6066
6067         * examples/manual/Makefile.am: $< isn't portable in Makefile
6068         rules.
6069
6070 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6071
6072         * docs/gst/tmpl/gstobject.sgml:
6073         * docs/gst/tmpl/gstplugin.sgml:
6074         * docs/gst/tmpl/gstpluginfeature.sgml:
6075         * docs/gst/tmpl/gstregistry.sgml:
6076         * docs/gst/tmpl/gstversion.sgml:
6077         * gst/gstbin.c:
6078           more api documentation
6079         * gst/gstplugin.c: (gst_plugin_register_func),
6080         (gst_plugin_check_file), (gst_plugin_load_file):
6081           better error signaling and logging
6082
6083 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6084
6085         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6086           Subtract current queue contents from position queries.
6087
6088 2004-10-11  Johan Dahlin  <johan@gnome.org>
6089
6090         * gst/gsturi.c (gst_uri_get_location): unescape string
6091         (gst_uri_construct): escape string.
6092
6093 2004-10-11  Benjamin Otte  <otte@gnome.org>
6094
6095         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6096         (gst_pad_try_set_caps_nonfixed):
6097           allow renegotiation of unconnected pads (as inside spider). Simply
6098           return OK if unconnected - mimic try_set_caps there.
6099
6100 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6101
6102         * gst/gstbin.c: (gst_bin_sync_children_state):
6103           Add missing break.
6104
6105 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6106
6107         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6108         Set element to EOS before sending EOS event
6109
6110 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6111
6112         * gst/elements/gsttypefindelement.c:
6113         (gst_type_find_element_handle_event):
6114         Handle EOS events when doing the transition from
6115         typefind to data passing. This should fix the
6116         infinite loops in short files.
6117
6118 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6119
6120         * gst/gstthread.c: (gst_thread_change_state),
6121         (gst_thread_child_state_change):
6122         Make sure no iteration happens while performing
6123         the state change as it could mess up the internal
6124         consistency of the thread state.
6125
6126 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6127
6128         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6129         (gst_thread_change_state), (gst_thread_child_state_change):
6130         Do not try to grab the iterate lock in the state change method
6131         when we are in the same thread as the iterate or else we
6132         could deadlock. Some other cleanups.
6133
6134 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6135
6136         * configure.ac:
6137           bump nano to cvs
6138
6139 === release 0.8.7 ===
6140
6141 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6142
6143         * configure.ac:
6144         * NEWS:
6145         * RELEASE:
6146         * configure.ac:
6147           releasing 0.8.7, "A Cruise"
6148
6149 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6150
6151         * docs/random/mimetypes:
6152         Add an entry for Sony ATRAC3 audio format with mime-type
6153         used by rmdemux et riff-read
6154
6155 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6156
6157         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6158         Push the buffer store instead of clearing it in case that
6159         the stream is not seekable.
6160
6161 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6162
6163         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6164         (gst_thread_main_loop):
6165         Lock the iteration and the state change so that automatic
6166         negotiation and fixation does not happen at the same time
6167         as the in stream negotiation.
6168
6169 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6170
6171         * configure.ac:
6172           bump nano to cvs
6173
6174 === release 0.8.6 ===
6175
6176 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6177
6178         * configure.ac:
6179         * NEWS:
6180         * RELEASE:
6181         * configure.ac:
6182           releasing 0.8.6, "Narc"
6183
6184 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6185
6186         * configure.ac:
6187           prerel bump
6188
6189 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6190
6191         patch by: Steve Lhomme
6192
6193         * gst/elements/gstfakesrc.c:
6194         * gst/elements/gstidentity.c:
6195         * gst/gstthread.c:
6196           Fix for #153881
6197
6198 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6199
6200         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6201         Fix threadsafety of the crc checking function.
6202
6203 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6204
6205         patch by: Ronald Bultje
6206
6207         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6208         (gst_type_find_element_handle_event),
6209         (gst_type_find_element_chain):
6210         * gst/elements/gsttypefindelement.h:
6211          #153657.
6212          Filter out discont event from seekable sources when typefind
6213          asks them to seek.  Fixes typefind with demuxers for
6214          avi, asf and matroska.
6215
6216 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6217
6218         * docs/gst/gstreamer-sections.txt:
6219         * gst/gstcaps.c:
6220         * gst/gstcaps.h:
6221         * gst/gstpad.c:
6222           Revert preferred caps: (#147789)
6223
6224 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6225
6226         * win32/dirent.c:
6227           fix a memory leak
6228
6229 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6230
6231         * configure.ac:
6232           bump for prerelease
6233
6234 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6235
6236         * docs/Makefile.am:
6237         * docs/manual/elements-api.xml:
6238           restructure so that common stuff is shown first
6239         * docs/manual/init-api.xml:
6240           convert to examples
6241         * docs/manual/manual.xml:
6242         * docs/manuals.mak:
6243         * docs/url.entities:
6244           link to API on the website, possibly override later in build
6245         * examples/manual/.cvsignore:
6246           ignore more
6247         * examples/manual/Makefile.am:
6248           add more examples
6249         * examples/manual/extract.pl:
6250           error out on failure
6251
6252 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6253
6254         * docs/gst/tmpl/gstthread.sgml:
6255         * docs/manual/init-api.xml:
6256         * examples/manual/Makefile.am:
6257           convert two code bits to examples
6258
6259 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6260
6261         * gst/gstelement.c: (gst_element_change_state):
6262           Well, actually, I was about to remove this insane assert when
6263           I noticed Wim already did that. A warning is nice so we can
6264           fix actual ugs (using --g-fatal-warnings and backtraces), so
6265           I added that instead.
6266
6267 2004-09-06  Wim Taymans  <wim@fluendo.com>
6268
6269         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6270         (gst_element_threadsafe_properties_post_run),
6271         (gst_element_set_state), (gst_element_change_state):
6272         Added extra refcounting around various places. 
6273
6274 2004-09-06  Wim Taymans  <wim@fluendo.com>
6275
6276         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6277         Fix debug info.
6278
6279 2004-09-06  Wim Taymans  <wim@fluendo.com>
6280
6281         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6282         (remove_from_group):
6283         Some more debug info.
6284
6285 2004-09-03  Wim Taymans  <wim@fluendo.com>
6286
6287         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6288         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6289         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6290         (gst_fakesrc_get), (gst_fakesrc_change_state):
6291         * gst/elements/gstfakesrc.h:
6292         * gst/elements/gstidentity.c: (gst_identity_class_init),
6293         (gst_identity_init), (gst_identity_chain),
6294         (gst_identity_set_property), (gst_identity_get_property),
6295         (gst_identity_change_state):
6296         * gst/elements/gstidentity.h:
6297         Added datarate properties to limit the datarate.
6298
6299 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6300
6301         * gst/autoplug/gstspider.c: (plugin_init):
6302           don't set a rank. We don't want to autoplug by inserting spiders.
6303
6304 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6305
6306         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6307         (gst_spider_identity_plug):
6308           add a template for spider's sink
6309         * gst/gst.c: (gst_register_core_elements):
6310           queue's rank should be NULL, we don't want spider to add it.
6311
6312 2004-08-18  David Schleef  <ds@schleef.org>
6313
6314         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6315         * docs/libs/Makefile.am: same
6316         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6317         * docs/random/ds/0.9-planning: random additions
6318         * docs/random/ds/0.9-suggested-changes: same
6319         * gst/gstxml.h: remove vestigal GstXMLNs definition
6320
6321         Preferred caps: (#147789)
6322         * docs/gst/gstreamer-sections.txt: Add symbols
6323         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6324         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6325         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6326         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6327         (gst_caps_get_preferred), (gst_caps_set_preferred),
6328         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6329         (gst_caps_use_preferred): Handle caps preferences
6330         * gst/gstcaps.h: Add caps preferences
6331         * gst/gstpad.c: (gst_pad_link_get_preferred),
6332         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6333         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6334         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6335         negotiation.
6336
6337 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6338
6339         * gst/autoplug/gstspideridentity.c:
6340         (gst_spider_identity_request_new_pad):
6341         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6342         (gst_aggregator_init):
6343         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6344         (gst_fakesink_init):
6345         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6346         (gst_fakesrc_init):
6347         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6348         (gst_fdsink_init):
6349         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6350         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6351         (gst_filesink_init):
6352         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6353         (gst_filesrc_init):
6354         * gst/elements/gstidentity.c: (gst_identity_base_init),
6355         (gst_identity_init):
6356         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6357         (gst_multifilesrc_init):
6358         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6359         (gst_pipefilter_init):
6360         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6361         (gst_statistics_init):
6362         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6363         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6364           s/gst_pad_new/&_from_template/
6365           register pad templates in the base_init function
6366           add static pad template definitions
6367
6368 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6369
6370         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6371         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6372         * testsuite/refcounting/pad.c: (main):
6373         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6374           s/gst_pad_new/&_from_template/
6375           prepare deprecation of gst_pad_new
6376
6377 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6378
6379         patch by: Luca Ognibene <skaboy81@virgilio.it>
6380
6381         * gst/gstcaps.c:
6382         * gst/gstelement.c:
6383         * gst/gstpad.c:
6384         * gst/gstxml.c:
6385           fix memleaks.  Fixes #150001
6386
6387 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6388
6389         * docs/random/ds/0.9-suggested-changes:
6390           add notes - mostly about pad templates
6391
6392 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6393
6394         * win32/GStreamer.vcproj:
6395           temporary locale files are .gmo not .mo
6396
6397 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6398
6399         * configure.ac: bump nano to cvs
6400
6401 === release 0.8.5 ===
6402
6403 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6404
6405         * configure.ac:
6406           releasing 0.8.5, "Stuttgart"
6407         * NEWS:
6408         * RELEASE:
6409         * configure.ac:
6410         * docs/random/release:
6411           updates for release
6412
6413 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6414
6415         patch by: Wim Taymans (wim@fluendo.com)
6416
6417         * gst/gstbuffer.c:
6418         * gst/gstindex.h:
6419         * libs/gst/dataprotocol/dataprotocol.c:
6420           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6421
6422 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6423
6424         * Makefile.am:
6425         * win32/MANIFEST:
6426           add win32 dir to the build.  Fixes #149981.
6427
6428 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6429
6430         * configure.ac:
6431           bump libtool versioning
6432         * gst/gststructure.c:
6433           mark function as static
6434         * po/af.po:
6435         * po/az.po:
6436         * po/ca.po:
6437         * po/cs.po:
6438         * po/en_GB.po:
6439         * po/fr.po:
6440         * po/nl.po:
6441         * po/sq.po:
6442         * po/sr.po:
6443         * po/sv.po:
6444         * po/tr.po:
6445         * po/uk.po:
6446           translations update
6447         * win32/README.txt:
6448           trademark protection
6449
6450 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6451
6452         * configure.ac:
6453           fix GST_ORIGIN
6454           set GST_PACKAGE to source, and distinguish between release and other
6455         * tools/gst-inspect.c:
6456           print out plugin an element factory is part of so we see this info
6457
6458 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6459
6460         * docs/gst/gstreamer-sections.txt:
6461         * docs/gst/tmpl/gstbuffer.sgml:
6462         * docs/gst/tmpl/gstschedulerfactory.sgml:
6463           reorder docs a little, make GstBuffer's more sensible.
6464         * gst/gstbuffer.h:
6465           API: added GST_BUFFER_FLAG_DELTA_UNIT
6466         * gst/gstscheduler.c:
6467           comment API addition
6468
6469 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6470
6471         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6472           work with non-regular files that can be mmapped (like /dev/zero)
6473         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6474           get rid of typefinds that require a seek when we can't seek instead
6475           of trying them over and over again
6476         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6477           return non-zero failure value when the pipeline was interrupted or
6478           an error occurred
6479
6480 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6481
6482         * win32/config.h:
6483         * win32/GStreamer.vcproj:
6484           compile and install the locales
6485
6486 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6487
6488         * gst/gstvalue.c:
6489           fix a possible memory leak under Windows
6490
6491 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6492
6493         * win32/GStreamer.vcproj:
6494           fix a memory leak that occured under Windows
6495         * win32/gstreamer.def:
6496           add gst_scheduler_register
6497
6498 2004-08-11  Benjamin Otte  <otte@gnome.org>
6499
6500         * docs/gst/gstreamer-sections.txt:
6501         * gst/gstscheduler.c: (gst_scheduler_register):
6502         * gst/gstscheduler.h:
6503           API:
6504           add gst_scheduler_register shortcut similar to gst_element_register
6505         * gst/schedulers/entryscheduler.c: (plugin_init):
6506         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6507         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6508           use it
6509
6510 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6511
6512         * gst/gstvalue.h:
6513           fix a memory leak that occured under Windows
6514
6515 2004-08-10  Colin Walters  <walters@redhat.com>
6516
6517         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6518         Don't use O_EXCL to open temporary registry.  It will prevent
6519         registry creation if a temporary one already exists, which
6520         is unnecessary.
6521
6522 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6523
6524         * docs/gst/gstreamer-sections.txt:
6525         * docs/gst/tmpl/gstvalue.sgml:
6526           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6527
6528 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6529
6530         * win32/gstbytestream.vcproj:
6531         * win32/gstelements.vcproj:
6532         * win32/gstgetbits.vcproj:
6533         * win32/gst-inspect.vcproj:
6534         * win32/gst-launch.vcproj:
6535         * win32/gstoptimalscheduler.vcproj:
6536         * win32/GStreamer.vcproj:
6537         * win32/gst-register.vcproj:
6538         * win32/gstspider.vcproj:
6539           update the include and lib dirs to fit standard libraries as
6540           described in the Win32 manual
6541
6542 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6543
6544         * win32/config.h:
6545         * win32/gstversion.h:
6546           enable NLS again, push the version number for the coming 0.8.5 release
6547
6548 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6549
6550         * gst/gstvalue.h:
6551           export gst_type_XXX for windows DLLs
6552
6553 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6554
6555         * docs/faq/gst-uninstalled:
6556           fix PKG_CONFIG_PATH and PYTHONPATH
6557         * gst/schedulers/Makefile.am:
6558           cleanup
6559         * libs/gst/bytestream/bytestream.c:
6560           remove newline
6561         * po/LINGUAS:
6562         * po/sq.po:
6563           adding Albanian translation (Laurent Dhima)
6564         * po/cs.po:
6565           updated
6566
6567 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6568
6569         * po/ca.po:
6570         * po/sv.po:
6571           updated translations
6572
6573 2004-08-04  Benjamin Otte  <otte@gnome.org>
6574
6575         * tests/mass_elements.c: (main):
6576           allow specifying src and sink element explicitly, so I can test
6577           videotestsrc instead of fakesrc
6578
6579 2004-08-04  Benjamin Otte  <otte@gnome.org>
6580
6581         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6582         (gst_structure_id_empty_new), (gst_structure_empty_new),
6583         (gst_structure_copy):
6584           add gst_structure_id_empty_new_with_size to allow preallocating
6585           value array sizes. Use this in gst_structure_copy to get rid of
6586           reallocs.
6587           don't do quark=>string=>quark when copying structures
6588
6589 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6590
6591         * docs/manual/win32.xml:
6592         * win32/README.txt:
6593           update documentation with the clean version of dependencies
6594
6595 2004-08-03  Benjamin Otte  <otte@gnome.org>
6596
6597         * gst/schedulers/entryscheduler.c:
6598         (gst_entry_scheduler_remove_element):
6599           fix for GST_DISABLE_DEBUG
6600         * tools/gst-launch.c: (print_tag):
6601           fixes for G_DISABLE_ASSERT
6602
6603 2004-08-03  Benjamin Otte  <otte@gnome.org>
6604
6605         * gst/gst.c: (gst_register_core_elements):
6606           fix for G_DISABLE_ASSERT
6607         * gst/gstinfo.c: (__gst_in_valgrind):
6608           add for GST_DISABLE_DEBUG
6609
6610 2004-08-03  Benjamin Otte  <otte@gnome.org>
6611
6612         * gst/parse/parse.l:
6613           fix for G_DISABLE_ASSERT
6614
6615 2004-08-03  Wim Taymans  <wim@fluendo.com>
6616
6617         * gst/gstbin.c: (gst_bin_get_type),
6618         (gst_bin_child_state_change_func):
6619         * gst/gstthread.c: (gst_thread_change_state):
6620         Backported some debug logging from a reverted patch
6621         Don't try to destroy the thread twice. Added some more
6622         debugging in GstThread. Unlock and signal even if we
6623         are in the thread context.
6624
6625 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6626
6627         * po/uk.po:
6628           updated translation
6629
6630 2004-07-30  David Schleef  <ds@schleef.org>
6631
6632         * gst/gstatomic_impl.h: Enable atomic code for x86_64
6633
6634 2004-07-29  David Schleef  <ds@schleef.org>
6635
6636         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
6637         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
6638
6639 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6640
6641         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6642         (gst_bin_add_func), (gst_bin_remove_func),
6643         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
6644         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
6645         (gst_bin_change_state_norecurse), (gst_bin_dispose),
6646         (gst_bin_sync_children_state):
6647         * gst/gstbin.h:
6648         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
6649         (gst_thread_change_state):
6650         * testsuite/states/Makefile.am:
6651           revert state change patches as agreed so we can rework them
6652           gradually
6653
6654 2004-07-29  Benjamin Otte  <otte@gnome.org>
6655
6656         * libs/gst/control/Makefile.am:
6657           link to libgstreamer (fixes Debian bug 262019, see
6658           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
6659
6660 2004-07-29  Wim Taymans  <wim@fluendo.com>
6661
6662         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6663         (check_from_fraction_convert), (transform_test), (main):
6664         Make the test less pedantic about float roundoff errors.
6665
6666 2004-07-29  Benjamin Otte  <otte@gnome.org>
6667
6668         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
6669         (gst_filesrc_srcpad_event):
6670           make seek events to before start/after end of file not fail, but
6671           seek to start/end instead
6672         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
6673           add more output
6674
6675 2004-07-29  Benjamin Otte  <otte@gnome.org>
6676
6677         * gst/gstpad.c: (gst_pad_set_explicit_caps):
6678           check that caps are fixed
6679         * gst/gstpad.c: (gst_pad_template_new):
6680           don't try to simplify caps, costs too much time on gst_init
6681         * gst/gstplugin.c: (gst_plugin_add_feature):
6682           G_ERROR if features are added twice
6683         * gst/gsttypefind.c: (gst_type_find_register):
6684         * gst/gstelementfactory.c: (gst_element_register):
6685           don't add features twice
6686         * docs/random/ds/0.9-suggested-changes:
6687           add note about possible gst_init optimization
6688
6689 2004-07-28  David Schleef  <ds@schleef.org>
6690
6691         * testsuite/elements/Makefile.am:
6692         * testsuite/elements/struct_i386.h:
6693         * testsuite/elements/struct_size.c: (main):  A little test
6694         to keep distcheck from working if someone changes a structure
6695         size accidentally.
6696
6697 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6698
6699         * docs/libs/Makefile.am:
6700         * docs/libs/gstreamer-libs-docs.sgml:
6701         * docs/libs/gstreamer-libs-sections.txt:
6702         * docs/libs/tmpl/gstbytestream.sgml:
6703         * docs/libs/tmpl/gstcontrol.sgml:
6704         * docs/libs/tmpl/gstdataprotocol.sgml:
6705         * docs/libs/tmpl/gstgetbits.sgml:
6706         * libs/gst/bytestream/Makefile.am:
6707         * libs/gst/bytestream/bytestream.c:
6708         * libs/gst/bytestream/bytestream.h:
6709         * libs/gst/control/Makefile.am:
6710         * libs/gst/dataprotocol/Makefile.am:
6711         * libs/gst/getbits/Makefile.am:
6712         * libs/gst/getbits/getbits.h:
6713           various doc and style fixes, adding bytestream to libs docs.
6714
6715 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6716
6717         * docs/gst/gstreamer-docs.sgml:
6718         * docs/libs/Makefile.am:
6719         * docs/libs/gstreamer-libs-docs.sgml:
6720         * docs/libs/gstreamer-libs-sections.txt:
6721         * libs/gst/control/dparam.c:
6722           more doc fixes.  gst-libs docs now build the same way as gst.
6723
6724 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6725
6726         * configure.ac:
6727         * testsuite/Makefile.am:
6728         * testsuite/bins/Makefile.am:
6729         * testsuite/caps/Makefile.am:
6730         * testsuite/cleanup/Makefile.am:
6731         * testsuite/clock/Makefile.am:
6732         * testsuite/debug/Makefile.am:
6733         * testsuite/dlopen/Makefile.am:
6734         * testsuite/dynparams/Makefile.am:
6735         * testsuite/elements/.cvsignore:
6736         * testsuite/elements/Makefile.am:
6737         * testsuite/enumcaps/Makefile.am:
6738         * testsuite/enumcaps/enumcaps.c:
6739         * testsuite/ghostpads/Makefile.am:
6740         * testsuite/indexers/Makefile.am:
6741         * testsuite/negotiation/Makefile.am:
6742         * testsuite/parse/Makefile.am:
6743         * testsuite/plugin/Makefile.am:
6744         * testsuite/refcounting/Makefile.am:
6745         * testsuite/schedulers/.cvsignore:
6746         * testsuite/states/Makefile.am:
6747         * testsuite/tags/Makefile.am:
6748         * testsuite/threads/Makefile.am:
6749           fold enumcaps into caps dir
6750           clean up Makefile.am's for testsuite
6751
6752 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6753
6754         * docs/gst/Makefile.am:
6755         * docs/libs/Makefile.am:
6756           clean up docs build.  Fixes needless rebuilding of template files.
6757
6758 2004-07-28  Wim Taymans  <wim@fluendo.com>
6759
6760         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
6761         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
6762         Make sure that a bin state change tries to keep the children
6763         in sync. 
6764         Added debug logging to the thread.
6765
6766 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6767
6768         * win32/GStreamer.vcproj:
6769         * win32/gstreamer.def:
6770           more exports for the plugins
6771
6772 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6773
6774         * win32/gstgetbits.vcproj:
6775         * win32/gstgetbits.def:
6776         * win32/msvc71.sln:
6777           add support for the getbits plugin
6778
6779 2004-07-27  Wim Taymans  <wim@fluendo.com>
6780
6781         * gst/gstvalue.c: (gst_value_transform_double_fraction),
6782         (gst_value_transform_fraction_double), (_gst_value_initialize):
6783         * testsuite/caps/Makefile.am:
6784         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6785         (check_from_fraction_convert), (transform_test), (main):
6786         Added transform functions between double and fraction.
6787         Added testcase to verify transforms
6788
6789 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6790
6791         * win32/GStreamer.vcproj:
6792           rename GStreamer-0.8.lib to libgstreamer.lib
6793
6794 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6795
6796         * win32/gstelements.vcproj:
6797         * win32/gstoptimalscheduler.vcproj:
6798           fixes for the Release build
6799
6800 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6801
6802         * win32/config.h:
6803           update the version number
6804
6805 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6806
6807         * win32/GStreamer.vcproj:
6808           add gstinterface to the build
6809
6810 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6811
6812         * win32/gstreamer.def:
6813           add many definitions needed by plugins,
6814           GST_CAT_DEFAULT only available in the Debug build ?
6815
6816 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6817
6818         * gst/gstelement.c: (gst_element_set_eos_recursive):
6819           various whitespace fixes.
6820           doc fix, fixes #148497
6821
6822 2004-07-25  Benjamin Otte  <otte@gnome.org>
6823
6824         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
6825           don't delay links on the sink elements, it causes unnegotiated
6826           links.
6827         * gst/elements/gsttypefindelement.c:
6828         (gst_type_find_element_base_init):
6829           add our padtemplates, we indeed do have some.
6830         * gst/elements/gsttypefindelement.c:
6831         (gst_type_find_element_handle_event),
6832         (gst_type_find_element_chain):
6833           don't push data when typefinding failed.
6834         * gst/gstpad.c: (gst_pad_link_fixate):
6835           check that no fixate function returns empty caps.
6836         * gst/gstpad.c: (gst_pad_push):
6837           check that the link is negotiated before data gets pushed.
6838         * tools/gst-register.c: (main):
6839           don't assert (fixes #148283)
6840
6841 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6842
6843         * docs/gst/gstreamer-sections.txt:
6844         * docs/gst/tmpl/gstconfig.sgml:
6845           add GST_PLUGIN_EXPORT definition
6846
6847 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6848
6849         * gst/gstplugin.h:
6850         * gst/gstconfig.h.in:
6851         * win32/gstconfig.h:
6852         * win32/gstelements.def:
6853         * win32/gstelements.vcproj:
6854         * win32/gstoptimalscheduler.def:
6855         * win32/gstoptimalscheduler.vcproj:
6856         * win32/gstspider.def:
6857         * win32/gstspider.vcproj:
6858           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
6859
6860 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6861
6862         * docs/gst/gstreamer-sections.txt:
6863           remove GST_CAT_DEFAULT because the type has changed
6864
6865 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6866
6867         * win32/gstbytestream.vcproj:
6868         * win32/gstelements.vcproj:
6869         * win32/gst-inspect.vcproj:
6870         * win32/gst-launch.vcproj:
6871         * win32/gstoptimalscheduler.vcproj:
6872         * win32/GStreamer.vcproj:
6873         * win32/gst-register.vcproj:
6874         * win32/gstspider.vcproj:
6875         * win32/msvc71.sln:
6876           Copy the files where needed after building, The testsuite will be
6877           built separately
6878
6879 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6880
6881         * win32/config.h:
6882         * win32/README.txt:
6883         * docs/manual/win32.xml:
6884         Fixed the plugin and GStreamer location
6885
6886 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6887
6888         * win32/gstreamer.def:
6889         More exports for the plugins
6890
6891 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6892
6893         * gst/gstinfo.h:
6894         Marc was right, we need to export literally GST_CAT_DEFAULT
6895
6896 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6897
6898         * win32/config.h:
6899         NLS crashes in gettext, disabled until this is solved
6900
6901 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6902
6903         * win32/gst-inspect.vcproj:
6904         * win32/gst-launch.vcproj:
6905         Should use NLS when available
6906
6907 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6908
6909         * gst/registries/gstxmlregistry.c:
6910         removing the file doesn't seem to be a good idea on Linux
6911
6912 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6913
6914         * gst/registries/gstxmlregistry.c:
6915         Remove the registry before renaming the tempfile (needed for Windows)
6916
6917 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6918
6919         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
6920         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
6921         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
6922         * gst/elements/gstmultifilesrc.h:
6923         Added newmedia property so it generates newmedia events between each
6924         file when property is set, as well as fixed eos handling
6925
6926 2004-07-22  David Schleef  <ds@schleef.org>
6927
6928         * gst/gststructure.c: (gst_structure_id_empty_new),
6929         (gst_structure_empty_new):  Set type field correctly.
6930         * gst/gststructure.h: Check type field correctly.
6931         * testsuite/caps/Makefile.am:
6932         * testsuite/caps/structure.c: (test1), (main): Add a very small
6933         test for structures.
6934
6935 2004-07-22  David Schleef  <ds@schleef.org>
6936
6937         * docs/random/ds/0.9-suggested-changes: more comments
6938         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
6939
6940 2004-07-22  Benjamin Otte  <otte@gnome.org>
6941
6942         * gst/gstelementfactory.c: (gst_element_register):
6943           set the factory in the class struct, so gst_element_get_factory
6944           actually works
6945         * gst/parse/grammar.y:
6946           set element to playing when it gets unlocked as we can't rely on the
6947           bin state - all elements in the bin state might still be locked in
6948           NULL)
6949
6950 2004-07-22  Benjamin Otte  <otte@gnome.org>
6951
6952         * gst/gstelement.c: (gst_element_set_state_func):
6953           make this a static function
6954
6955 2004-07-22  Wim Taymans  <wim@fluendo.com>
6956
6957         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6958         (gst_opt_scheduler_pad_link):
6959         fix 147894-2 and the group_link problem.
6960
6961 2004-07-22  Wim Taymans  <wim@fluendo.com>
6962
6963         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6964         (handoff_identity), (main):
6965         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6966         (handoff_identity), (main):
6967         * testsuite/schedulers/Makefile.am:
6968         * testsuite/schedulers/group_link.c: (main):
6969         Show bug in scheduler when linking chain and loop based element 
6970         where the chain based element was not yet in a group.
6971
6972 2004-07-21  Benjamin Otte  <otte@gnome.org>
6973
6974         * gst/.cvsignore:
6975         * gst/autoplug/.cvsignore:
6976         * gst/elements/.cvsignore:
6977         * gst/indexers/.cvsignore:
6978         * libs/gst/bytestream/.cvsignore:
6979         * libs/gst/control/.cvsignore:
6980         * libs/gst/getbits/.cvsignore:
6981         * testsuite/states/.cvsignore:
6982         * testsuite/threads/.cvsignore:
6983           keep this up to date, since I seem to be the only one who cares
6984           about not missing files on commits (editor's note: no you don't,
6985           but feel free to change them at the time you add stuff instead
6986           of later on)
6987
6988 2004-07-21  Benjamin Otte  <otte@gnome.org>
6989
6990         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6991         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
6992         (gst_bin_child_state_change_func), (set_kid_state_func),
6993         (gst_bin_set_state), (gst_bin_change_state_norecurse):
6994           make state changes work correctly and reentrant (so removing
6995           elements from bins during state changes of bins doesn't cause
6996           segfaults or even wrong states)
6997           add debugging category and debugging output to print children states
6998         * gst/gstbin.c: (gst_bin_dispose): 
6999           add some assertion checks
7000         * gst/gstbin.h:
7001         * gst/gstbin.c: (gst_bin_sync_children_state):
7002           deprecate this function - it just does gst_bin_set_state (bin,
7003           GST_STATE (bin)) 
7004         * testsuite/threads/queue.c: (main):
7005           don't use gst_bin_sync_children_state anymore
7006         * testsuite/states/Makefile.am:
7007         * testsuite/states/bin.c:
7008           test that the state changes of bins work as expected
7009         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7010           some adjustments to change states correctly, too
7011         * gst/gstthread.c: (gst_thread_change_state):
7012           don't enable/disable "threadsafe" properties, they're unused and
7013           cause random segfaults
7014         * testsuite/threads/Makefile.am:
7015           the queue check randomly passes now, ignore it
7016
7017 2004-07-21  Benjamin Otte  <otte@gnome.org>
7018
7019         * gst/gstpad.c:
7020           check if data is NULL before outputting debug info. (fixes #145100)
7021
7022 2004-07-21  Benjamin Otte  <otte@gnome.org>
7023
7024         * gst/schedulers/entryscheduler.c:
7025         (gst_entry_scheduler_loop_wrapper),
7026         (gst_entry_scheduler_chain_wrapper),
7027         (gst_entry_scheduler_get_wrapper):
7028           reset the state when the cothread starts, so we don't get assertion
7029           failures on restarting of cothreads
7030
7031 2004-07-20  Benjamin Otte  <otte@gnome.org>
7032
7033         * gst/gstelement.c: (gst_element_link_pads_filtered):
7034           use correct sinkpad, if only sinkpad is specified, but not srcpad
7035           (fixes #147889)
7036         * gst/gstelement.c: (gst_element_set_state_func),
7037         (gst_element_change_state): ref/unref the element, signal handlers
7038         could get rid of the element otherwise
7039
7040 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7041
7042         * docs/random/ds/0.9-suggested-changes:
7043           Make note about renaming fixed-list to array.
7044         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7045         (_gst_value_initialize):
7046           Add array intersections.
7047         * testsuite/caps/intersect2.c: (main):
7048           Add test for array intersections.
7049
7050 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7051
7052         * configure.ac: back to cvs
7053
7054 === release 0.8.4 ===
7055
7056 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7057
7058         * configure.ac:
7059           releasing 0.8.4, "Paella"
7060           bump libtool versioning
7061
7062 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7063
7064         * po/LINGUAS:
7065         * po/ca.po:
7066           adding Catalan translation (Jordi Mallach)
7067
7068 2004-07-20  Wim Taymans  <wim@fluendo.com>
7069
7070         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7071         (handoff_identity), (main):
7072         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7073         (handoff_identity), (main):
7074         * testsuite/schedulers/Makefile.am:
7075         Added failing testcase for variant of #147894
7076
7077 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7078
7079         patch by: David Moore
7080
7081         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7082         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7083         (group_migrate_connected):
7084         * testsuite/schedulers/Makefile.am:
7085           fix for #142813 (Deadlock in optimal scheduler)
7086
7087 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7088
7089         patch by: Wim Taymans
7090
7091         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7092         (gst_opt_scheduler_schedule_run_queue),
7093         (gst_opt_scheduler_get_wrapper), (get_group),
7094         (group_migrate_connected):
7095         * testsuite/schedulers/Makefile.am:
7096           fix for #147819 (Add some checks in the opt scheduler)
7097
7098 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7099
7100         patch by: Benjamin Otte
7101
7102         * gst/gstelementfactory.c: (__gst_element_details_set):
7103           fix for #147929: running gst-register in non-utf8 locale can cause
7104           invalid registry
7105
7106 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7107
7108         patch by: Wim Taymans
7109
7110         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7111         (group_has_element), (element_get_reachables_func),
7112         (group_migrate_connected):
7113           fix for #147894 (opt scheduler decoupled elements mismanagement)
7114         * testsuite/schedulers/Makefile.am:
7115           testsuite app now passes
7116
7117 2004-07-19  Wim Taymans  <wim@fluendo.com>
7118
7119         * testsuite/schedulers/147819.c: (handoff_identity1),
7120         (handoff_identity2), (main):
7121         * testsuite/schedulers/Makefile.am:
7122         Added testcase for bug 147819
7123
7124 2004-07-19  Wim Taymans  <wim@fluendo.com>
7125
7126         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7127         (handoff_identity), (main):
7128         * testsuite/schedulers/Makefile.am:
7129         Added testcase for bug 147894
7130
7131 2004-07-16  Wim Taymans  <wim@fluendo.com>
7132
7133         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7134         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7135         * testsuite/schedulers/Makefile.am:
7136         Added testsuite for bug 142183 in its two incarnations. Refcount
7137         is not increased for scheduled elements and threadsafe properties
7138         mutexes are not properly unlocked.
7139
7140 2004-07-16  Wim Taymans  <wim@fluendo.com>
7141
7142         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7143         (create_chain), (destroy_chain), (create_group), (destroy_group),
7144         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7145         (group_dec_link), (gst_opt_scheduler_pad_link),
7146         (group_inc_links_for_element), (group_migrate_connected):
7147         Call group_inc_link with the proper src->sink ordering -- 
7148         break this, and we break sort_chain. patch from wingo for bug
7149         147713.
7150         Partially revert patch 1.89. When adding a loop based element to 
7151         the scheduler, the links to other groups are automatically followed
7152         and incremented. This should not happen because the bin will call
7153         pad_link explicitly for those connection, resulting in them counted 
7154         twice. Results in assertion failure on pipeline cleanup.
7155
7156 2004-07-16  Wim Taymans  <wim@fluendo.com>
7157
7158         * testsuite/schedulers/143777-2.c: (main):
7159         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7160         (main):
7161         * testsuite/schedulers/Makefile.am:
7162         Added cleanup code to testcase 143777-2.
7163         Added testcase to show bug 147713, does not really show the
7164         deadlock as I can't figure out how to trigger it, but it does
7165         demonstrate bad ordering in the scheduler.
7166
7167 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7168
7169         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7170           change strndup to g_strndup.  Fixes #147707
7171
7172 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7173
7174         * po/af.po:
7175         * po/az.po:
7176         * po/cs.po:
7177         * po/en_GB.po:
7178         * po/fr.po:
7179         * po/nl.po:
7180         * po/sr.po:
7181         * po/sv.po:
7182         * po/tr.po:
7183         * po/uk.po:
7184           updated translations
7185
7186 2004-07-16  Benjamin Otte  <otte@gnome.org>
7187
7188         * gst/gstvalue.c: (gst_greatest_common_divisor):
7189           use ints and return ints, fractions only use ints, too, so this
7190           avoids accidently casting multiplications to unsigned
7191         (gst_value_lcopy_fraction): it's ints, not uint32
7192         (gst_value_set_fraction): disallow minint, multiplying and negation
7193           are broken with it
7194         (gst_value_fraction_multiply): fix to make large numbers work and get
7195         rid of the assumption that the multiplication of two ints fits an
7196         int64 - dunno if that's true for all systems
7197         * testsuite/caps/Makefile.am:
7198         * testsuite/caps/fraction-multiply-and-zero.c:
7199         (check_multiplication), (check_equal), (zero_test), (main):
7200           add tests for all the stuff above
7201         * testsuite/caps/value_compare.c: (test1):
7202           fix comment
7203         * tests/.cvsignore:
7204         * testsuite/caps/.cvsignore:
7205         * testsuite/debug/.cvsignore:
7206         * testsuite/dlopen/.cvsignore:
7207         * testsuite/states/.cvsignore:
7208           get up to date
7209
7210 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7211
7212         * docs/manual/bins-api.xml:
7213         * docs/manual/factories.xml:
7214         * docs/manual/helloworld.xml:
7215         * docs/manual/links-api.xml: 
7216           fixes for out of date info, incorrect info and grammar
7217
7218 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7219
7220         * docs/manual/pads.xml:
7221         * docs/manual/pads-api.xml: grammar fix
7222
7223 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7224
7225         * docs/manual/pads-api.xml: typo + grammar fix
7226
7227 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7228
7229         * docs/gst/gstreamer-sections.txt:
7230           add new symbols
7231         * docs/gst/tmpl/gstelement.sgml:
7232         * docs/gst/tmpl/gstpad.sgml:
7233         * docs/gst/tmpl/gsttypes.sgml:
7234         * docs/gst/tmpl/gstvalue.sgml:
7235           update docs
7236         * gst/gststructure.c: (gst_structure_set_valist),
7237         (gst_structure_from_abbr), (gst_structure_to_abbr):
7238         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7239         (gst_greatest_common_divisor), (gst_value_init_fraction),
7240         (gst_value_copy_fraction), (gst_value_collect_fraction),
7241         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7242         (gst_value_get_fraction_numerator),
7243         (gst_value_get_fraction_denominator),
7244         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7245         (gst_value_deserialize_fraction),
7246         (gst_value_transform_fraction_string),
7247         (gst_value_transform_string_fraction),
7248         (gst_value_compare_fraction), (_gst_value_initialize):
7249         * gst/gstvalue.h:
7250           adding GstFraction GValue type, get/set, and multiply
7251         * testsuite/caps/Makefile.am:
7252         * testsuite/caps/fraction.c: (test), (main):
7253         * testsuite/caps/string-conversions.c: (main):
7254         * testsuite/caps/value_compare.c: (test1), (main):
7255           add regression tests for GstFraction
7256
7257 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7258         
7259         * docs/manual/init-api.xml: Grammar fix
7260
7261 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7262
7263         * docs/manual/states.xml: Fix inconsistent information
7264
7265 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7266
7267         * gst/gstelement.c: (gst_element_set_state):
7268         * gst/gstpad.c: (gst_pad_try_set_caps):
7269         * gst/gststructure.c:
7270         * gst/gstthread.c: (gst_thread_child_state_change):
7271         * gst/gstvalue.c: (gst_value_compare_double):
7272         * gst/gstvalue.h:
7273         * testsuite/parse/parse1.c: (main):
7274           debugging additions and style cleanups
7275
7276 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7277
7278         * docs/manual/states.xml: Grammar fix
7279
7280 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7281
7282         * docs/manual/pads.xml: Grammar fix
7283
7284 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7285
7286         * docs/manual/elements.xml: Fixed image reference
7287
7288 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7289
7290         * docs/manual/goals.xml: Grammar fix
7291
7292 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7293
7294         * docs/manual/motivation.xml:
7295         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7296
7297 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7298
7299         * docs/manual/motivation.xml: Fix spelling
7300
7301 2004-07-15  Benjamin Otte  <otte@gnome.org>
7302
7303         * gst/gstelement.h: 
7304           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7305           strings.
7306         * gst/gstelement.c (gst_element_class_init):
7307           GError's are boxed, not objects
7308         * gst/gstmarshal.list:
7309           update list for the fixed error signal
7310
7311 2004-07-14  Andy Wingo  <wingo@pobox.com>
7312
7313         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7314         there all along, but the function wasn't. (guile-gstreamer's build
7315         system uses the address of the function -- I wasn't actually
7316         trying to use this.)
7317
7318 2004-07-14  Andy Wingo  <wingo@pobox.com>
7319
7320         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7321         as gst_pad_proxy_pad_link) just link to every other pad when they
7322         are called. In the case where the graph has cycles, this will mean
7323         that a call to try_set_caps will recurse. Allow this recursion
7324         and return OK, while we wait for the first try_set_caps to give a
7325         proper return value.
7326         (gst_pad_link_call_link_functions): Since this function is the
7327         only one to set the NEGOTIATING flag on a pad, if the flag is set
7328         it means that the link functions have indirectly recursed. If this
7329         happens, error out to avoid infinite recursion and an eventual
7330         SEGV.
7331         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7332         (gst_pad_proxy_getcaps): Intersect the result with the template
7333         caps to ensure that the return value is valid.
7334
7335 2004-07-14  Andy Wingo  <wingo@pobox.com>
7336
7337         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7338         one refcount, the calling function is the owner of the buffer.
7339
7340 2004-07-14  Wim Taymans  <wim@fluendo.com>
7341
7342         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7343         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7344         Fix stupid warning when an element is to be migrated but
7345         is already migrated.
7346
7347 2004-07-14  Wim Taymans  <wim@fluendo.com>
7348
7349         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7350         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7351         Make sure that a single non-loop-based element does not 
7352         end up in a group. This fixes the testsuite again.
7353
7354 2004-07-14  Wim Taymans  <wim@fluendo.com>
7355
7356         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7357         (add_to_group), (merge_groups), (schedule_group),
7358         (gst_opt_scheduler_get_wrapper), (group_elements),
7359         (group_dec_link), (gst_opt_scheduler_pad_link),
7360         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7361         (gst_opt_scheduler_iterate):
7362         move isolated groups to a new chain.
7363         Emit a warning instead of segfaulting in some error cases.
7364         Fix a bug where the link count between groups was not calculated 
7365         correctly. Fixes #144510.
7366
7367 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7368         * gst/elements/gstfilesrc.c:
7369           Binary files support under Windows now OK
7370       
7371 2004-07-13  Benjamin Otte  <otte@gnome.org>
7372
7373           compatibility fixes for Solaris 8/gcc 2.95
7374         * configure.ac:
7375           include libintl libs in LDFLAGS
7376         * gstvalue.c (gst_value_deserialize_buffer):
7377           cast isxdigit stuff to int to silence compiler warning
7378
7379 2004-07-12  Benjamin Otte  <otte@gnome.org>
7380
7381         * gst/gsttypes.h:
7382           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7383           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7384           just causes support madness
7385         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7386           make it work without this
7387         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7388         (gst_file_index_commit):
7389           glib IO channels don't want binary mode
7390         * testsuite/bytestream/filepadsink.c: (main):
7391         * testsuite/bytestream/test1.c: (read_param_file):
7392           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7393
7394 2004-07-12  Benjamin Otte  <otte@gnome.org>
7395
7396         * gst/gstelement.c: (gst_element_class_init),
7397         (gst_element_set_state), (gst_element_set_state_func):
7398           virutalize gst_element_set_state, use set_state member in class
7399           struct that was already added in 0.7 for this.
7400         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7401         (gst_bin_change_state):
7402           make gst_bin_foreach works similar to other foreach functions, plug
7403           memleaks in it. Make functions using it work with the new approach.
7404           Document gst_bin_foreach, so it can be exported if we want to
7405         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7406           use virtualized set_state to make set_state on bins set the state of
7407           all its children.
7408
7409 2004-07-12  Benjamin Otte  <otte@gnome.org>
7410
7411         * configure.ac:
7412           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7413           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7414         * gst/gstpad.c: (gst_pad_alloc_buffer):
7415           allow buffer_alloc functions to return NULL and allocate a normal
7416           buffer in that case
7417
7418 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7419         * gst/elements/gstfilesink.c:
7420         * gst/elements/gstfilesrc.c:
7421         * gst/indexers/gstfileindex.c:
7422         * gst/gsttypes.h:
7423         * testsuite/bytestream/filepadsink.c:
7424         * testsuite/bytestream/test1.c:
7425           Handle binary files under Windows
7426
7427 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7428         * docs/manual/win32.xml:
7429         * win32/config.h:
7430         * win32/gst-register.vcproj:
7431         * win32/gstreamer.def:
7432           Update to another gettext public build
7433
7434 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7435         * gst/gstplugin.c:
7436           Fix an impossible C syntax
7437         * win32/config.h:
7438           Disable i18n under Windows for the moment
7439         * win32/gst-register.vcproj:
7440           Use this configuration
7441
7442 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7443         * docs/manual/quotes.xml:
7444           Keep the quotes file alive
7445         * docs/random/ds/0.9-suggested-changes:
7446           Add the suggestion of including a 'rowstride' as part of video
7447           format caps
7448
7449 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7450
7451         * gst/gstelement.c: (gst_element_set_state),
7452         (gst_element_change_state):
7453           d'oh.  Set PENDING state correctly before forcing bin to change.
7454         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7455         (gst_structure_parse_fixed_list):
7456         * gst/schedulers/gstoptimalscheduler.c:
7457         (gst_opt_scheduler_state_transition):
7458         * testsuite/states/parent.c: (main):
7459           remove comment now that it's fixed.
7460
7461 2004-07-11  Benjamin Otte  <otte@gnome.org>
7462
7463         * gst/gstclock.h:
7464           GST_SECOND shouldn't cause a conversion to unsigned.
7465         * testsuite/clock/.cvsignore:
7466         * testsuite/clock/Makefile.am:
7467         * testsuite/clock/signedness.c: (main):
7468           make sure it never will again
7469
7470 2004-07-11  Andy Wingo  <wingo@pobox.com>
7471
7472         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7473         whose state is higher than the bin state, raise the bin state to
7474         ensure that bin state := highest child state.
7475         
7476 2004-07-11  Andy Wingo  <wingo@pobox.com>
7477
7478         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7479         procedure on the children of a bin. Assumes that the procedure can
7480         change the set of children.
7481         (set_kid_state_func): New static function.
7482         (gst_bin_change_state): Use gst_bin_foreach to call
7483         set_kid_state_func. Fixes a bug: if a child had a state-change
7484         handler that removes it from the bin, there would be a segfault.
7485         Hopefully it should also work in the case where the state-change
7486         handler on one child adds or removes other children. In any case,
7487         fixes should go to gst_bin_foreach.
7488
7489 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7490
7491         * gst/gstelement.c: (gst_element_set_state):
7492           compatibility fix for latest plugins release.  Change loop back
7493           to while {}
7494
7495 2004-07-09  Wim Taymans  <wim@fluendo.com>
7496
7497         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7498         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7499         (gst_thread_main_loop):
7500         Since remove is virtual in GstBin we must not assume the 
7501         elements GList to have anothing useful.
7502         Add some more logging to GstThread and be a bit more paranoid
7503         when resetting the scheduler.
7504         Set the state of the bin to NULL before removing the children.
7505
7506 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7507
7508         * testsuite/threads/Makefile.am:
7509         * testsuite/threads/threadg.c:
7510           added test to check if problem when removing all elements from a
7511           GstThread before setting GstThread state to NULL
7512
7513 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7514
7515         * docs/gst/tmpl/gstelement.sgml:
7516         * docs/gst/tmpl/gsttypes.sgml:
7517         * gst/gstbin.c: (gst_bin_change_state):
7518         * gst/gstelement.c: (gst_element_set_state),
7519         (gst_element_change_state):
7520           rework so that for bins we try to set the state on all children
7521           as well even if the bin is in the correct state already.
7522           change while to do so at least one iteration is done.
7523           For regular elements, we fall back to the previous behaviour for
7524           now since we first need a new plugins release.
7525         * testsuite/states/parent.c: (main):
7526           test for this case
7527           Fixes #123774
7528
7529 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7530
7531         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7532         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7533         (gst_queue_release_locks), (gst_queue_change_state),
7534         (gst_queue_set_property):
7535           add proper lock debugging.  Change dispose to finalize, since
7536           we're freeing mutexes and other stuff which should happen only once.
7537
7538 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7539
7540         * docs/gst/tmpl/gstelement.sgml:
7541         * docs/gst/tmpl/gstplugin.sgml:
7542         * docs/gst/tmpl/gsttypes.sgml:
7543         * docs/pwg/building-state.xml:
7544         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7545         * gst/gstelement.c: (gst_element_change_state):
7546         * gst/gstthread.c: (gst_thread_change_state):
7547           catch wrong state changes in element base class.
7548
7549 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7550
7551         * gst/gstinfo.h:
7552           clean up layout a little.
7553
7554 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7555
7556         * configure.ac:
7557         * testsuite/Makefile.am:
7558         * testsuite/states/Makefile.am:
7559         * testsuite/states/parent.c: (main):
7560           re-enable states testsuite dir.  Add test for state changes and
7561           parent behaviour
7562
7563 2004-07-09  Wim Taymans  <wim@fluendo.com>
7564
7565         * gst/schedulers/gstoptimalscheduler.c:
7566         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7567         (element_get_reachables_func), (element_get_reachables),
7568         (debug_element), (rechain_group), (group_migrate_connected),
7569         (gst_opt_scheduler_pad_unlink):
7570         Do not try to migrate decoupled elements to a new group since
7571         they are not added to groups.
7572
7573 2004-07-08  Benjamin Otte  <otte@gnome.org>
7574
7575         * gst/gstelement.c: (gst_element_error_func):
7576           make reentrant (= allow removing elements in error handler)
7577
7578 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7579
7580         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7581         (gst_pad_send_event), (gst_pad_call_chain_function):
7582           events sent to elements below PAUSED cannot be handled, so
7583           don't try to
7584
7585 2004-07-08  Wim Taymans  <wim@fluendo.com>
7586
7587         * gst/schedulers/gstoptimalscheduler.c:
7588         (chain_recursively_migrate_group), (create_group),
7589         (schedule_group), (gst_opt_scheduler_pad_link),
7590         (group_elements_set_visited), (element_get_reachables_func),
7591         (element_get_reachables), (group_can_reach_group), (debug_element),
7592         (rechain_group), (group_migrate_connected),
7593         (gst_opt_scheduler_pad_unlink):
7594         * testsuite/schedulers/Makefile.am:
7595         Implemented group splitting and rechaining.
7596         Fixes 143777 and 143777-2 in the testsuite.
7597
7598 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7599
7600         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7601           extra debugging
7602         * gst/gstevent.h:
7603         * gst/gstinfo.c: (gst_debug_log_default):
7604           print time nicely.  add thread pointer until someone figures out
7605           a completely portable way of getting at thread id's.
7606         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
7607         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
7608         (gst_pad_call_chain_function):
7609           extra debugging
7610         * gst/schedulers/gstoptimalscheduler.c:
7611         (get_group_schedule_function), (loop_group_schedule_function),
7612         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
7613         (pad_clear_queued), (gst_opt_scheduler_iterate):
7614           rename BUFPEN and friends to DATAPEN since that's what they are.
7615
7616 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7617
7618         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7619         * gst/gstbuffer.h:
7620         * gst/gstpad.c:
7621           cleanups and debugging
7622
7623 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7624
7625         * configure.ac:
7626         * gst/gstvalue.c: (gst_value_compare_enum),
7627         (gst_value_serialize_enum), (gst_value_deserialize_enum),
7628         (gst_value_can_compare), (gst_value_compare):
7629         * testsuite/Makefile.am:
7630         * testsuite/enumcaps/Makefile.am:
7631         * testsuite/enumcaps/enumcaps.c:
7632           Fix enum serialization, deserialization, comparison in caps, add
7633           a test to ensure that this continues working in the future.
7634
7635 2004-07-06  David Schleef  <ds@schleef.org>
7636
7637         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7638         Fix memleak.
7639
7640 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7641
7642         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
7643         * gst/gstplugin.h:
7644         * gst/registries/gstxmlregistry.c:
7645         (plugin_times_older_than_recurse), (plugin_times_older_than),
7646         (gst_xml_registry_parse_padtemplate):
7647           only rebuild registry when actual plugins have a newer time than
7648           the registry.  Fixes #145520
7649
7650 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7651
7652         * docs/manual/manual.xml:
7653         * docs/manual/win32.xml:
7654           add chapter on win32 building.  fixes #142422
7655
7656 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7657
7658         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
7659
7660         * gst/autoplug/gstspider.c: (gst_spider_init),
7661         (gst_spider_dispose):
7662           fix spider memleaks.  fixes #137863
7663
7664 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7665
7666         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
7667
7668         * gst/schedulers/gstoptimalscheduler.c:
7669         (gst_opt_scheduler_pad_unlink):
7670           fix SIGBUS error, fixes #145338
7671
7672 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7673
7674         * gst/gstobject.c: (gst_object_replace):
7675         * gst/gstscheduler.c: (gst_scheduler_get_clock):
7676         * gst/gstsystemclock.c: (gst_system_clock_obtain):
7677           clean up clock lifecycle.  Fixes #109831
7678
7679 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7680
7681         * po/LINGUAS:
7682         * po/cs.po:
7683           added Czech translation (Miloslav Trmac)
7684
7685 2004-07-04  David Schleef  <ds@schleef.org>
7686
7687         * tools/Makefile.am:
7688         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
7689
7690 2004-07-04  David Schleef  <ds@schleef.org>
7691
7692         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
7693
7694 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7695
7696         * gst/gstbin.c: (gst_bin_restore_thyself):
7697           chain to parent restore so the bins get restored correctly
7698           in the editor
7699
7700 2004-07-03  David Schleef  <ds@schleef.org>
7701
7702         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7703         Actually do something in these functions, like before the big
7704         caps change.  (bug #145137)
7705
7706 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7707
7708         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
7709         (gst_element_get_compatible_pad_filtered):
7710         * gst/gstthread.c: (gst_thread_main_loop):
7711           more debugging
7712
7713 2004-07-02  David Schleef  <ds@schleef.org>
7714
7715         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
7716         * gst/gstobject.h:
7717         * gst/gstparse.h:
7718         * gst/gsttrace.h:
7719         * gst/gstxml.h:
7720
7721 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7722
7723         * gst/gstpad.c: (gst_pad_check_schedulers),
7724         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7725         (gst_pad_link_prepare):
7726           revert until testsuite is fixed
7727
7728 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7729
7730         * testsuite/Makefile.am:
7731         * testsuite/caps/filtercaps.c: (main):
7732         * testsuite/clock/clock1.c: (main):
7733         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
7734           fix some more tests
7735
7736 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7737
7738         * testsuite/cleanup/cleanup1.c: (create_pipeline):
7739         * testsuite/cleanup/cleanup2.c: (create_pipeline):
7740         * testsuite/cleanup/cleanup4.c: (main):
7741           fix testsuite
7742
7743 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7744
7745         * libs/gst/control/control.c:
7746         * libs/gst/control/dparam.c:
7747         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
7748         * libs/gst/control/dparammanager.c:
7749         * libs/gst/control/dparammanager.h:
7750         * testsuite/dynparams/Makefile.am:
7751         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
7752         (gst_dptest_change_state), (gst_dptest_chain), (main):
7753           fix testcase for dparams
7754           add debugging category
7755
7756 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7757
7758         * testsuite/Rules:
7759           change path
7760
7761 2004-07-02  Benjamin Otte  <otte@gnome.org>
7762
7763         * tests/.cvsignore:
7764         * tests/Makefile.am:
7765         * tests/mass_elements.c: (gst_get_current_time), (main):
7766           add simple benchmark to test various speeds of fakesrc ! identity !
7767           identity ! ... ! fakesink.
7768           Usage: mass_elements [num_identities] [num_buffers]
7769           If not specified they default to 1000.
7770
7771 2004-07-02  Benjamin Otte  <otte@gnome.org>
7772
7773         * gst/gstpad.c: (gst_pad_check_schedulers),
7774         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7775         (gst_pad_link_prepare):
7776           check that pads that get linked belong to the same manager. The old
7777           code allowed linking elements before putting them into bins, so it
7778           worked to link them and then put them in different threads, which
7779           lead to weird behaviour.
7780           Since this effectively disallows linking elements before putting
7781           them in a bin, some applications might not work after this and error
7782           out. If these applications are too critical, we might need to revert
7783           that patch. Please test this before the next release...
7784
7785 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7786
7787         * gst/gstpad.c: (gst_pad_get_caps):
7788           throw an error if the getcaps function does not return a subset of
7789           the template caps.
7790         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
7791           make disconts without position info an error in debugging
7792         * tests/spidey_bench.c: (handoff), (main):
7793           don't count first try when averaging
7794
7795 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7796
7797         * gst/gstplugin.c: (gst_plugin_load_file):
7798           figure out problem with dynamic test
7799
7800 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7801
7802         * docs/gst/Makefile.am:
7803           fix docs build
7804
7805 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7806
7807         * po/POTFILES.in:
7808         * po/af.po:
7809         * po/az.po:
7810         * po/en_GB.po:
7811         * po/fr.po:
7812         * po/nl.po:
7813         * po/sr.po:
7814         * po/sv.po:
7815         * po/tr.po:
7816         * po/uk.po:
7817         * tools/gst-register.c: (plugin_added_func), (main):
7818           i18n-ize -register, fix plural
7819
7820 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7821
7822         * gst/elements/gstidentity.c: (gst_identity_class_init),
7823         (gst_identity_init), (gst_identity_chain),
7824         (gst_identity_set_property), (gst_identity_get_property):
7825         * gst/elements/gstidentity.h:
7826           check for perfect stream
7827
7828 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7829
7830         * gst/elements/gstidentity.c: (gst_identity_chain):
7831           print offset_end
7832
7833 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7834
7835         * docs/gst/Makefile.am:
7836         * docs/gst/gstreamer-docs.sgml:
7837           doc fixes
7838
7839 2004-06-24  David Schleef  <ds@schleef.org>
7840
7841         * autogen.sh:  Remove call to env, since the buildbot isn't
7842         broken anymore.
7843
7844 2004-06-24  Wim Taymans  <wim@fluendo.com>
7845
7846         * gst/elements/Makefile.am:
7847         * gst/elements/gstelements.c:
7848         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
7849         (gst_multifdsink_class_init), (gst_multifdsink_init),
7850         (gst_multifdsink_add), (gst_multifdsink_remove),
7851         (gst_multifdsink_clear), (gst_multifdsink_chain),
7852         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
7853         * gst/elements/gstmultifdsink.h:
7854         Added an element that writes to multiple filedescriptors at once.
7855
7856 2004-06-24  Benjamin Otte  <otte@gnome.org>
7857
7858         * gst/parse/grammar.y:
7859           don't try to link elements before they have been added to bins
7860
7861 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7862
7863         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
7864         (gst_file_pad_get_length):
7865         * libs/gst/bytestream/filepad.h:
7866           add 2 new functions
7867
7868 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7869
7870         * docs/gst/gstreamer-sections.txt:
7871         remove from docs, the define that Benjamin removed from gstelement.h
7872
7873 2004-06-22  Benjamin Otte  <otte@gnome.org>
7874
7875         * gst/gstelement.h:
7876           remove define that referenced a nonexisting GstElement struct member
7877
7878 2004-06-20  Benjamin Otte  <otte@gnome.org>
7879
7880         * gst/gstdata.c: (gst_data_is_writable):
7881           whoops, return values were wrong, so writable data was marked as
7882           non-writable and vice versa. (fixes #143953, spotted by Francis
7883           Labonte)
7884           Shows how rarely we need to copy data ;)
7885
7886 2004-06-20  Benjamin Otte  <otte@gnome.org>
7887
7888         * testsuite/schedulers/.cvsignore:
7889         * testsuite/schedulers/Makefile.am:
7890         * testsuite/schedulers/143777-2.c: (main):
7891           add test for opt breakage in bug #143777
7892
7893 2004-06-20  Benjamin Otte  <otte@gnome.org>
7894
7895         * gst/gstpad.c: (gst_pad_call_chain_function):
7896           check for if we were unlinked while inside the chainfunction (fixes
7897           entrygthread having issues with #143777)
7898         * testsuite/schedulers/143777.c: (main):
7899         * testsuite/schedulers/Makefile.am:
7900           add a test for that fix
7901
7902 2004-06-20  Benjamin Otte  <otte@gnome.org>
7903
7904         * gst/gstvalue.c: (gst_value_set_int_range):
7905           test that start is smaller then end
7906         * libs/gst/bytestream/Makefile.am:
7907         * libs/gst/bytestream/filepad.c: 
7908         * libs/gst/bytestream/filepad.h:
7909           add GstFilePad - a pad that behaves like a FILE*
7910         * testsuite/bytestream/.cvsignore:
7911         * testsuite/bytestream/Makefile.am:
7912         * testsuite/bytestream/filepadsink.c: 
7913           test for the GstFilePad
7914
7915 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7916
7917         * gst/elements/gstidentity.c: (gst_identity_class_init),
7918         (gst_identity_init), (gst_identity_set_clock),
7919         (gst_identity_chain), (gst_identity_set_property),
7920         (gst_identity_get_property):
7921         * gst/elements/gstidentity.h:
7922         * gst/gstclock.c: (gst_clock_id_wait):
7923           add a "sync" property to sync to the clock
7924
7925 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7926
7927         * gst/gstelementfactory.c: (gst_element_factory_create):
7928           make the freakin "elementfactory bla has no type" message more
7929           useful. So we actually can do something when someone shows up
7930           complaining about it.
7931
7932 2004-06-15  Johan Dahlin  <johan@gnome.org>
7933
7934         * tools/gst-inspect.c (main): Fallback to plugin if no element is
7935         found. This matches the old behavior better. Thanks to Thomas for
7936         pointing out.
7937
7938 2004-06-14  David Schleef  <ds@schleef.org>
7939
7940         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
7941         -fomit-frame-pointer.  Appears to generate correct code in
7942         other cases as well.
7943
7944 2004-06-14  Johan Dahlin  <johan@gnome.org>
7945
7946         * tools/gst-inspect.c (main): Add two new command line options: -a
7947         to print all elements and -n to print the name on each line. Also
7948         fix some error reporting.
7949         (main): Simplify, remove -n and always print names if -a is specified
7950
7951 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
7952
7953         * win32/gstconfig.h:
7954         * win32/GSTreamer.vcproj:
7955         * win32/Makefile:
7956         * gst/gstconfig.h.in:
7957         * gst/gst.h:
7958         * gst/gstbin.h:
7959         * gst/gstelement.h:
7960         * gst/gstevent.h:
7961         * gst/gstobject.h:
7962         * gst/gstpad.h:
7963         * docs/gst/gstreamer-sections.txt:
7964         * docs/gst/tmpl/gstconfig.sgml:
7965           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
7966
7967 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7968         * docs/gst/gstreamer-sections.txt:
7969         * docs/gst/tmpl/gstconfig.sgml:
7970         Add the GSTREAMER_EXPORT macro to the docs
7971
7972 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7973
7974         * tools/gst-compprep.c: (handle_xmlerror), (main):
7975         Add a check for the version that introduced SetStructuredError to fix
7976         the build on FC1
7977
7978 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7979
7980         * win32/msvc71.sln:
7981         * win32/testsuite/:
7982           prepare to compile the testsuite with MSVC
7983
7984 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7985
7986         * docs/manual/win32.xml:
7987           attempt to transform the Win32 README into an XML doc
7988
7989 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7990
7991         * gst/gst.c:
7992         * gst/gstbin.*:
7993         * gst/config.h.in:
7994         * gst/gstelement.*:
7995         * gst/gstevent.h:
7996         * gst/gstobject.*:
7997         * gst/gstpad.h:
7998         * tools/gst-register.c:
7999         * win32/gstreamer.def:
8000           extern symbols are now exported for the Windows DLL
8001
8002 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8003
8004         * gst/gstinfo.h:
8005           fix a problem to enable/disable DEBUG under MSVC
8006
8007 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8008
8009         * win32/:
8010           enable more debug code in DEBUG build
8011
8012 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8013
8014         * win32/config.h:
8015         * gst/gst-i18n-app.h:
8016           enable NLS under Windows
8017
8018 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8019         * tools/gst-compprep.c: (handle_xmlerror), (main):
8020           Make an error that baffled me a bit clearer
8021
8022 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8023
8024         * gst/gstqueue.c:
8025           don't use g_queue_get_length () because it's 2.4, use ->length
8026
8027 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8028
8029         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8030
8031         * tools/gst-inspect.c: (print_signal_info):
8032           don't free random data twice. (fixes #144185)
8033
8034 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8035
8036         * gst/gstqueue.c:
8037         * gst/gstqueue.h:
8038           fix removing from the wrong queue on event timeout
8039           fix disposing of the event queue by casting correctly
8040           add mutexes for handling the event queue
8041           someone was sleeping when fixing queue last time around :)
8042
8043 2004-06-10  Johan Dahlin  <johan@gnome.org>
8044
8045         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8046         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8047
8048 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8049
8050         * docs/random/gdp:
8051         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8052         * libs/gst/dataprotocol/dataprotocol.c:
8053         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8054         (gst_dp_buffer_from_header):
8055         * libs/gst/dataprotocol/dataprotocol.h:
8056         * libs/gst/dataprotocol/dp-private.h:
8057           rev version to 0.1, add buffer flags and copy them
8058
8059 2004-06-09  Johan Dahlin  <johan@gnome.org>
8060
8061         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8062         the flags from the buffer we're copying.
8063
8064 2004-06-09  Wim Taymans  <wim@fluendo.com>
8065
8066         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8067         * gst/elements/gstidentity.c: (gst_identity_init),
8068         (gst_identity_chain):
8069         Print more buffer info in fakesink.
8070         Make identity output similar to fakesink.
8071
8072 2004-06-07  Daniel Gazard  <dany42@free.fr>
8073
8074         reviewed by Benjamin Otte  <otte@gnome.org>
8075
8076         * configure.ac:
8077           fix cross compiling not working. (fixes #143741)
8078
8079 2004-06-07  Benjamin Otte  <otte@gnome.org>
8080
8081         * gst/gstelement.c: (gst_element_set_time_delay):
8082           add failure check
8083         * gst/gstinfo.h:
8084           put brackets around macro arguments of GST_TIME_ARGS, add note to
8085           move it to correct header in 0.9
8086
8087 2004-06-07  Benjamin Otte  <otte@gnome.org>
8088
8089         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8090         (gst_file_index_load), (_file_index_id_save_entries),
8091         (gst_file_index_commit), (gst_file_index_add_association),
8092         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8093         (gst_file_index_plugin_init):
8094           make debugging use a default category
8095
8096 2004-06-06  David Moore  <dcm@acm.org>
8097
8098         reviewed by Benjamin Otte  <otte@gnome.org>
8099
8100         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8101         (gst_fdsrc_change_state):
8102           reset offset counter when going READY => PAUSED. (fixes #142903)
8103
8104 2004-06-06  ed@catmur.co.uk
8105
8106         reviewed by Benjamin Otte  <otte@gnome.org>
8107
8108         * gst/registries/gstxmlregistry.c:
8109         (gst_xml_registry_rebuild_recurse):
8110           don't rely on g_dir_open to figure out if a file is a directory, use
8111           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8112           directories. (fixes #142850)
8113
8114 2004-06-06  Benjamin Otte  <otte@gnome.org>
8115
8116         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8117           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8118         * libs/gst/bytestream/adapter.c:
8119         * libs/gst/bytestream/adapter.h:
8120           fix copyright in header and typo in debugging category name
8121
8122 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8123
8124         * configure.ac:
8125           bump nano to cvs
8126
8127 === release 0.8.3 ===
8128
8129 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8130
8131         * configure.ac:
8132           update libtool versioning
8133           do a new release
8134         * docs/gst/tmpl/gstelement.sgml:
8135         * docs/gst/tmpl/gsttypes.sgml:
8136         * gst/gstinfo.c: (_gst_debug_init):
8137           put back GST_CAT_DATAFLOW to fix API breakage
8138
8139 2004-06-04  David Schleef  <ds@schleef.org>
8140
8141         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8142
8143 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8144
8145         * configure.ac:
8146           bump nano to cvs
8147
8148 === release 0.8.2 ===
8149
8150 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8151
8152         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8153           check GST_DEBUG environment variable which is parsed the same way
8154           as --gst-debug=
8155
8156 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8157
8158         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8159                             gstmd5sink.c gstshaper.c gsttee.c
8160                             gsttypefindelement.c
8161         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8162
8163           - removing trailing commas at end of enums
8164             it is correct C99 code but C90 compilers would complain
8165             (AIX, Forte, ...)
8166             ('should' fix #143290, at least partially)
8167
8168 2004-05-27  Wim Taymans  <wim@fluendo.com>
8169
8170         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8171         (chain_group_set_enabled), (create_group), (add_to_group),
8172         (merge_groups), (setup_group_scheduler), (group_elements),
8173         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8174         Don't try to follow the pad connections with other groups
8175         when a loop based element is added to the scheduler because
8176         the bin will inform the scheduler about the pad links a little
8177         later.
8178
8179 2004-05-27  Wim Taymans  <wim@fluendo.com>
8180
8181         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8182         (remove_from_chain), (chain_group_set_enabled),
8183         (setup_group_scheduler), (group_element_set_enabled),
8184         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8185         (gst_opt_scheduler_show):
8186         Elements without a group can do a state change as well, just wait
8187         with the setup of the scheduling function when it is added to a
8188         chain.
8189
8190 2004-05-27  Wim Taymans  <wim@fluendo.com>
8191
8192         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8193         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8194         (merge_groups), (setup_group_scheduler),
8195         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8196         (gst_opt_scheduler_show):
8197         Fixes to maintain internal consistency of the scheduler data
8198         structures. 
8199          - adding an enabled group to a chain should increment the
8200            number of enabled elements in that chain.
8201          - removing an enabled group from a chain could disable the
8202            chain.
8203          - removing a disabled group from a chain could enable the
8204            chain.
8205          - add g_assert when internal inconsistency is detected.
8206          - adding an element to a group could increase the number of
8207            links this group has with other groups.
8208          - merging two groups also merges the chains.
8209          - also show group links in the _show method.
8210            
8211
8212 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8213
8214         * gst/gstcaps.c: (gst_caps_structure_simplify):
8215           don't print error messages when there is no error
8216         * gst/gstvalue.c: (gst_value_compare_int_range):
8217           compare the second value, too
8218         * testsuite/caps/Makefile.am:
8219         * testsuite/caps/random.c: (assert_on_error), (main):
8220           add tests to make sure the two things above are checked for
8221
8222 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8223
8224         * configure.ac:
8225         * libs/gst/dataprotocol/Makefile.am:
8226         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8227         * libs/gst/dataprotocol/dataprotocol.h:
8228           wrap header in GST_ENABLE_NEW.  make code use it
8229
8230 2004-05-23  Johan Dahlin  <johan@gnome.org>
8231
8232         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8233         so verbose and print GstElement signal names all the time.
8234
8235 2004-05-22  David Schleef  <ds@schleef.org>
8236
8237         * gst/registries/gstxmlregistry.c:
8238         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8239         (bug #142957)
8240
8241 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8242
8243         * configure.ac:
8244           scrub cflags for glib2 so gcc doesn't complain when glib is in
8245           /usr/local
8246
8247 2004-05-21  Johan Dahlin  <johan@gnome.org>
8248
8249         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8250         __GNUC__, patch from Brian Cameron, fixes bug #142804
8251
8252 2004-05-20  David Schleef  <ds@schleef.org>
8253
8254         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8255         comparison code.  (bug #142819)
8256
8257 2004-05-20  Wim Taymans  <wim@fluendo.com>
8258
8259         * gst/gstbuffer.c: (gst_buffer_default_copy):
8260         * gst/gstbuffer.h:
8261         Added Comment to a flag.
8262         copy relevant flags in _buffer_copy.
8263
8264 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8265
8266         reviewed by: Wim Taymans <wim at fluendo dot com>
8267
8268         * gst/gstbuffer.h:
8269           add GST_BUFFER_IN_CAPS buffer flag
8270         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8271         (gst_structure_parse_any_list), (gst_structure_parse_list),
8272         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8273         * gst/gstvalue.c: (gst_value_serialize_any_list),
8274         (gst_value_transform_any_list_string),
8275         (gst_value_list_prepend_value), (gst_value_list_append_value),
8276         (gst_value_list_get_size), (gst_value_list_get_value),
8277         (gst_value_transform_list_string),
8278         (gst_value_transform_fixed_list_string),
8279         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8280         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8281         (_gst_value_initialize):
8282         * gst/gstvalue.h:
8283           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8284           < , > as a format.
8285         * testsuite/caps/string-conversions.c: (main):
8286           add regression tests for < >
8287
8288 2004-05-20  Johan Dahlin  <johan@gnome.org>
8289
8290         * docs/gst/Makefile.am (all-local): Re-add
8291
8292 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8293
8294         * docs/gst/Makefile.am:
8295         * docs/gst/gstreamer-docs.sgml:
8296         * docs/libs/Makefile.am:
8297         * docs/libs/gstreamer-libs-docs.sgml:
8298           fix distcheck issues
8299
8300 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8301
8302         * libs/gst/dataprotocol/Makefile.am:
8303           add to autotest
8304
8305 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8306
8307         * libs/gst/dataprotocol/Makefile.am:
8308         * libs/gst/dataprotocol/dataprotocol.c:
8309         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8310         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8311         * libs/gst/dataprotocol/dp-private.h:
8312           use GST macros to read/write fixed length ints
8313           add some more asserts
8314
8315 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8316
8317         * docs/libs/gstreamer-libs-docs.sgml:
8318         * docs/libs/gstreamer-libs-sections.txt:
8319           remove idct and putbits
8320         * configure.ac:
8321         * docs/libs/tmpl/gstdataprotocol.sgml:
8322         * libs/gst/Makefile.am:
8323         * libs/gst/dataprotocol/Makefile.am:
8324         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8325         (buffer_test), (caps_test), (event_test), (main):
8326         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8327         (gst_dp_dump_byte_array), (gst_dp_init),
8328         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8329         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8330         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8331         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8332         (gst_dp_validate_header), (gst_dp_validate_payload),
8333         (gst_dp_validate_packet), (plugin_init):
8334         * libs/gst/dataprotocol/dataprotocol.h:
8335         * libs/gst/dataprotocol/dp-private.h:
8336           add dataprotocol
8337
8338 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8339
8340         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8341           fix int variable deserialization and add a helper so we can actually
8342           debug this.
8343
8344 2004-05-18  David Schleef  <ds@schleef.org>
8345
8346         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8347           argv[0].  Calling yourself is probably not the best way to
8348           construct a test like this, btw.
8349
8350 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8351
8352         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8353           don't claim to be more intelligent than a scheduler when the
8354           scheduler claims the pipeline is stopped
8355         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8356         (safe_cothread_destroy),
8357         (gst_entry_scheduler_remove_all_cothreads),
8358         (gst_entry_scheduler_reset), (_remove_cothread),
8359         (gst_entry_scheduler_state_transition):
8360           hold off cothread destruction if we're not in main cothread
8361         * configure.ac:
8362         * testsuite/Makefile.am:
8363           add new test dir
8364         * testsuite/schedulers/.cvsignore:
8365         * testsuite/schedulers/Makefile.am:
8366           add tests
8367         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8368           check relinking and adding/removing elements from a running pipeline
8369         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8370           check unlinking in a running pipeline
8371         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8372           check unreffing a running pipeline
8373         * testsuite/schedulers/useless_iteration.c: (main):
8374           check iterating a pipeline that contains running threads works
8375
8376 2004-05-18  David Schleef  <ds@schleef.org>
8377
8378         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8379           is false.
8380
8381 2004-05-18  Wim Taymans  <wim@fluendo.com>
8382
8383         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8384         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8385         Fixed an error introduced with patch for 1.63. When setting
8386         a get based element as the entry point in a group, make sure
8387         to mark the group as GET based.
8388
8389 2004-05-18  Wim Taymans  <wim@fluendo.com>
8390
8391         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8392         (setup_group_scheduler), (loop_group_schedule_function),
8393         (gst_opt_scheduler_pad_link):
8394         Added some more debug info and fixed a bug where the group
8395         type was set to LOOP but it was in fact unknown.
8396
8397 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8398
8399         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8400           make resetting scheduler work twice in a row
8401
8402 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8403
8404         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8405         (CREATE_USERIALIZATION), (_gst_value_initialize),
8406         (gst_value_compare_float), (gst_value_serialize_float),
8407         (gst_value_deserialize_float), (gst_value_compare_enum),
8408         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8409           add serialization and comparison functions for long, int64, enum and
8410           float values
8411         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8412           use best serialization function in type hierarchy instead of only a
8413           matching one. This is required for enums to work.
8414         * gst/parse/grammar.y:
8415           use gst_caps_deserialize
8416         * testsuite/parse/Makefile.am:
8417           parse1 now works
8418         * testsuite/parse/parse1.c: (main):
8419           remove aggregator check, aggregator is broken, this test works now
8420           but fails because of bug #138012
8421         * testsuite/parse/parse2.c: (main):
8422           s/xvideosink/xvimagesink - this test looks a lot like we should
8423           disable it
8424
8425 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8426
8427         * gst/gstelement.c: (gst_element_class_init):
8428           whoops, store the signal id correctly
8429         * gst/schedulers/gstbasicscheduler.c:
8430         (gst_basic_scheduler_chain_wrapper):
8431           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8432           chain function isn't linked
8433
8434 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8435         * configure.ac:
8436         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8437         support until we decide where the flags should be used
8438         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8439         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8440         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8441         Output refused caps in the debug info
8442
8443 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8444
8445         * gst/elements/gstidentity.c: (gst_identity_chain):
8446           add duration debug
8447         * gst/gstinfo.c: (gst_debug_log_default):
8448           add timestamp
8449
8450 2004-05-13  Benjamin Otte  <otte@gnome.org>
8451
8452         * gst/gstpipeline.c: (gst_pipeline_dispose),
8453         (gst_pipeline_change_state):
8454           call gst_scheduler_reset on dispose (fixes #141416)
8455
8456 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8457
8458         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8459           compute mapsize correctly
8460         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8461           use correct datatypes when calling a varargs function
8462         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8463           push a DISCONT event as first thing
8464         * gst/gst_private.h:
8465         * gst/gstinfo.c: (_gst_debug_init):
8466           remove GST_DATAFLOW debugging category
8467         * gst/gstbin.c: (gst_bin_iterate):
8468           use GST_SCHEDULING category
8469         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8470         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8471         (gst_pad_call_get_function):
8472           add GST_DATAFLOW to easily track flow of buffers or events.
8473         * gst/gstqueue.c: (gst_queue_get_type),
8474         (gst_queue_handle_pending_events), (gst_queue_chain),
8475         (gst_queue_get), (gst_queue_handle_src_event):
8476           use own static debugging category GST_DATAFLOW for dataflow,
8477           use DEBUG category for showing which path events go, use LOG
8478           category for buffers.
8479
8480 2004-05-10  David Schleef  <ds@schleef.org>
8481
8482         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8483
8484 2004-05-10  David Schleef  <ds@schleef.org>
8485
8486         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8487         symbols, because otherwise we don't know what they are.  Thanks,
8488         the GStreamer team.
8489         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8490
8491 2004-05-10  David Schleef  <ds@schleef.org>
8492
8493         (from Steve Lhomme)
8494         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8495         are deleted.  Fix.
8496         * win32/Makefile.inspect:
8497         * win32/Makefile.launch:
8498         * win32/Makefile.register:
8499
8500 2004-05-10  David Schleef  <ds@schleef.org>
8501
8502         * gst/gstinfo.h: Add missing inline function.
8503         * gst/gsttrace.c: add include
8504         * gst/parse/grammar.y: remove unused code
8505         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8506         more portable.
8507         * tools/gst-register.c: wrap unistd.h
8508         
8509         More additions/fixes from Steve for the MSVC build.
8510         * win32/GStreamer.vcproj:
8511         * win32/Makefile:
8512         * win32/Makefile.inspect:
8513         * win32/Makefile.launch:
8514         * win32/Makefile.register:
8515         * win32/README.txt:
8516         * win32/gst-inspect.vcproj:
8517         * win32/gst-launch.vcproj:
8518         * win32/gst-register.vcproj:
8519         * win32/gstbytestream.def:
8520         * win32/gstbytestream.vcproj:
8521         * win32/gstconfig.h:
8522         * win32/gstelements.def:
8523         * win32/gstelements.vcproj:
8524         * win32/gstenumtypes.c:
8525         * win32/gstenumtypes.h:
8526         * win32/gstoptimalscheduler.def:
8527         * win32/gstoptimalscheduler.vcproj:
8528         * win32/gstreamer.def:
8529         * win32/gstspider.def:
8530         * win32/gstspider.vcproj:
8531         * win32/gstversion.h:
8532         * win32/msvc71.sln:
8533
8534 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8535
8536         * gst/gstelement.c: (gst_element_class_init),
8537         (gst_element_no_more_pads):
8538         * gst/gstelement.h:
8539           add gst_element_no_more_pads and the "no-more-pads" signal
8540
8541 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8542
8543         * gst/gstregistry.c: (gst_registry_add_plugin):
8544           refuse to add plugins when a plugin with same name is already
8545           registered. Fixes a bunch of "How to remove plugins?" issues.
8546           May lead to other problems though, let's test
8547
8548 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8549
8550         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8551         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8552         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8553
8554 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8555
8556         * tests/Makefile.am: fix am16 issue
8557
8558 2004-05-09  Benjamin Otte  <otte@gnome.org>
8559
8560         * libs/gst/bytestream/Makefile.am:
8561           we should indeed add .c files to makefiles or they won't be built
8562           (d'oh)
8563
8564 2004-05-08  Benjamin Otte  <otte@gnome.org>
8565
8566         * gst/gstpad.c: (gst_pad_proxy_fixate):
8567           really reduce the set of caps
8568
8569 2004-05-08  Benjamin Otte  <otte@gnome.org>
8570
8571         * tests/Makefile.am:
8572         * tests/spidey_bench.c: (handoff), (main):
8573           add benchmark to test how long spider needs to create a pipeline
8574
8575 2004-05-08  Benjamin Otte  <otte@gnome.org>
8576
8577         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8578           mark links as unengaged when unnegotiating instead of deactivating.
8579           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8580
8581 2004-05-08  Benjamin Otte  <otte@gnome.org>
8582
8583         * docs/manual/helloworld.xml:
8584           s/audiosink/osssink (patch by Patrick Guimond)
8585
8586 2004-05-07  David Schleef  <ds@schleef.org>
8587
8588         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8589         since it contains important stuff.
8590
8591 2004-05-07  David Schleef  <ds@schleef.org>
8592
8593         * testsuite/caps/caps.c: (test3), (main): A check for appending
8594         ANY caps.
8595
8596 2004-05-07  David Schleef  <ds@schleef.org>
8597
8598         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8599         which may contain commas.  Fixes detection of -Wa,-mregnames
8600
8601 2004-05-06  David Schleef  <ds@schleef.org>
8602
8603         Changes to handle compilers that don't have variadic macro
8604         support.  In particular, glib headers define some inlines
8605         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
8606         builds.
8607         * gst/Makefile.am:
8608         * gst/cothreads.c:
8609         * gst/elements/gstfdsink.c:
8610         * gst/elements/gstfdsrc.c:
8611         * gst/elements/gstfilesink.c:
8612         * gst/elements/gstfilesrc.c:
8613         * gst/gst_private.h:
8614         * gst/gstatomic.c:
8615         * gst/gstcaps.c: (gst_caps_append):
8616         * gst/gstcpu.c: (gst_cpuid_i386):
8617         * gst/gstelement.c:
8618         * gst/gsterror.c:
8619         * gst/gstfilter.c:
8620         * gst/gstinfo.h:
8621         * gst/gstprobe.c:
8622         * gst/gstquery.c:
8623         * gst/gstregistry.c:
8624         * gst/gststructure.c:
8625         * gst/gsttaginterface.c:
8626         * gst/gsttrace.c: (gst_trace_new):
8627         * gst/gsttrashstack.c:
8628         * gst/gsturi.c:
8629         * gst/gstvalue.c:
8630         * gst/parse/grammar.y:
8631         * gst/parse/parse.l:
8632         * tools/gst-inspect.c: (main):
8633         * tools/gst-launch.c: (main):
8634         * tools/gst-xmlinspect.c: (PUT_STRING):
8635
8636 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8637
8638         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8639         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8640         * gst/elements/gstfilesrc.h:
8641           send NEW_MEDIA events correctly
8642         * gst/elements/gsttypefindelement.c: (start_typefinding),
8643         (gst_type_find_element_handle_event):
8644           restart typefinding when we get a NEW_MEDIA event
8645         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
8646         (gst_bin_dispose):
8647           don't die when someone removes elements in callbacks
8648         * gst/gstelement.c: (gst_element_change_state):
8649           improve debugging
8650         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
8651           we need a NEW_MEDIA event to engage a link
8652         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
8653           don't g_print debugging stuff
8654         * testsuite/caps/simplify.c: (check_caps):
8655
8656 2004-05-04  Benjamin Otte  <otte@gnome.org>
8657
8658         * gst/parse/grammar.y:
8659           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
8660
8661 2004-05-04  Benjamin Otte  <otte@gnome.org>
8662
8663         * testsuite/caps/renegotiate.c: (main):
8664           improve output in error case
8665
8666 2004-05-04  Benjamin Otte  <otte@gnome.org>
8667
8668         * gst/parse/grammar.y:
8669           fix assert to not trigger when there's no error argument
8670         * gst/parse/parse.l:
8671           fix definition of caps to allow more than two structures
8672         * testsuite/caps/Makefile.am:
8673         * testsuite/caps/renegotiate.c: (main):
8674           it's sinesrc and works in that case
8675
8676 2004-05-04  Wim Taymans  <wim@fluendo.com>
8677
8678         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8679         (group_dec_link), (gst_opt_scheduler_pad_unlink):
8680         when removing an element from a group, we always need to
8681         decrement the link count that this group had with other 
8682         groups through the element.
8683         added an extra assert to catch inconsistencies when decrementing
8684         the link count.
8685
8686 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8687
8688         * configure.ac:
8689         * docs/gst/Makefile.am:
8690         * docs/gst/gstreamer-sections.txt:
8691         * docs/gst/tmpl/gstcompat.sgml:
8692         * examples/appreader/Makefile.am:
8693         * examples/cutter/Makefile.am:
8694         * examples/events/Makefile.am:
8695         * examples/helloworld/Makefile.am:
8696         * examples/helloworld2/Makefile.am:
8697         * examples/launch/Makefile.am:
8698         * examples/manual/Makefile.am:
8699         * examples/mixer/Makefile.am:
8700         * examples/pingpong/Makefile.am:
8701         * examples/plugins/Makefile.am:
8702         * examples/queue/Makefile.am:
8703         * examples/queue2/Makefile.am:
8704         * examples/queue3/Makefile.am:
8705         * examples/queue4/Makefile.am:
8706         * examples/retag/Makefile.am:
8707         * examples/thread/Makefile.am:
8708         * examples/typefind/Makefile.am:
8709         * examples/xml/Makefile.am:
8710         * gst/Makefile.am:
8711         * gst/autoplug/Makefile.am:
8712         * gst/elements/Makefile.am:
8713         * gst/gstcompat.h:
8714         * gst/indexers/Makefile.am:
8715         * gst/parse/Makefile.am:
8716         * gst/registries/Makefile.am:
8717         * gst/schedulers/Makefile.am:
8718         * libs/gst/bytestream/Makefile.am:
8719         * libs/gst/control/Makefile.am:
8720         * libs/gst/getbits/Makefile.am:
8721         * po/af.po:
8722         * po/az.po:
8723         * po/en_GB.po:
8724         * po/fr.po:
8725         * po/nl.po:
8726         * po/sr.po:
8727         * po/sv.po:
8728         * po/tr.po:
8729         * po/uk.po:
8730         * tests/Makefile.am:
8731         * tests/bufspeed/Makefile.am:
8732         * tests/instantiate/Makefile.am:
8733         * tests/memchunk/Makefile.am:
8734         * tests/muxing/Makefile.am:
8735         * tests/negotiation/Makefile.am:
8736         * tests/probes/Makefile.am:
8737         * tests/sched/Makefile.am:
8738         * tests/seeking/Makefile.am:
8739         * tests/threadstate/Makefile.am:
8740         * testsuite/caps/Makefile.am:
8741         * testsuite/cleanup/Makefile.am:
8742         * testsuite/dlopen/Makefile.am:
8743         * testsuite/dynparams/Makefile.am:
8744         * testsuite/plugin/Makefile.am:
8745         * testsuite/states/Makefile.am:
8746         * tools/Makefile.am:
8747           reorganize compile/link flags to be consistent
8748           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
8749
8750 2004-05-04  David Schleef  <ds@schleef.org>
8751
8752         The "once more, with feeling" check-in.
8753         * testsuite/caps/Makefile.am: dist caps_strings
8754         * testsuite/caps/renegotiate.c: (main): This test triggers a
8755           segfault in the core.  Marking as failing.
8756
8757 2004-05-03  David Schleef  <ds@schleef.org>
8758
8759         * testsuite/caps/deserialize.c: (main): Fix problems noticed
8760           by the build bots.
8761         * testsuite/caps/renegotiate.c: (main): Same.
8762
8763 2004-05-03  David Schleef  <ds@schleef.org>
8764
8765         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
8766
8767 2004-05-03  David Schleef  <ds@schleef.org>
8768
8769         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
8770           variable to find our source file.
8771
8772 2004-05-03  David Schleef  <ds@schleef.org>
8773
8774         * configure.ac:  Link plugins with libgstreamer and dependent
8775           libraries
8776         * testsuite/caps/Makefile.am:
8777         * testsuite/caps/caps_strings:
8778         * testsuite/caps/deserialize.c: (main): Add a little test to slog
8779           through a file of caps strings and test each one
8780
8781 2004-05-04  Benjamin Otte  <otte@gnome.org>
8782
8783         * libs/gst/bytestream/Makefile.am:
8784         * libs/gst/bytestream/adapter.c: 
8785         * libs/gst/bytestream/adapter.h:
8786           add GstAdapter, similar to bytestream, but doesn't require ugly event
8787           handling or uglier loopbased elements
8788
8789 2004-05-03  David Schleef  <ds@schleef.org>
8790
8791         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
8792         * testsuite/caps/erathostenes.c:
8793         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
8794
8795 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8796
8797         * docs/pwg/pwg.xml:
8798           remove hardcoded stylesheet path (duh)
8799         * docs/random/release:
8800         * docs/gst/gstreamer-sections.txt:
8801         * gst/Makefile.am:
8802         * gst/gst.h:
8803         * gst/gst_private.h:
8804         * gst/gstcaps.c:
8805         * gst/gstevent.c:
8806         * gst/gstformat.c:
8807         * gst/gstinfo.c:
8808         * gst/gstinfo.h:
8809         * gst/gstinterface.c:
8810         * gst/gstmemchunk.c:
8811         * gst/gstprobe.c:
8812         * gst/gstquery.c:
8813         * gst/gstregistry.c:
8814         * gst/gstregistrypool.c:
8815         * gst/gststructure.c:
8816         * gst/gsttaginterface.c:
8817         * gst/gstthread.c:
8818         * gst/gsttrace.c:
8819         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
8820         * gst/gsturi.c:
8821         * gst/gstvalue.c:
8822           deprecate gst_info; remove gstlog.h
8823    
8824
8825 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8826
8827         * Makefile.am:
8828         * po/en_GB.po:
8829         * po/sv.po:
8830         * po/uk.po:
8831           updated translations
8832
8833 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8834
8835         * gst/gstbin.c: (gst_bin_dispose):
8836           better debugging
8837
8838 2004-05-03  Johan Dahlin  <johan@gnome.org>
8839
8840         * gst/schedulers/gstoptimalscheduler.c
8841         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
8842         really is a GstElement. Avoids critical when running gst-launch -v
8843         and a oggdemux/decoding pipeline.
8844
8845 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8846
8847         * docs/gst/tmpl/gstpipeline.sgml :
8848         * docs/manual/elements-api.xml :
8849                 doc fix by Patrick Guimond (Protector) from devel ML
8850                 reviewed by ronald
8851
8852 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8853
8854         * docs/gst/Makefile.am :
8855         * docs/libs/Makefile.am :
8856                 apply a patch from Arwed v. Merkatz so that gtk-doc
8857                 generated docs install (same for .devhelp file)
8858                 (fixes part 1 of #138836)
8859
8860 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8861
8862         * docs/faq/dependencies.xml: typo
8863         * docs/faq/getting.xml :
8864             - fix download URL for new gstreamer site
8865             - hide sf.net download page as latest version aren't there
8866             - fix apt URLs
8867             - fill "get via CVS" paragraph (link to dev page on the site)
8868         * docs/faq/general.xml:
8869             hide status tables as they no more exists
8870             change case on plugins license file to reflect reality
8871         * docs/faq/troubleshooting.xml:
8872             remove the wiki question/answer as there is no more wiki
8873
8874 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8875
8876         * gst/gsterror.h:
8877           include the headers needed for declarations used in this header
8878
8879 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8880
8881         * docs/random/uraeus/gstreamer_and_midi.txt :
8882           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
8883           (fixes #132288)
8884
8885 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
8886
8887         reviewed by Benjamin Otte  <otte@gnome.org>
8888
8889         * gst/schedulers/gthread-cothreads.h:
8890           free allocated data for main cothread, too when destroying context
8891           (fixes #141417)
8892
8893 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8894
8895         * docs/manual/goals.xml : remove duplicated paragraph at end 
8896         of doc page (fixes #141448)
8897
8898 2004-04-29  David Schleef  <ds@schleef.org>
8899
8900         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
8901         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
8902
8903 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8904
8905         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8906           fix property
8907         * gst/gstcaps.c:
8908           fix doc string
8909         * po/POTFILES.in:
8910           rename typefind source file
8911
8912 2004-04-28  David Schleef  <ds@schleef.org>
8913
8914         Several new files from Steve Lhomme's MSVC patch (bug #141317):
8915         * win32/GStreamer.vcproj:
8916         * win32/Makefile:
8917         * win32/config.h:
8918         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
8919         (_trewinddir), (_ttelldir), (_tseekdir):
8920         * win32/dirent.h:
8921         * win32/gst-inspect.vcproj:
8922         * win32/gst-launch.vcproj:
8923         * win32/gst-register.vcproj:
8924         * win32/gstbytestream.vcproj:
8925         * win32/gstelements.vcproj:
8926         * win32/gstoptimalscheduler.vcproj:
8927         * win32/gstspider.vcproj:
8928         * win32/gtchar.h:
8929         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
8930         * win32/mman.h:
8931         * win32/mman.inl:
8932         * win32/msvc71.sln:
8933
8934 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8935
8936         * gst/gst.c: (init_post):
8937         * gst/gstinfo.c:
8938           remove useless _gst_progname stuff
8939         * tools/gst-inspect.c: (print_field), (print_caps):
8940           improve caps output
8941
8942 2004-04-28  David Schleef  <ds@schleef.org>
8943
8944         Disable parsing of a lot of files that aren't part of the
8945         exported API.  Move corresponding template files to old/,
8946         waiting for removal when they don't contain anything
8947         interesting.
8948         * docs/gst/Makefile.am:
8949         * docs/gst/gstreamer-sections.txt:
8950         * docs/gst/tmpl/cothreads.sgml:
8951         * docs/gst/tmpl/cothreads_compat.sgml:
8952         * docs/gst/tmpl/gettext.sgml:
8953         * docs/gst/tmpl/gobject2gtk.sgml:
8954         * docs/gst/tmpl/grammar.tab.sgml:
8955         * docs/gst/tmpl/gst-i18n-app.sgml:
8956         * docs/gst/tmpl/gst-i18n-lib.sgml:
8957         * docs/gst/tmpl/gst_private.sgml:
8958         * docs/gst/tmpl/gstaggregator.sgml:
8959         * docs/gst/tmpl/gstarch.sgml:
8960         * docs/gst/tmpl/gstatomic_impl.sgml:
8961         * docs/gst/tmpl/gstbufferstore.sgml:
8962         * docs/gst/tmpl/gstdata_private.sgml:
8963         * docs/gst/tmpl/gstdisksink.sgml:
8964         * docs/gst/tmpl/gstdisksrc.sgml:
8965         * docs/gst/tmpl/gstelementfactory.sgml:
8966         * docs/gst/tmpl/gstextratypes.sgml:
8967         * docs/gst/tmpl/gstfakesink.sgml:
8968         * docs/gst/tmpl/gstfakesrc.sgml:
8969         * docs/gst/tmpl/gstfdsink.sgml:
8970         * docs/gst/tmpl/gstfdsrc.sgml:
8971         * docs/gst/tmpl/gstfilesink.sgml:
8972         * docs/gst/tmpl/gstfilesrc.sgml:
8973         * docs/gst/tmpl/gsthttpsrc.sgml:
8974         * docs/gst/tmpl/gstidentity.sgml:
8975         * docs/gst/tmpl/gstindexfactory.sgml:
8976         * docs/gst/tmpl/gstmarshal.sgml:
8977         * docs/gst/tmpl/gstmd5sink.sgml:
8978         * docs/gst/tmpl/gstmultidisksrc.sgml:
8979         * docs/gst/tmpl/gstmultifilesrc.sgml:
8980         * docs/gst/tmpl/gstpadtemplate.sgml:
8981         * docs/gst/tmpl/gstpipefilter.sgml:
8982         * docs/gst/tmpl/gstschedulerfactory.sgml:
8983         * docs/gst/tmpl/gstsearchfuncs.sgml:
8984         * docs/gst/tmpl/gstshaper.sgml:
8985         * docs/gst/tmpl/gstspider.sgml:
8986         * docs/gst/tmpl/gstspideridentity.sgml:
8987         * docs/gst/tmpl/gststatistics.sgml:
8988         * docs/gst/tmpl/gsttee.sgml:
8989         * docs/gst/tmpl/gsttimecache.sgml:
8990         * docs/gst/tmpl/gsttypefind.sgml:
8991         * docs/gst/tmpl/gsttypefindfactory.sgml:
8992         * docs/gst/tmpl/gstxmlregistry.sgml:
8993         * docs/gst/tmpl/gthread-cothreads.sgml:
8994         * docs/gst/tmpl/old/cothreads.sgml:
8995         * docs/gst/tmpl/old/cothreads_compat.sgml:
8996         * docs/gst/tmpl/old/gettext.sgml:
8997         * docs/gst/tmpl/old/gobject2gtk.sgml:
8998         * docs/gst/tmpl/old/grammar.tab.sgml:
8999         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9000         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9001         * docs/gst/tmpl/old/gst_private.sgml:
9002         * docs/gst/tmpl/old/gstaggregator.sgml:
9003         * docs/gst/tmpl/old/gstarch.sgml:
9004         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9005         * docs/gst/tmpl/old/gstbufferstore.sgml:
9006         * docs/gst/tmpl/old/gstdata_private.sgml:
9007         * docs/gst/tmpl/old/gstdisksink.sgml:
9008         * docs/gst/tmpl/old/gstdisksrc.sgml:
9009         * docs/gst/tmpl/old/gstelementfactory.sgml:
9010         * docs/gst/tmpl/old/gstextratypes.sgml:
9011         * docs/gst/tmpl/old/gstfakesink.sgml:
9012         * docs/gst/tmpl/old/gstfakesrc.sgml:
9013         * docs/gst/tmpl/old/gstfdsink.sgml:
9014         * docs/gst/tmpl/old/gstfdsrc.sgml:
9015         * docs/gst/tmpl/old/gstfilesink.sgml:
9016         * docs/gst/tmpl/old/gstfilesrc.sgml:
9017         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9018         * docs/gst/tmpl/old/gstidentity.sgml:
9019         * docs/gst/tmpl/old/gstindexfactory.sgml:
9020         * docs/gst/tmpl/old/gstmarshal.sgml:
9021         * docs/gst/tmpl/old/gstmd5sink.sgml:
9022         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9023         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9024         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9025         * docs/gst/tmpl/old/gstpipefilter.sgml:
9026         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9027         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9028         * docs/gst/tmpl/old/gstshaper.sgml:
9029         * docs/gst/tmpl/old/gstspider.sgml:
9030         * docs/gst/tmpl/old/gstspideridentity.sgml:
9031         * docs/gst/tmpl/old/gststatistics.sgml:
9032         * docs/gst/tmpl/old/gsttee.sgml:
9033         * docs/gst/tmpl/old/gsttimecache.sgml:
9034         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9035         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9036         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9037         * docs/gst/tmpl/old/types.sgml:
9038         * docs/gst/tmpl/types.sgml:
9039
9040         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9041         gtkdoc-scan doesn't like files with the same name in different
9042         directories.
9043         * gst/elements/Makefile.am:
9044         * gst/elements/gstelements.c:
9045         * gst/elements/gsttypefind.c: 
9046         * gst/elements/gsttypefind.h:
9047         * gst/elements/gsttypefindelement.c:
9048         * gst/elements/gsttypefindelement.h:
9049
9050 2004-04-28  David Schleef  <ds@schleef.org>
9051
9052         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9053         patch (bug #141317):
9054         * gst/gst-i18n-lib.h: Allow disabling gettext.
9055         * gst/gstatomic_impl.h: disable warning when it's dumb.
9056         * gst/gstclock.c: fix include
9057         * gst/gstcompat.h: fix variadic macro
9058         * gst/gstinfo.c: fix include
9059         * gst/gstmacros.h: add defines for inlines on MSVC
9060         * gst/gstplugin.c: fix includes
9061         * gst/gstregistry.c: fix includes
9062         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9063         * gst/gstsystemclock.c: fix include
9064         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9065         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9066         * gst/registries/gstxmlregistry.c:
9067         (gst_xml_registry_parse_element_factory): fix use of non-portable
9068         functions
9069         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9070         * libs/gst/control/dparammanager.h: same
9071
9072 2004-04-28  David Schleef  <ds@schleef.org>
9073
9074         Move a bunch of unused files to old/ with names that are
9075         not case-insensitive-unique.  These files still contain some
9076         useful information that needs to be merged into gstbin.sgml,
9077         etc., so they shouldn't be deleted yet.
9078         * docs/gst/tmpl/GstBin.sgml:
9079         * docs/gst/tmpl/GstBuffer.sgml:
9080         * docs/gst/tmpl/GstCaps.sgml:
9081         * docs/gst/tmpl/GstClock.sgml:
9082         * docs/gst/tmpl/GstCompat.sgml:
9083         * docs/gst/tmpl/GstData.sgml:
9084         * docs/gst/tmpl/GstElement.sgml:
9085         * docs/gst/tmpl/GstEvent.sgml:
9086         * docs/gst/tmpl/GstIndex.sgml:
9087         * docs/gst/tmpl/GstStructure.sgml:
9088         * docs/gst/tmpl/GstTag.sgml:
9089         * docs/gst/tmpl/old/GstBin.sgml:
9090         * docs/gst/tmpl/old/GstBuffer.sgml:
9091         * docs/gst/tmpl/old/GstCaps.sgml:
9092         * docs/gst/tmpl/old/GstClock.sgml:
9093         * docs/gst/tmpl/old/GstCompat.sgml:
9094         * docs/gst/tmpl/old/GstData.sgml:
9095         * docs/gst/tmpl/old/GstElement.sgml:
9096         * docs/gst/tmpl/old/GstEvent.sgml:
9097         * docs/gst/tmpl/old/GstIndex.sgml:
9098         * docs/gst/tmpl/old/GstStructure.sgml:
9099         * docs/gst/tmpl/old/GstTag.sgml:
9100
9101 2004-04-28  David Schleef  <ds@schleef.org>
9102
9103         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9104         (gst_caps_append), (gst_caps_append_structure),
9105         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9106         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9107         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9108         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9109         (gst_caps_intersect), (gst_caps_normalize),
9110         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9111         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9112         * gst/gstcaps.h: use GST_IS_CAPS().
9113
9114 2004-04-26  David Schleef  <ds@schleef.org>
9115
9116         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9117         assembly.  gcc doesn't handle it correctly. (bug #141083)
9118         * gst/gsttrashstack.h: same
9119
9120 2004-04-25  Benjamin Otte  <otte@gnome.org>
9121
9122         * gst/gstelement.c: (gst_element_change_state):
9123           fix assertion to do an int comparison
9124
9125 2004-04-25  Benjamin Otte  <otte@gnome.org>
9126
9127         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9128           better debugging output on error
9129
9130 2004-04-25  Benjamin Otte  <otte@gnome.org>
9131
9132         * gst/gstcaps.c: (gst_caps_subtract):
9133           fix memleak
9134
9135 2004-04-23  Benjamin Otte  <otte@gnome.org>
9136
9137         * gst/gstvalue.c: (gst_value_compare_buffer),
9138         (_gst_value_initialize):
9139           add comparison function for buffers
9140
9141 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9142
9143         * docs/pwg/pwg.xml:
9144           Just found out that this so-called "ima-wav" format is really
9145           just "dvi adpcm" (according to the MS WAV documentation). So
9146           renaming it. We didn't use it yet anyway.
9147
9148 2004-04-23  Benjamin Otte  <otte@gnome.org>
9149
9150         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9151           call gst_caps_is_subset
9152
9153 2004-04-23  Benjamin Otte  <otte@gnome.org>
9154
9155         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9156         (gst_caps_is_subset):
9157           add documentation
9158
9159 2004-04-23  Benjamin Otte  <otte@gnome.org>
9160           
9161         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9162         (gst_caps_structure_subtract), (gst_caps_subtract),
9163         (gst_caps_structure_figure_out_union),
9164         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9165           fix simplifying and subtracting not working correctly with optional
9166           properties
9167           solve assorted problems that make it now simplify ebven more
9168         * docs/gst/tmpl/gstcaps.sgml:
9169         * gst/gstcaps.h:
9170           make gst_caps_do_simplify return a bool to indicate if it simplified
9171         * testsuite/caps/simplify.c: (main):
9172           add more checks. The tests is quite a bit useless right now because
9173           the core is heavily simplifying itself.
9174         * testsuite/caps/caps.h:
9175           fix caps to contain all optional properties
9176
9177 2004-04-22  Benjamin Otte  <otte@gnome.org>
9178
9179         * docs/gst/tmpl/gstcaps.sgml:
9180         * docs/gst/tmpl/gstfilesrc.sgml:
9181         * docs/gst/tmpl/gststructure.sgml:
9182         * docs/gst/tmpl/gstvalue.sgml:
9183           update for recent API changes
9184         * gst/gstcaps.c: (gst_caps_do_simplify):
9185           fix to stop trying with a freed structure
9186         * gst/gstpad.c: (gst_pad_link_fixate):
9187           simplify caps
9188         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9189           remove C++ comment
9190         * gst/gstpad.h:
9191           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9192         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9193         (gst_structure_to_string):
9194           keep the correct type when using lists of ranges
9195         * gst/gstvalue.c: (gst_value_list_prepend_value),
9196         (gst_value_list_append_value):
9197           copy the value before adding to the list (d'oh)
9198         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9199         (gst_value_subtract_int_range_int_range):
9200           handle overflows correctly
9201         * gst/gstvalue.c: (gst_value_subtract_from_list):
9202           fix memleak
9203         * testsuite/caps/caps.h:
9204           add a caps that caused segfaults
9205
9206 2004-04-22  Benjamin Otte  <otte@gnome.org>
9207
9208         * testsuite/refcounting/pad.c: (main):
9209           fix test
9210
9211 2004-04-22  Benjamin Otte  <otte@gnome.org>
9212
9213         * gst/gstcaps.c: (gst_caps_subtract):
9214           allow subtracting ANY and EMPTY from ANY caps
9215
9216 2004-04-22  Benjamin Otte  <otte@gnome.org>
9217
9218         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9219         (gst_caps_union):
9220           only simplify in functions that create new caps. Simplifying in
9221           gst_caps_append breaks tests.
9222
9223 2004-04-22  Benjamin Otte  <otte@gnome.org>
9224
9225         * gst/gstcaps.c: (gst_caps_structure_simplify):
9226           unset GValue after use
9227         * gst/gstcaps.c: (gst_caps_append), 
9228         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9229           use gst_caps_simplify (reduces registry size by 30%)
9230         * gst/gstpad.c: (gst_pad_template_new):
9231           don't allow NULL caps
9232
9233 2004-04-22  Benjamin Otte  <otte@gnome.org>
9234
9235         * docs/gst/gstreamer-sections.txt:
9236           add gst_caps_do_simplify
9237         * gst/gstcaps.c:
9238           add documentation for gst_caps_do_simplify
9239         * gst/gstvalue.h:
9240           fix typo in gst_value_register_subtract_func declaration for gst-doc
9241
9242 2004-04-22  Benjamin Otte  <otte@gnome.org>
9243
9244         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9245           fix bug when converting from empty string.
9246         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9247         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9248           use gst_caps_new_empty to allocate a new caps. Only that function
9249           allocates memory for caps now.
9250         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9251         (gst_caps_remove_structure):
9252           add ability to remove one structure (but not to header yet)
9253         * gst/gstcaps.c: (gst_caps_compare_structures),
9254         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9255         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9256         * gst/gstcaps.h:
9257           add gst_caps_do_simplify that tries to simplify a caps in place.
9258           Deprecate old gst_caps_simplify function.
9259         * testsuite/caps/caps.h:
9260           add caps.h containing a common set of caps to test against.
9261         * testsuite/caps/sets.c: (check_caps), (main):
9262           use it.
9263         * testsuite/caps/.cvsignore:
9264         * testsuite/caps/Makefile.am:
9265         * testsuite/caps/simplify.c: (check_caps), (main):
9266           add test to check correctness and efficency of caps simplification.
9267
9268 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9269
9270         reviewed by Benjamin Otte  <otte@gnome.org>
9271
9272         * gst/gstparse.c: (_gst_parse_escape):
9273           Free the GString used in _gst_parse_escape()
9274
9275 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9276
9277         * gst/gstpad.c: (gst_pad_link_negotiate):
9278           refuse to link if the link is not possible
9279         * configure.ac:
9280         * testsuite/Makefile.am:
9281         * testsuite/negotiation/.cvsignore:
9282         * testsuite/negotiation/Makefile.am:
9283         * testsuite/negotiation/pad_link.c: (main):
9284           add test that checks the above behaviour
9285
9286 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9287
9288         * docs/gst/gstreamer-sections.txt:
9289           add newly added API
9290
9291 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9292
9293         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9294         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9295         (gst_filesrc_open_file), (gst_filesrc_close_file),
9296         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9297         * gst/elements/gstfilesrc.h:
9298           add support for non-regular files (#140734)
9299
9300 2004-04-21  Benjamin Otte  <otte@gnome.org>
9301
9302         * gst/gstpad.c: (gst_pad_link_fixate):
9303           add sophisticated error checking code to see if fixation functions
9304           did their fixation right
9305
9306 2004-04-21  Benjamin Otte  <otte@gnome.org>
9307
9308         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9309           check for ANY caps before appending/unioning
9310         * gst/gstcaps.c: (gst_caps_is_subset),
9311         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9312         (gst_caps_structure_subtract), (gst_caps_subtract):
9313         * gst/gstcaps.h:
9314           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9315           the API. deprecate gst_caps_is_equal_fixed
9316         * gst/gstpad.c: (gst_pad_try_set_caps):
9317         * gst/gstqueue.c: (gst_queue_link):
9318           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9319         * gst/gststructure.c: (gst_structure_get_name_id):
9320         * gst/gststructure.h:
9321           add function gst_structure_get_name_id
9322         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9323         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9324         (gst_value_subtract_int_range_int_range),
9325         (gst_value_subtract_double_double_range),
9326         (gst_value_subtract_double_range_double),
9327         (gst_value_subtract_double_range_double_range),
9328         (gst_value_subtract_from_list), (gst_value_subtract_list),
9329         (gst_value_can_intersect), (gst_value_subtract),
9330         (gst_value_can_subtract), (gst_value_register_subtract_func),
9331         (_gst_value_initialize):
9332         * gst/gstvalue.h:
9333           add support for subtracting values from each other. Note that
9334           subtracting means subtracting as in set theory. Required for caps
9335           stuff above.
9336         * testsuite/caps/.cvsignore:
9337         * testsuite/caps/Makefile.am:
9338         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9339         * testsuite/caps/sets.c: (check_caps), (main):
9340         * testsuite/caps/subtract.c: (check_caps), (main):
9341           add tests for subtraction and equality code.
9342
9343 2004-04-20  David Schleef  <ds@schleef.org>
9344
9345         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9346         * gst/indexers/Makefile.am:
9347         * gst/schedulers/Makefile.am:
9348         * libs/gst/bytestream/Makefile.am:
9349         * libs/gst/control/Makefile.am:
9350         * libs/gst/getbits/Makefile.am:
9351
9352 2004-04-20  David Schleef  <ds@schleef.org>
9353
9354         * common/as-libtool.mak: Fine-tune DLL building.
9355         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9356         (like gst-plugins)
9357         * examples/plugins/Makefile.am: remove plugindir
9358         * gst/autoplug/Makefile.am: DLL building fixes
9359         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9360         Windows.
9361         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9362         * gst/indexers/Makefile.am: DLL building fixes
9363         * gst/schedulers/Makefile.am: DLL building fixes.
9364         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9365         * libs/gst/control/Makefile.am: same
9366         * libs/gst/getbits/Makefile.am: same
9367         * testsuite/Makefile.am: New dlopen directory
9368         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9369         when dlopened.
9370         * testsuite/dlopen/dlopen_gst.c: (main): same
9371         * testsuite/dlopen/loadgst.c: (do_test): same
9372
9373 2004-04-20  David Schleef  <ds@schleef.org>
9374
9375         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9376         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9377
9378 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9379
9380         * gst/gstelement.c: (gst_element_wait),
9381         (gst_element_set_time_delay), (gst_element_change_state):
9382           Use GST_TIME_*
9383
9384 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9385
9386         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9387         (gst_spider_identity_plug):
9388           improve debugging messages
9389         * gst/gstbin.c: (gst_bin_remove_func):
9390           make sure the state_change function is only called with simple state
9391           transitions
9392
9393 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9394
9395         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9396         (gst_fakesink_set_property), (gst_fakesink_chain):
9397         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9398         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9399         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9400         * gst/elements/gstidentity.c: (gst_identity_chain),
9401         (gst_identity_set_property):
9402         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9403         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9404           add warnings to _set_property for unknown arguments
9405           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9406
9407 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9408
9409         * Makefile.am:
9410         * docs/manuals.mak:
9411           add .po file download snippet
9412           fix a bug in the doc makefile
9413
9414 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9415
9416         * Makefile.am:
9417         * po/LINGUAS:
9418         * po/en_GB.po:
9419           Added en_GB translation (Gareth Owen)
9420
9421 2004-04-20  Johan Dahlin  <johan@gnome.org>
9422
9423         * gst/gstpad.c (_invent_event): Clean up
9424
9425 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9426
9427         * testsuite/caps/filtercaps.c: (main):
9428           fix test to test things correctly (caps are complicated)
9429
9430 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9431
9432         * testsuite/caps/Makefile.am:
9433         * testsuite/caps/filtercaps.c: (main):
9434           add test (that doesn't work right now, but should)
9435
9436 2004-04-19  David Schleef  <ds@schleef.org>
9437
9438         * configure.ac: Add test for allowing unaligned access.  Add define
9439         to put in gstconfig.h.
9440         * docs/gst/gstreamer-sections.txt: New symbols
9441         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9442         * docs/gst/tmpl/gstfilesrc.sgml:
9443         * docs/gst/tmpl/gstparse.sgml:
9444         * docs/gst/tmpl/gsttypes.sgml:
9445         * docs/gst/tmpl/gstutils.sgml:
9446         * docs/gst/tmpl/gstvalue.sgml:
9447         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9448         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9449         on most !i386/!powerpc architectures.  From Daniel Gazard
9450         <daniel.gazard@free.fr>.  (bug #140156)
9451         * po/af.po: Check in changes made by gettext.
9452         * po/az.po:
9453         * po/fr.po:
9454         * po/nl.po:
9455         * po/sr.po:
9456         * po/sv.po:
9457
9458 2004-04-20  Benjamin Otte  <otte@gnome.org>
9459
9460         * gst/schedulers/entryscheduler.c: 
9461         (gst_entry_scheduler_yield):
9462           refuse to yield when decoupled elements insist on doing that.
9463           At least it's better than crashing
9464
9465 2004-04-19  David Schleef  <ds@schleef.org>
9466
9467         * docs/libs/Makefile.am: Change sinclude to include
9468         * docs/gst/Makefile.am: same
9469         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9470
9471 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9472
9473         * po/LINGUAS:
9474         * po/uk.po:
9475           Added Ukrainian translation (Maxim V. Dziumanenko)
9476
9477 2004-04-19  Johan Dahlin  <johan@gnome.org>
9478
9479         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9480         checking here, do it before calling the function.
9481         Clean up, use for loops instead of while loops while iterating
9482         over lists.
9483
9484         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9485         in debug message.
9486         (gst_spider_create_and_plug): Improve debug message.
9487         General: Replace while loops which iterates over GLists with for
9488         loops. Which are much cleaner, improves readability, especially
9489         for gst_spider_identity_plug
9490
9491         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9492         fixes bug 140477
9493
9494 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9495
9496         * po/LINGUAS:
9497         * po/tr.po:
9498           Added Turkish translation (Baris Cicek)
9499
9500 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9501
9502         * docs/faq/troubleshooting.xml:
9503           Mention gst-register in the FAQ (fixes 139045).
9504
9505 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9506
9507         * docs/gst/gstreamer-sections.txt:
9508
9509 2004-04-17  Benjamin Otte  <otte@gnome.org>
9510
9511         * gst/gstelement.c: (gst_element_dispose):
9512           simplify
9513         * gst/gstpad.c: (gst_pad_call_chain_function):
9514           don't create loads of events due to bad macro usage
9515
9516 2004-04-16  David Schleef  <ds@schleef.org>
9517
9518         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9519         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9520         * gst/gstvalue.c: (gst_value_serialize_buffer),
9521         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9522         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9523         to indicate types that are fixed wrt caps or not.  Switching to
9524         this function fixes (bug #140298).
9525         * gst/gstvalue.h:
9526
9527 2004-04-16  David Schleef  <ds@schleef.org>
9528
9529         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9530         for GST_UNALIGNED_ACESS, since we essentially know which archs
9531         are ok.
9532
9533 2004-04-17  Benjamin Otte  <otte@gnome.org>
9534
9535         * docs/gst/Makefile.am:
9536           ignore gst/parse directory when building docs (fixes #140205)
9537
9538 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9539
9540         * testsuite/refcounting/mem.c: (vmsize):
9541           do error checking
9542
9543 2004-04-16  Johan Dahlin  <johan@gnome.org>
9544
9545         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9546         and gst_pad_call_get_function.
9547
9548 2004-04-15  David Schleef  <ds@schleef.org>
9549
9550         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9551         checks if we can access unaligned memory.
9552         * configure.ac: Use it.
9553
9554 2004-04-16  Benjamin Otte  <otte@gnome.org>
9555
9556         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9557         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9558         * gst/elements/gstfilesrc.h:
9559           s/seek_happened/need_discont/ and require discont before sending any
9560           data
9561
9562 2004-04-15  David Schleef  <ds@schleef.org>
9563
9564         * gst/gstvalue.c: (gst_value_serialize_buffer),
9565         (gst_value_deserialize_buffer), (_gst_value_initialize):
9566         Register these types as fundamental types. (bug #140015)
9567
9568 2004-04-16  Benjamin Otte  <otte@gnome.org>
9569
9570         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9571         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9572         (gst_pad_pull):
9573           implement enforcing discont events before buffers are passed. This
9574           allows state changes of only some elements and later correctly going
9575           on where they left off (or in short: you can now set audio sinks to
9576           NULL to release the device when the pipeline is paused)
9577         * gst/gstpad.c: (gst_pad_call_chain_function),
9578         (gst_pad_call_get_function):
9579         * gst/gstpad.h:
9580           add gst_pad_call_chain_function and gst_pad_call_get_function for
9581           scheduler interaction. They are required because of the changes
9582           above.
9583         * gst/schedulers/entryscheduler.c: (get_buffer),
9584         (gst_entry_scheduler_chain_wrapper),
9585         (gst_entry_scheduler_get_wrapper),
9586         (gst_entry_scheduler_state_transition),
9587         (gst_entry_scheduler_pad_link):
9588         * gst/schedulers/gstbasicscheduler.c:
9589         (gst_basic_scheduler_chain_wrapper),
9590         (gst_basic_scheduler_src_wrapper),
9591         (gst_basic_scheduler_chainhandler_proxy),
9592         (gst_basic_scheduler_gethandler_proxy),
9593         (gst_basic_scheduler_cothreaded_chain),
9594         (gst_basic_scheduler_chain_elements):
9595         * gst/schedulers/gstoptimalscheduler.c:
9596         (get_group_schedule_function), (pad_clear_queued),
9597         (gst_opt_scheduler_pad_link):
9598           use the new functions instead of calling get/chain-functions
9599           directly.
9600
9601 2004-04-15  David Schleef  <ds@schleef.org>
9602
9603         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9604         * docs/gst/tmpl/gstinfo.sgml: same
9605         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
9606         gtk-doc put here.
9607         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
9608         * examples/queue/queue.c: (main):  We iterate pipelines, not
9609         bins.  (bug #139996)
9610
9611 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9612
9613         * docs/pwg/advanced-types.xml:
9614           Add MS RLE support. Also document Qt RLE although I have no sample
9615           files for that yet. And document an extra property for ADPCM.
9616
9617 2004-04-15  David Schleef  <ds@schleef.org>
9618
9619         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
9620         (_gst_plugin_fault_handler_setup):  Disable more stuff on
9621         Windows.
9622
9623 2004-04-15  David Schleef  <ds@schleef.org>
9624
9625         * gst/gstinfo.c: (_gst_debug_init): Change some internal
9626         symbol names to not conflict with new gstinfo.h symbols.
9627         * gst/gstinfo.h: Add inline functions for all those crazy
9628         compilers that don't know how to handle variadic macros (MSVC).
9629
9630 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9631
9632         * configure.ac: bump nano to 1
9633
9634 === release 0.8.1 ===
9635
9636 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9637
9638         * NEWS:
9639         * RELEASE:
9640         * configure.ac:
9641           releasing 0.8.1, "Snow Brigade"
9642
9643 2004-04-14  David Schleef  <ds@schleef.org>
9644
9645         * testsuite/Makefile.am: define tests_ignore
9646         * testsuite/Rules: Added new tests_ignore, which get compiled,
9647         but not run (generally because they're inconsistent or have
9648         heisenbugs).  Now we can ensure all the .c files compile in
9649         testsuite/.
9650         * testsuite/bins/Makefile.am: define tests_ignore
9651         * testsuite/bytestream/Makefile.am:
9652         * testsuite/caps/Makefile.am:
9653         * testsuite/clock/Makefile.am:
9654         * testsuite/debug/Makefile.am:
9655         * testsuite/debug/global.c: (gst_debug_log_one),
9656         (gst_debug_log_two): Fix compilation problem.
9657         * testsuite/dynparams/Makefile.am:
9658         * testsuite/elements/Makefile.am:
9659         * testsuite/ghostpads/Makefile.am:
9660         * testsuite/indexers/Makefile.am:
9661         * testsuite/parse/Makefile.am:
9662         * testsuite/plugin/Makefile.am:
9663         * testsuite/refcounting/Makefile.am:
9664         * testsuite/refcounting/element_pad.c: (main): Don't return leak
9665         results, because it's not calculated correctly.
9666         * testsuite/refcounting/pad.c: (main): same
9667         * testsuite/states/Makefile.am:
9668         * testsuite/tags/Makefile.am:
9669         * testsuite/threads/Makefile.am:
9670
9671 2004-04-14  David Schleef  <ds@schleef.org>
9672
9673         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
9674         generating bad code around the cpu detection asm code.
9675
9676 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9677
9678         * tools/gst-inspect.c: (print_element_info):
9679           print numeric version of rank as well, since we added some - 1
9680           rank values to elements
9681
9682 2004-04-13  David Schleef  <ds@schleef.org>
9683
9684         * configure.ac:  Disable various code when compiling for MinGW.
9685         * gst/elements/Makefile.am:
9686         * gst/elements/gstelements.c:
9687         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9688         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
9689         * gst/registries/gstxmlregistry.c: (make_dir):
9690
9691 2004-04-13  David Schleef  <ds@schleef.org>
9692
9693         * gst/Makefile.am:
9694         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
9695         assembly.
9696         * gst/gstcpuid_i386.s: remove
9697
9698 2004-04-13  David Schleef  <ds@schleef.org>
9699
9700         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
9701         seems to think it needs to be done.
9702         * docs/gst/tmpl/gstfakesink.sgml:
9703         * docs/gst/tmpl/gstfakesrc.sgml:
9704         * docs/gst/tmpl/gstfdsink.sgml:
9705         * docs/gst/tmpl/gstfdsrc.sgml:
9706         * docs/gst/tmpl/gstfilesink.sgml:
9707         * docs/gst/tmpl/gstfilesrc.sgml:
9708         * docs/gst/tmpl/gstidentity.sgml:
9709         * docs/gst/tmpl/gstmd5sink.sgml:
9710         * docs/gst/tmpl/gstmultifilesrc.sgml:
9711         * docs/gst/tmpl/gstpipefilter.sgml:
9712         * docs/gst/tmpl/gstshaper.sgml:
9713         * docs/gst/tmpl/gstspider.sgml:
9714         * docs/gst/tmpl/gstspideridentity.sgml:
9715         * docs/gst/tmpl/gststatistics.sgml:
9716         * docs/gst/tmpl/gsttee.sgml:
9717         * docs/gst/tmpl/gsttypefind.sgml:
9718         * docs/gst/tmpl/gstutils.sgml:
9719
9720 2004-04-13  David Schleef  <ds@schleef.org>
9721
9722         * configure.ac: Changes to remove POSIXisms (mmap in this case)
9723         and to build DLLs on Windows.
9724         * gst/Makefile.am:
9725         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9726         (gst_filesrc_open_file):
9727         * gst/schedulers/Makefile.am:
9728
9729 2004-04-13  David Schleef  <ds@schleef.org>
9730
9731         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
9732         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
9733         fixating lists.
9734
9735 2004-04-12  David Schleef  <ds@schleef.org>
9736
9737         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
9738         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
9739         to using it.
9740         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
9741         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
9742         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
9743         * gst/gststructure.c: (gst_structure_set_valist),
9744         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
9745         support for buffers.
9746         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
9747         intended to be const.
9748         * gst/gsttag.h: same
9749         * gst/gstvalue.c: (gst_value_serialize_buffer),
9750         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
9751         to (de)serialize buffers.
9752         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
9753         * testsuite/caps/string-conversions.c: (main):
9754         * testsuite/caps/value_serialize.c: add new test
9755
9756 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9757
9758         * docs/pwg/advanced-types.xml:
9759           Document MS video 1 (video/x-msvideocodec) mimetype/format.
9760
9761 2004-04-11  Benjamin Otte  <otte@gnome.org>
9762
9763         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
9764           rename categories to basic_*
9765         * gst/schedulers/gstbasicscheduler.c: 
9766         (gst_basic_scheduler_chain_wrapper),
9767         (gst_basic_scheduler_chainhandler_proxy),
9768         (gst_basic_scheduler_gethandler_proxy),
9769         (gst_basic_scheduler_eventhandler_proxy):
9770           debugging category fixes - put common stuff in log category
9771         * gst/schedulers/gstbasicscheduler.c: 
9772         (gst_basic_scheduler_chain_elements):
9773           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
9774           active and linking two active chains
9775
9776 2004-04-10  Benjamin Otte  <otte@gnome.org>
9777
9778         * docs/pwg/intro-preface.xml:
9779           fix dead links and remove reference to Wiki
9780
9781 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9782
9783         * gst/schedulers/gstbasicscheduler.c:
9784           make sure we can switch back to the main function if we're still in
9785           the main function (supposed to fix #139617)
9786         * gst/schedulers/gthread-cothreads.h:
9787           don't throw an error when switching to the same cothread
9788
9789 2004-04-09  Benjamin Otte  <otte@gnome.org>
9790
9791         * gst/gstbin.c: (gst_bin_get_type):
9792         * gst/gstclock.c: (gst_clock_get_type):
9793         * gst/gstindex.c: (gst_index_get_type):
9794         * gst/gstobject.c: (gst_object_get_type),
9795         (gst_signal_object_get_type):
9796         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
9797         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
9798         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
9799         * gst/gstqueue.c: (gst_queue_get_type):
9800         * gst/gstregistry.c: (gst_registry_get_type):
9801         * gst/gstsystemclock.c: (gst_system_clock_get_type):
9802         * gst/gstthread.c: (gst_thread_get_type):
9803           don't use memchunks for these objects, use malloc instead
9804
9805 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9806
9807         * docs/gst/.cvsignore:
9808         * docs/gst/Makefile.am:
9809         * docs/gst/gstreamer-sections.txt:
9810         * docs/gst/tmpl/gstaggregator.sgml:
9811         * docs/gst/tmpl/gstbuffer.sgml:
9812         * docs/gst/tmpl/gstclock.sgml:
9813         * docs/gst/tmpl/gstelement.sgml:
9814         * docs/gst/tmpl/gstfakesink.sgml:
9815         * docs/gst/tmpl/gstfakesrc.sgml:
9816         * docs/gst/tmpl/gstfdsink.sgml:
9817         * docs/gst/tmpl/gstfdsrc.sgml:
9818         * docs/gst/tmpl/gstfilesink.sgml:
9819         * docs/gst/tmpl/gstfilesrc.sgml:
9820         * docs/gst/tmpl/gstidentity.sgml:
9821         * docs/gst/tmpl/gstindex.sgml:
9822         * docs/gst/tmpl/gstinfo.sgml:
9823         * docs/gst/tmpl/gstmd5sink.sgml:
9824         * docs/gst/tmpl/gstmultifilesrc.sgml:
9825         * docs/gst/tmpl/gstpad.sgml:
9826         * docs/gst/tmpl/gstpipefilter.sgml:
9827         * docs/gst/tmpl/gstpipeline.sgml:
9828         * docs/gst/tmpl/gstpluginfeature.sgml:
9829         * docs/gst/tmpl/gstqueue.sgml:
9830         * docs/gst/tmpl/gstregistry.sgml:
9831         * docs/gst/tmpl/gstscheduler.sgml:
9832         * docs/gst/tmpl/gstshaper.sgml:
9833         * docs/gst/tmpl/gstspider.sgml:
9834         * docs/gst/tmpl/gstspideridentity.sgml:
9835         * docs/gst/tmpl/gststatistics.sgml:
9836         * docs/gst/tmpl/gstsystemclock.sgml:
9837         * docs/gst/tmpl/gsttee.sgml:
9838         * docs/gst/tmpl/gstthread.sgml:
9839         * docs/gst/tmpl/gsttypefind.sgml:
9840         * docs/gst/tmpl/gstutils.sgml:
9841           further doc build fixes
9842
9843 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9844
9845         * docs/gst/Makefile.am:
9846           make docs exit on scanning problems
9847           fix nonsrcdir build issues
9848         * docs/gst/gstreamer-sections.txt:
9849           adding stuff from -unused
9850         * gst/gstqueue.h:
9851           create GstQueueSize
9852         * gst/schedulers/cothreads_compat.h:
9853           fix cothread warnings
9854
9855 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9856
9857         * docs/gst/gstreamer-sections.txt:
9858           remove defines deprecated by Benjamin
9859
9860 2004-04-07  Benjamin Otte  <otte@gnome.org>
9861
9862         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9863           when the buffer is complete, don't check if other buffers are needed
9864         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
9865           check that the offset is >0 so we don't try to read before the
9866           beginning of the file
9867         * gst/gstpad.c: (gst_pad_set_pad_template):
9868           sink the template, so we don't end up with 130k pad templates
9869
9870 2004-04-06  Benjamin Otte  <otte@gnome.org>
9871
9872         * gst/autoplug/gstspider.c: (gst_spider_link_add):
9873           don't ref the element, adding already reffed it. And we didn't unref
9874           it later anyway... (huge memleak when you used many spider elements)
9875         * gst/gstelement.c: (gst_element_base_class_finalize):
9876         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
9877         (gst_element_register):
9878         * gst/gsturi.c: (gst_element_make_from_uri):
9879           use gst_object_(un)ref instead of g_object(un)ref
9880
9881 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9882
9883         * gst/gstbuffer.h:
9884           remove macro that wouldn't work anymore because struct member has
9885           been removed.
9886         * gst/schedulers/entryscheduler.c: (schedule_forward):
9887           fix segfault for unconnected pads
9888         
9889 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9890
9891         reviewed by David Schleef <ds@schleef.org>
9892
9893         * gst/gstinfo.h:
9894           *_FORMAT modifiers should require putting a % in front of them for
9895           consistency reasons.
9896
9897 2004-04-05  Colin Walters  <walters@redhat.com>
9898
9899         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
9900         space.
9901
9902 2004-04-05  Benjamin Otte  <otte@gnome.org>
9903
9904         * configure.ac:
9905         * gst/Makefile.am:
9906         * gst/gst_private.h:
9907         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
9908           add support for detecting if GStreamer runs inside valgrind.
9909           requires valgrind (d'oh) and --enable-debug for correct cdetection.
9910           print a big message in valgrind that GStreamer has detected it's
9911           running inside and might now use different code.
9912         * gst/gstmemchunk.c: (populate), (free_area),
9913         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
9914         (gst_mem_chunk_free):
9915           flag memchunks for valgrind, so it can detect leaking of chunks.
9916           This allows detecting leaks of GstBuffer and GstEvent correctly
9917           inside valgrind.
9918
9919 2004-04-05  David Schleef  <ds@schleef.org>
9920
9921         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
9922           jensgr@gmx.net (Jens Granseuer)
9923
9924 2004-04-05  David Schleef  <ds@schleef.org>
9925
9926         * gst/gstbuffer.c: (_gst_buffer_sub_free),
9927         (gst_buffer_default_free), (gst_buffer_default_copy),
9928         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
9929         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
9930         structures in one place.
9931
9932 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9933
9934         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
9935           (GST_TIME_FORMAT, GST_TIME_ARGS)
9936
9937 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9938
9939         * testsuite/elements/Makefile.am:
9940           disable test until it stops breaking make distcheck
9941
9942 2004-04-05  Johan Dahlin  <johan@gnome.org>
9943
9944         * po/sv.po: Updated translation
9945
9946 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9947
9948         * gst/gstplugin.c: (gst_plugin_load_file):
9949           fix segfault for when original plugin was loaded statically
9950
9951 2004-04-05  Benjamin Otte  <otte@gnome.org>
9952
9953         * testsuite/debug/category.c: (main):
9954         * testsuite/debug/commandline.c: (main):
9955         * testsuite/debug/output.c: (main):
9956           fix tests to work again with debugging enabled
9957
9958 2004-04-05  Benjamin Otte  <otte@gnome.org>
9959
9960         * gst/schedulers/gstbasicscheduler.c:
9961         (gst_basic_scheduler_pad_link):
9962           fix to work with recent scheduling changes
9963
9964 2004-04-05  Benjamin Otte  <otte@gnome.org>
9965
9966         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
9967         prepareChangeLog doesn't work when cvs indents):
9968           don't throw an error when no element can be scheduled, there's too
9969           many weird reasons why it doesn't work. Return STOPPED instead.
9970           decoupled elemts' schedulability doesn't depend on bufpens.
9971
9972 2004-04-04  Benjamin Otte  <otte@gnome.org>
9973
9974         * gst/schedulers/gstbasicscheduler.c:
9975         (gst_basic_scheduler_pad_select):
9976           fix uninitialized variable warnings
9977
9978 2004-04-04  Benjamin Otte  <otte@gnome.org>
9979
9980         * gst/gstpad.c: (gst_pad_collect_valist):
9981           fix uninitialized variable warning
9982         * gst/schedulers/entryscheduler.c: (schedule_forward):
9983           fix shadowed variable
9984
9985 2004-04-04  Benjamin Otte  <otte@gnome.org>
9986
9987         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
9988         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
9989         (gst_pad_select):
9990         * gst/gstpad.h:
9991         * gst/gstscheduler.c: (gst_scheduler_pad_select),
9992         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
9993         * gst/gstscheduler.h:
9994           implement gst_pad_collect as replacement for gst_pad_select.
9995           deprecate gst_pad_select and gst_scheduler_(un)lock_element
9996           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
9997           new pad_select, lock and unlock calls.
9998         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
9999         * gst/cothreads.h:
10000         * gst/schedulers/cothreads_compat.h:
10001         * gst/schedulers/gthread-cothreads.h:
10002           remove unused cothread_lock and cothread_unlock calls
10003         * gst/schedulers/entryscheduler.c:
10004         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10005         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10006         (gst_entry_scheduler_pad_select):
10007           update to new API
10008         * gst/schedulers/gstbasicscheduler.c:
10009         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10010         (gst_basic_scheduler_pad_select):
10011           remove useless lock and unlock calls, update pad_select to new API
10012           (untested)
10013         * gst/schedulers/gstoptimalscheduler.c:
10014         (gst_opt_scheduler_class_init):
10015           remove useless select, lock and unlock function calls
10016         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10017           use gst_pad_collect instead of gst_pad_select
10018
10019 2004-04-04  Benjamin Otte  <otte@gnome.org>
10020
10021         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10022         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10023         (schedule_next_element), (print_entry):
10024           add can_schedule_pad to handle element states.
10025           add schedule_forward to select the correct entry to schedule next
10026
10027 2004-04-03  Benjamin Otte  <otte@gnome.org>
10028
10029         * gst/schedulers/entryscheduler.c: 
10030           remove unused variable, fix error inside Rb, fix compile warning in
10031           unreachable code
10032
10033 2004-04-03  Benjamin Otte  <otte@gnome.org>
10034
10035         * gst/schedulers/entryscheduler.c:
10036           completely revamp the inner workings, so it's a lot easier to
10037           understand and extend
10038
10039 2004-04-03  Andy Wingo  <wingo@pobox.com>
10040
10041         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10042         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10043         This allows better introspection of pipeline topology.
10044         (add_to_chain): Don't do trickery to put loop elements first;
10045         rather, queue a chain sort by marking the chain as dirty.
10046         (remove_from_chain): Mark the chain dirty.
10047         (sort_chain): New function. Sorts the group list so that terminal
10048         sinks are first. This means elements on the sink side will be
10049         preferentially sscheduled before elements on the src side of the
10050         pipeline.
10051         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10052         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10053         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10054         (group_inc_link): Change argument and variable names to match the
10055         new link structure member names (src and sink).
10056         (group_dec_link): Add some description
10057
10058 2004-04-03  Benjamin Otte  <otte@gnome.org>
10059
10060         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10061         * gst/gstinfo.h:
10062         * testsuite/debug/category.c: (main):
10063         * testsuite/debug/commandline.c: (main):
10064         * testsuite/debug/output.c: (main):
10065         * testsuite/debug/printf_extension.c: (main):
10066           fix to successfully build and test with --disable-gst-debug
10067           configure switch (fixes #138705)
10068
10069 2004-04-03  Benjamin Otte  <otte@gnome.org>
10070
10071         * docs/pwg/building-boiler.xml:
10072           add cvs login line and s/anonymous/anoncvs/
10073
10074 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10075
10076         reviewed by Benjamin Otte  <otte@gnome.org>
10077
10078         * gst/gststructure.c: (gst_structure_free):
10079           memleak fix: free fields array (partial fix for #134839)
10080
10081 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10082
10083         * docs/random/ds/0.9-suggested-changes:
10084           Add a note to change handoff use in fakesrc to be usable in
10085           a more generic way (fakesrc should be renamed to appsrc or so).
10086         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10087           Change signal type to scope, so we can fill the buffer in the
10088           handoff handler (that's the whole use of this signal...).
10089
10090 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10091
10092         * docs/pwg/other-ntoone.xml:
10093           Document muxers and n-to-1 elements.
10094
10095 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10096
10097         * gst/registries/gstxmlregistry.c
10098         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10099         determine if a file is a G_MODULE. The old one discards paths
10100         containing "so" somewhere in the middle. My home directory is
10101         called "soto". Go figure...
10102
10103 2004-03-31  David Schleef  <ds@schleef.org>
10104
10105         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10106         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10107         * gst/gstbuffer.h:
10108
10109 2004-03-31  David Schleef  <ds@schleef.org>
10110
10111         * gst/gstvalue.c: (gst_value_union_int_int_range),
10112         (gst_value_union_int_range_int_range), (gst_value_can_union),
10113         (gst_value_union), (_gst_value_initialize):  Add some union
10114         implementations.  We didn't have any previously.
10115         * testsuite/caps/Makefile.am:
10116         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10117         (gst_audioscale_getcaps), (test_caps), (main): A little test
10118         that is the same as the caps manipulation in audioscale.
10119
10120 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10121
10122         * docs/faq/general.xml:
10123           add entry about "does gst support format X?"
10124
10125 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10126
10127         * gst/gstthread.c:
10128           fix docs
10129         * gst/gstutils.h:
10130           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10131
10132 2004-03-30  Benjamin Otte  <otte@gnome.org>
10133
10134         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10135           set the offset of the buffer to the requested offset
10136         * gst/elements/gsttypefind.c: (stop_typefinding):
10137           revert patch 1.18 (which I unfortunately don't know the reason for).
10138           This is needed to allow downstream elements to seek. Otherwise
10139           typefind might overwrite a previous seek by downstream elements.
10140           This lead to errors with id3tag and typefind on some mp3s.
10141         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10142         (gst_entry_scheduler_iterate):
10143           be more verbose when debugging
10144
10145 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10146
10147         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10148           make sure we don't get NULL strings
10149
10150 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10151
10152         * gst/gstcaps.c:
10153         * gst/gstelement.c:
10154         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10155         * gst/gstindex.c: (gst_index_resolver_get_type),
10156         (gst_index_get_type), (gst_index_factory_get_type):
10157         * gst/gstinfo.c:
10158         * gst/gstpad.c:
10159         * gst/gstplugin.c:
10160         * gst/gsturi.c: (gst_uri_handler_get_type):
10161         * gst/gstvalue.c:
10162           first batch of documentation fixes
10163
10164 2004-03-29  David Schleef  <ds@schleef.org>
10165
10166         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10167         * docs/gst/gstreamer-docs.sgml:  More hacking
10168         * docs/gst/gstreamer-sections.txt:
10169         * docs/gst/tmpl/cothreads_compat.sgml:
10170         * docs/gst/tmpl/gstcaps.sgml:
10171         * docs/gst/tmpl/gstclock.sgml:
10172         * docs/gst/tmpl/gstelement.sgml:
10173         * docs/gst/tmpl/gstevent.sgml:
10174         * docs/gst/tmpl/gstpad.sgml:
10175         * docs/gst/tmpl/gstutils.sgml:
10176         * docs/gst/tmpl/gstxml.sgml:
10177         * docs/gst/tmpl/gthread-cothreads.sgml:
10178         * docs/random/ds/0.9-suggested-changes:
10179         * gst/elements/gstfakesink.h: doc fixes
10180         * gst/elements/gstfakesrc.h: doc fixes
10181         * gst/gstcaps.c: doc fixes
10182         * gst/gstcaps.h: doc fixes
10183         * gst/gstelement.c: doc fixes
10184         * gst/gstelement.h: doc fixes
10185         * gst/gstindex.c: doc fixes
10186         * gst/gstinfo.c: doc fixes
10187         * gst/gstpad.c: doc fixes
10188         * gst/gstpad.h: doc fixes
10189         * gst/gstplugin.c: doc fixes
10190         * gst/gsttypefind.h: doc fixes
10191         * gst/gsturi.c: doc fixes
10192         * gst/gstvalue.c: doc fixes
10193
10194 2004-03-29  Colin Walters  <walters@redhat.com>
10195
10196         * gst/registries/gstxmlregistry.c (get_time)
10197         (plugin_times_older_than_recurse):
10198         Use the result of stat to determine whether a path is a file,
10199         so we don't attempt to opendir() files.
10200
10201 2004-03-29  Benjamin Otte  <otte@gnome.org>
10202
10203         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10204           print caps in debugging output when setting caps failed
10205         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10206         (schedule_next_element), (get_buffer), (run_chainhandler),
10207         (element_may_start), (gst_entry_scheduler_chain_handler),
10208         (gst_entry_scheduler_get_handler),
10209         (gst_entry_scheduler_state_transition),
10210         (gst_entry_scheduler_pad_link):
10211           make this scheduler a testcase for mandatory
10212           discont-before-first-buffer which is needed if we want to allow apps
10213           to release the sound device.
10214           add SCHED_ASSERT macro to print scheduler state before an assertion
10215           triggers.
10216
10217 2004-03-29  Benjamin Otte  <otte@gnome.org>
10218
10219         * COPYING:
10220           replace by LGPL (former COPYING.LIB). The core is completely
10221           licensed LGPL.
10222         * COPYING.LIB:
10223           remove
10224
10225 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10226
10227         * po/af.po:
10228         * po/sv.po:
10229           updated Afrikaans and Swedish
10230
10231 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10232
10233         * po/LINGUAS:
10234         * po/az.po:
10235           adding Azerbaijani (Mətin Əmirov)
10236
10237 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10238
10239         * gst/gstelement.h: 
10240         * gst/gstelement.c (gst_element_set_time_delay): New function for
10241         setting element time taking into account a hardware buffering
10242         delay.
10243         (gst_element_set_time): Now just an invocation of
10244         gst_element_set_time_delay.
10245         * gst/gstclock.h: 
10246         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10247         allowing to set event times in the future.
10248         (gst_clock_get_event_time): Now just an invocation of
10249         gst_clock_get_event_time_delay.
10250
10251 2004-03-28  Benjamin Otte  <otte@gnome.org>
10252
10253         * gst/gstbin.c: (gst_bin_set_element_sched),
10254         (gst_bin_unset_element_sched):
10255           don't add decoupled elements to schedulers - otherwise it's
10256           impossible to control if a link to a decoupled element was already
10257           removed from a scheduler or not.
10258         * gst/schedulers/cothreads_compat.h:
10259         * gst/schedulers/gthread-cothreads.h:
10260           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10261           is no "unused" warning.
10262         * gst/schedulers/Makefile.am:
10263         * gst/schedulers/entryscheduler.c:
10264           add new scheduler, based on ideas from talking to David and Martin.
10265           It's supposed to be small and correct. Currently it's also slow (but
10266           it's not noticable)
10267         * examples/retag/retag.c: (main):
10268         * testsuite/bytestream/test1.c: (main):
10269           fix missing NULLs at end of variadic functions
10270         * testsuite/elements/.cvsignore:
10271           update
10272
10273 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10274
10275         * gst/gstevent.h:
10276         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10277
10278 2004-03-25  David Schleef  <ds@schleef.org>
10279
10280         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10281         * docs/gst/tmpl/gstaggregator.sgml:
10282         * docs/gst/tmpl/gstautoplugfactory.sgml:
10283         * docs/gst/tmpl/gstbin.sgml:
10284         * docs/gst/tmpl/gstbuffer.sgml:
10285         * docs/gst/tmpl/gstbufferstore.sgml:
10286         * docs/gst/tmpl/gstfakesink.sgml:
10287         * docs/gst/tmpl/gstfakesrc.sgml:
10288         * docs/gst/tmpl/gstmd5sink.sgml:
10289         * docs/gst/tmpl/gstreamer-unused.sgml:
10290         * docs/gst/tmpl/gstsearchfuncs.sgml:
10291         * docs/gst/tmpl/gstshaper.sgml:
10292         * docs/gst/tmpl/gstspider.sgml:
10293         * docs/gst/tmpl/gsttee.sgml:
10294         * docs/gst/tmpl/gstutils.sgml:
10295         * docs/gst/tmpl/gstvalue.sgml:
10296         * docs/gst/tmpl/gstxml.sgml:
10297         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10298         and we don't support it.
10299         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10300         (gst_use_threads), (gst_has_threads): same
10301         * gst/gstthreaddummy.c: same
10302         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10303         * gst/autoplug/gstspider.h: same
10304         * gst/elements/gstaggregator.h: Remove bogus function from header
10305         * gst/elements/gstfakesink.h: same
10306         * gst/elements/gstfakesrc.h: same
10307         * gst/elements/gstmd5sink.h: same
10308         * gst/elements/gstshaper.h: same
10309         * gst/elements/gsttee.h: same
10310         * gst/gstbin.c: doc fixes
10311         * gst/gstbin.h: Remove unused definition.
10312         * gst/gstbuffer.c: doc fixes
10313         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10314         * gst/gstfilter.c: doc fixes
10315         * gst/gsttag.c: doc fixes
10316         * gst/gstvalue.c: doc fixes
10317
10318 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10319
10320         * docs/pwg/advanced-types.xml:
10321           Document typefinding.
10322         * docs/pwg/other-oneton.xml:
10323           Document one-to-n elements, demuxers and parsers.
10324
10325 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10326
10327         reviewed by: David Schleef  <ds@schleef.org>
10328
10329         * configure.ac: Check bison version (bug #127838)
10330
10331 2004-03-25  David Schleef  <ds@schleef.org>
10332
10333         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10334         * docs/gst/gstreamer-sections.txt:
10335         * docs/gst/tmpl/gstautoplug.sgml:
10336         * docs/gst/tmpl/gststaticautoplug.sgml:
10337         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10338         * docs/gst/tmpl/gstutils.sgml:
10339         * docs/gst/tmpl/gstxml.sgml:
10340
10341 2004-03-24  David Schleef  <ds@schleef.org>
10342
10343         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10344         manual being such complete crap, that I decided to do major
10345         hacking of it.  This checkin replaces any fine tuning that
10346         may have been done previously, with the benefit of actually
10347         being complete for much of the API that was changed since
10348         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10349         * docs/gst/gstreamer-sections.txt:
10350         * docs/gst/tmpl/GstBin.sgml:
10351         * docs/gst/tmpl/GstBuffer.sgml:
10352         * docs/gst/tmpl/GstCaps.sgml:
10353         * docs/gst/tmpl/GstClock.sgml:
10354         * docs/gst/tmpl/GstCompat.sgml:
10355         * docs/gst/tmpl/GstData.sgml:
10356         * docs/gst/tmpl/GstElement.sgml:
10357         * docs/gst/tmpl/GstEvent.sgml:
10358         * docs/gst/tmpl/GstIndex.sgml:
10359         * docs/gst/tmpl/GstStructure.sgml:
10360         * docs/gst/tmpl/GstTag.sgml:
10361         * docs/gst/tmpl/cothreads.sgml:
10362         * docs/gst/tmpl/cothreads_compat.sgml:
10363         * docs/gst/tmpl/gettext.sgml:
10364         * docs/gst/tmpl/grammar.tab.sgml:
10365         * docs/gst/tmpl/gst-i18n-app.sgml:
10366         * docs/gst/tmpl/gst-i18n-lib.sgml:
10367         * docs/gst/tmpl/gst.sgml:
10368         * docs/gst/tmpl/gst_private.sgml:
10369         * docs/gst/tmpl/gstaggregator.sgml:
10370         * docs/gst/tmpl/gstarch.sgml:
10371         * docs/gst/tmpl/gstatomic.sgml:
10372         * docs/gst/tmpl/gstatomic_impl.sgml:
10373         * docs/gst/tmpl/gstbin.sgml:
10374         * docs/gst/tmpl/gstbuffer.sgml:
10375         * docs/gst/tmpl/gstbufferstore.sgml:
10376         * docs/gst/tmpl/gstcaps.sgml:
10377         * docs/gst/tmpl/gstclock.sgml:
10378         * docs/gst/tmpl/gstcompat.sgml:
10379         * docs/gst/tmpl/gstconfig.sgml:
10380         * docs/gst/tmpl/gstcpu.sgml:
10381         * docs/gst/tmpl/gstdata.sgml:
10382         * docs/gst/tmpl/gstdata_private.sgml:
10383         * docs/gst/tmpl/gstelement.sgml:
10384         * docs/gst/tmpl/gstenumtypes.sgml:
10385         * docs/gst/tmpl/gsterror.sgml:
10386         * docs/gst/tmpl/gstevent.sgml:
10387         * docs/gst/tmpl/gstfakesink.sgml:
10388         * docs/gst/tmpl/gstfakesrc.sgml:
10389         * docs/gst/tmpl/gstfilesink.sgml:
10390         * docs/gst/tmpl/gstfilter.sgml:
10391         * docs/gst/tmpl/gstindex.sgml:
10392         * docs/gst/tmpl/gstinfo.sgml:
10393         * docs/gst/tmpl/gstinterface.sgml:
10394         * docs/gst/tmpl/gstlog.sgml:
10395         * docs/gst/tmpl/gstmacros.sgml:
10396         * docs/gst/tmpl/gstmarshal.sgml:
10397         * docs/gst/tmpl/gstmd5sink.sgml:
10398         * docs/gst/tmpl/gstmultifilesrc.sgml:
10399         * docs/gst/tmpl/gstobject.sgml:
10400         * docs/gst/tmpl/gstpad.sgml:
10401         * docs/gst/tmpl/gstparse.sgml:
10402         * docs/gst/tmpl/gstpipeline.sgml:
10403         * docs/gst/tmpl/gstplugin.sgml:
10404         * docs/gst/tmpl/gstpluginfeature.sgml:
10405         * docs/gst/tmpl/gstqueue.sgml:
10406         * docs/gst/tmpl/gstreamer-unused.sgml:
10407         * docs/gst/tmpl/gstregistry.sgml:
10408         * docs/gst/tmpl/gstregistrypool.sgml:
10409         * docs/gst/tmpl/gstscheduler.sgml:
10410         * docs/gst/tmpl/gstsearchfuncs.sgml:
10411         * docs/gst/tmpl/gstshaper.sgml:
10412         * docs/gst/tmpl/gstspider.sgml:
10413         * docs/gst/tmpl/gstspideridentity.sgml:
10414         * docs/gst/tmpl/gststructure.sgml:
10415         * docs/gst/tmpl/gstsystemclock.sgml:
10416         * docs/gst/tmpl/gsttag.sgml:
10417         * docs/gst/tmpl/gsttaginterface.sgml:
10418         * docs/gst/tmpl/gsttee.sgml:
10419         * docs/gst/tmpl/gstthread.sgml:
10420         * docs/gst/tmpl/gsttrace.sgml:
10421         * docs/gst/tmpl/gsttrashstack.sgml:
10422         * docs/gst/tmpl/gsttypefind.sgml:
10423         * docs/gst/tmpl/gsttypes.sgml:
10424         * docs/gst/tmpl/gsturi.sgml:
10425         * docs/gst/tmpl/gsturitype.sgml:
10426         * docs/gst/tmpl/gstutils.sgml:
10427         * docs/gst/tmpl/gstvalue.sgml:
10428         * docs/gst/tmpl/gstversion.sgml:
10429         * docs/gst/tmpl/gstxml.sgml:
10430         * docs/gst/tmpl/gstxmlregistry.sgml:
10431         * docs/gst/tmpl/gthread-cothreads.sgml:
10432         * docs/gst/tmpl/types.sgml:
10433
10434 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10435
10436         * docs/pwg/other-sink.xml:
10437         * docs/pwg/other-source.xml:
10438           Documentation on how to write source and sink elements. Other
10439           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10440           manager, autoplugger) are all still pending.
10441
10442 2004-03-25  Benjamin Otte  <otte@gnome.org>
10443
10444         * testsuite/elements/Makefile.am:
10445         * testsuite/elements/gst-compprep-check:
10446           add check to make sure gst-compprep works
10447         * testsuite/elements/gst-inspect-check.in:
10448           improve initialization output
10449         * testsuite/Makefile.am:
10450         * testsuite/gst-inspect-check:
10451           remove old file
10452
10453 2004-03-24  David Schleef  <ds@schleef.org>
10454
10455         * testsuite/elements/Makefile.am:
10456         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10457         to the testsuite.
10458
10459 2004-03-24  Benjamin Otte  <otte@gnome.org>
10460
10461         * libs/gst/control/dparam.c: (gst_dparam_attach),
10462         (gst_dparam_detach):
10463         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10464           fix lvalue casts for real
10465
10466 2004-03-24  Benjamin Otte  <otte@gnome.org>
10467
10468         * gst/schedulers/gstbasicscheduler.c:
10469         (gst_basic_scheduler_src_wrapper):
10470         * gst/schedulers/gstoptimalscheduler.c:
10471         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10472         (pad_clear_queued), (gst_opt_scheduler_add_element),
10473         (gst_opt_scheduler_remove_element):
10474           fix GStreamer to not have issues with lvalue casts anymore (fixes
10475           #136841)
10476
10477 2004-03-24  Benjamin Otte  <otte@gnome.org>
10478
10479         * gst/gstelement.c:
10480           add documentation about a gobject quirk where the object hasn't the
10481           correct class pointer set on initialization
10482         * gst/schedulers/gstbasicscheduler.c:
10483         (gst_basic_scheduler_src_wrapper):
10484           make sure to not run into an infinite loop
10485
10486 2004-03-22  Benjamin Otte  <otte@gnome.org>
10487
10488         * gst/gstutils.c: (gst_util_dump_mem):
10489         * gst/gstutils.h:
10490           first argument of gst_util_dump_mem should be const
10491
10492 2004-03-22  Johan Dahlin  <johan@gnome.org>
10493
10494         * gst/gstvalue.h: Clean up a little bit.
10495
10496 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10497
10498         reviewed by Benjamin Otte  <otte@gnome.org>
10499
10500         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10501         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10502         (gst_aggregator_class_init), (gst_aggregator_init):
10503         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10504         (gst_filesrc_dispose), (gst_filesrc_set_location):
10505         * gst/elements/gstidentity.c: (gst_identity_finalize),
10506         (gst_identity_class_init), (gst_identity_chain):
10507         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10508         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10509         (gst_statistics_class_init):
10510         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10511         (gst_tee_get_property):
10512           clean up used memory in this elements correctly on teardown (closes
10513           #137279)
10514
10515 2004-03-20  Colin Walters  <walters@redhat.com>
10516
10517         * gst/registries/gstxmlregistry.c:
10518         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10519         registry saving atomic.
10520
10521 2004-03-20  Colin Walters  <walters@redhat.com>
10522
10523         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10524         Just use
10525         access() instead of actually creating and deleting files.
10526
10527 2004-03-18  David Schleef  <ds@schleef.org>
10528
10529         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10530         (bug #137625)
10531
10532 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10533
10534         * po/sv.po: updated translation (Christian Rose)
10535
10536 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10537
10538         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10539         (gst_filesink_get_query_types), (_do_init),
10540         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10541           return FALSE silently
10542         * po/af.po: updated translation (Petri Jooste)
10543
10544 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10545
10546         * Makefile.am:
10547         * configure.ac:
10548           dist common properly
10549         * po/af.po:
10550         * po/fr.po:
10551         * po/nl.po:
10552         * po/sr.po:
10553         * po/sv.po:
10554           refreshing translations
10555
10556 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10557
10558         * po/LINGUAS:
10559         * po/sv.po:
10560         * po/af.po:
10561           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10562
10563 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10564
10565         * Makefile.am: use common/release.mak
10566
10567 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10568
10569         * docs/faq/gst-uninstalled:
10570           adding gst-monkeysaudio to the list of possible plugin dirs
10571
10572 2004-03-16  David Schleef  <ds@schleef.org>
10573
10574         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10575         (gst_init_check_with_popt_table):  Fix some gettext strings to
10576         make them easier to translate.  Required making the strings
10577         non-const.
10578
10579 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10580
10581         * configure.ac: bump nano to 1
10582
10583 === release 0.8.0 ===
10584
10585 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10586
10587         * configure.ac: release 0.8.0, "Executive Slacks"
10588
10589 2004-03-16  Johan Dahlin  <johan@gnome.org>
10590
10591         * gst/schedulers/gstoptimalscheduler.c
10592         (gst_opt_scheduler_pad_unlink): Remove double ;,
10593         spotted by Scott Wheeler
10594
10595 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10596
10597         * configure.ac: bump libtool version
10598
10599 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10600
10601         * gst/gstcaps.h:
10602         * gst/gststructure.h:
10603           add reserved padding
10604
10605 2004-03-15  Benjamin Otte  <otte@gnome.org>
10606
10607         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10608           set the first parameter for select call correctly.
10609           (fixes #137230)
10610
10611 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10612
10613         * *.c,*.h: don't mix tabs and spaces
10614
10615 2004-03-15  Johan Dahlin  <johan@gnome.org>
10616
10617         * gst/schedulers/gstoptimalscheduler.c
10618         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
10619         crash on MPEG playback. My boolean arithmetic is a bit rusty.
10620
10621         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
10622         
10623 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10624
10625         * testsuite/Rules:
10626           fix gst-register rules
10627
10628 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10629
10630         * testsuite/Rules:
10631           use versioned gst-register
10632
10633 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10634
10635         * docs/libs/gstreamer-libs-sections.txt:
10636           remove </SUBSECTION>
10637         * gst/gstplugin.c:
10638         * gst/gstregistry.c: (gst_registry_add_plugin):
10639         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
10640         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
10641           add debugging and fix some comment blocks
10642
10643 2004-03-15  Johan Dahlin  <johan@gnome.org>
10644
10645         * *.h: Revert indent changes.
10646         
10647 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10648
10649         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
10650           g_error_free the g_error
10651         * tools/gst-feedback-m.m:
10652           check for other versions of gstreamer
10653         * tools/gst-indent:
10654           use sh, not bash
10655
10656 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10657
10658         * tools/gst-register.c: do not spill paths when registries are not
10659           writable, until we fix the "user running gst-register" case.
10660
10661 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10662
10663         * *.c, *.h: commit of gst-indent run on core
10664
10665 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10666
10667         * tools/gst-indent:
10668         * tools/Makefile.am:
10669           add our indentation style as a script
10670
10671 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10672
10673         * po/sr.po:
10674         * po/LINGUAS:
10675           added Serbian translation
10676
10677 2004-03-13  Benjamin Otte  <otte@gnome.org>
10678
10679         * gst/gstelement.c:
10680           add documentation note about gst_element_found_tags_for_pad not
10681           being usable in getfunctions. (see #137042)
10682
10683 2004-03-12  David Schleef  <ds@schleef.org>
10684
10685         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
10686         change API right now!  Readd gst_caps_is_simple() macro.
10687         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
10688         uninitialized variable.  I'd bet this caused crashes.
10689         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
10690
10691 2004-03-12  Johan Dahlin  <johan@gnome.org>
10692
10693         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
10694         * gst/gstcaps.h: Clean up
10695
10696         * gst/gst.c (init_post): call gst_caps_get_type() instead of
10697         _gst_caps_initalize()
10698
10699         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
10700         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
10701
10702         * gst/gststructure.c (gst_structure_get_type): Ditto
10703
10704         * gst/gststructure.h: Ditto
10705         
10706 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10707
10708         * gst/gstqueue.c: (gst_queue_init):
10709           Reset default max. values in queues. Reason is simply to avoid
10710           braindead use. If you want wider values, use the properties. The
10711           default is supposed to always work. Wider values would make this
10712           beast a memory hog by default (250 full-PAL RGB32 video frames?
10713           That's 440 MB! No thank you).
10714
10715 2004-03-10  David Schleef  <ds@schleef.org>
10716
10717         * tools/gst-run.c: (main):  Fix crash when no relevant tools
10718         were found.  (bug #136793)
10719
10720 2004-03-10  Johan Dahlin  <johan@gnome.org>
10721
10722         * gst/schedulers/gstoptimalscheduler.c
10723         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
10724         links to elements within the same group, so we can finally remove
10725         that annoying warning. Refactor the code a little bit
10726         (group_dec_links_for_element): Split out
10727
10728 2004-03-09  David Schleef  <ds@schleef.org>
10729
10730         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
10731         (bug #134863)
10732
10733 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10734
10735         * configure.ac: first bug fix due to major/minor bump
10736
10737 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10738
10739         * configure.ac: bump nano to 1
10740
10741 === release 0.7.6 ===
10742
10743 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10744
10745         * NEWS:
10746         * RELEASE:
10747         * configure.ac:
10748           releasing 0.7.6, "Almost"
10749         * po/fr.po:
10750         * po/nl.po:
10751         * tools/Makefile.am:
10752         * tools/gst-feedback-m.m:
10753           unversioned source
10754
10755 2004-03-09  Johan Dahlin  <johan@gnome.org>
10756
10757         Reviewed by: Thomas Vander Stichele
10758
10759         * gst/gstelement.c (gst_element_class_init): register second
10760         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
10761         language bindings can (de)marshall correctly.
10762
10763         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
10764
10765         * gst/gsterror.c (gst_g_error_get_type): New function
10766
10767         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
10768         with VOID:OBJECT,OBJECT,STRING 
10769
10770 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
10771
10772         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
10773         Free a leaked g_timer on early returns.
10774
10775 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10776
10777         * docs/pwg/advanced-types.xml:
10778           Add cinepak description.
10779
10780 2004-03-07  David Schleef  <ds@schleef.org>
10781
10782         * docs/random/mimetypes:  Added cinepak description
10783
10784 2004-03-07  Andy Wingo  <wingo@pobox.com>
10785
10786         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
10787
10788         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
10789         there are no links to other groups when a group is destroyed.
10790         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
10791         removed from a group, make sure the link count to elements linked
10792         to other pads is appropriately decremented. This really fixes
10793         #135672.
10794
10795         The 1.60->1.61 patch has been reapplied in light of this fix.
10796
10797         * gst/gstelement.c (gst_element_dispose): Really protect against
10798         multiple invocations this time.
10799
10800 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10801
10802         * docs/gst/gstreamer-sections.txt:
10803         * docs/gst/tmpl/gsttag.sgml:
10804           remove some deprecated functions, document some existing ones
10805         * gst/gsttag.c: (gst_tag_get_flag):
10806         * gst/gsttag.h:
10807           add accessor function
10808
10809 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10810
10811         * docs/gst/gstreamer-sections.txt:
10812         * docs/gst/tmpl/gsttag.sgml:
10813         * docs/gst/tmpl/gstxml.sgml:
10814         * gst/gsttag.c: (gst_tag_get_flag):
10815         * gst/gsttag.h:
10816
10817 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
10818
10819         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
10820         leak
10821
10822 2004-03-05  David Schleef  <ds@schleef.org>
10823
10824         * REQUIREMENTS: Add bison and flex.
10825         * configure.ac: Fix comment about bison.
10826         * docs/random/ds/0.9-suggested-changes: yer ma
10827         * tools/gst-inspect.c: (print_element_info):  Fix warning.
10828
10829 2004-03-05  Benjamin Otte  <otte@gnome.org>
10830
10831         * gst/gstelement.c: (gst_element_error_full):
10832           revert recent recursive state changing commit - messing with other
10833           elements' states is evil and should be done by apps only.
10834
10835 2004-03-05  Benjamin Otte  <otte@gnome.org>
10836
10837         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
10838           check for empty intersection instead of NULL caps
10839         (gst_element_get_compatible_pad_filtered):
10840           remove old workaround that is only a bug nowadays
10841
10842 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10843
10844         * gst/gstelement.c: (gst_element_error_full):
10845           make elements try to recursively change state to PAUSED on all
10846           parents after an error to suppress ensuing warnings
10847         * gst/parse/grammar.y:
10848           make it check if it was able to sync the state, and throw an error
10849           if not, so stuff like
10850           oggdemux ! vorbisdec ! osssink gets caught
10851
10852 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10853
10854         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
10855           it contains lib64; use AS_AC_EXPAND to handle it properly
10856
10857 2004-03-05  David Schleef  <ds@schleef.org>
10858
10859         * gst/gstcpuid_i386.s:  Remove unused code
10860         * libs/gst/getbits/getbits.c: (gst_getbits_init),
10861         (gst_getbits_newbuf): Remove MMX code
10862         * libs/gst/getbits/getbits.h: Remove MMX code
10863
10864 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
10865
10866         * debian/.cvsignore:
10867         * debian/README.Debian:
10868         * debian/changelog:
10869         * debian/control:
10870         * debian/control.in:
10871         * debian/copyright:
10872         * debian/gstreamer-core-libs-dev.files:
10873         * debian/gstreamer-core-libs.files:
10874         * debian/gstreamer-core.files:
10875         * debian/gstreamer-core.postinst:
10876         * debian/gstreamer-core.postrm:
10877         * debian/gstreamer-doc.files:
10878         * debian/gstreamer-doc.links:
10879         * debian/gstreamer-doc.lintian:
10880         * debian/gstreamer-runtime.files:
10881         * debian/gstreamer-runtime.manpages:
10882         * debian/gstreamer-runtime.postinst:
10883         * debian/gstreamer-runtime.postrm:
10884         * debian/gstreamer-tools.files:
10885         * debian/gstreamer-tools.manpages:
10886         * debian/libgstreamer-dev.files:
10887         * debian/libgstreamer0.4.1.files:
10888         * debian/libgstreamerVERSION.files:
10889         * debian/rules:
10890         Debian package info not maintained here.
10891
10892 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10893
10894         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10895         * gst/gstbin.c: (gst_bin_class_init):
10896         * gst/gstelement.c: (gst_element_class_init):
10897         * gst/gstindex.c: (gst_index_class_init):
10898         * gst/gstobject.c: (gst_object_class_init),
10899         (gst_signal_object_class_init):
10900         * gst/gstpad.c: (gst_pad_template_class_init):
10901         * gst/gstregistry.c: (gst_registry_class_init):
10902         * gst/gsturi.c: (gst_uri_handler_base_init):
10903         * gst/gstxml.c: (gst_xml_class_init):
10904         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10905         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
10906           make all signal names use dashes instead of underscore
10907
10908 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10909
10910         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
10911
10912 2004-03-03  Benjamin Otte  <otte@gnome.org>
10913
10914         * gst/schedulers/gstoptimalscheduler.c:
10915           revert last commit by Andy Wingo. It causes segfaults on unreffing
10916           in Rhythmbox. (see bug #135672)
10917
10918 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10919
10920         * po/fr.po: fix typo
10921
10922 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10923
10924         * tools/gst-inspect.c: (main): 
10925         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
10926
10927 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10928
10929         * configure.ac:
10930           get GLIB_ONLY and POPT flags for the nonversioned binaries
10931         * tools/Makefile.am:
10932           use them
10933
10934 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10935
10936         * gst/gst.c: (init_post):
10937           change so that GST_REGISTRY now is where the global registry gets
10938           saved, since that is where plugins now get attached to first, and
10939           spilled over to the user registry.  Note that in the case of using
10940           GST_REGISTRY env var, we don't want to affect any real registries
10941           beyond the one given by this var, and thus we don't set a user
10942           registry to spill to.  So make sure GST_REGISTRY is writable.
10943
10944 2004-03-01  David Schleef  <ds@schleef.org>
10945
10946         * AUTHORS:  Added some names.  Add yourself if you're missing.
10947
10948 2004-03-01  David Schleef  <ds@schleef.org>
10949
10950         * MAINTAINERS: Add
10951
10952 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
10953
10954         * configure.ac:
10955           remove whitespace
10956         * docs/gst/tmpl/gstbuffer.sgml:
10957         * docs/gst/tmpl/gstdata.sgml:
10958         * docs/gst/tmpl/gstreamer-unused.sgml:
10959         * docs/gst/tmpl/gstxml.sgml:
10960           doc update
10961         * docs/manuals.mak:
10962           add a FIXME
10963         * docs/pwg/intro-preface.xml:
10964         * docs/pwg/pwg.xml:
10965           remove GNOME
10966         * gst/gst.c: (init_post):
10967           try GST_PLUGIN_PATH paths for the _global_registry first
10968         * gst/gstelement.h:
10969           add the error message as well, otherwise (null) debug info doesn't
10970           make much sense
10971         * tools/gst-register.c: (main):
10972           spill paths to next registry if this registry is not writable
10973         * po/fr.po:
10974         * po/nl.po:
10975           translation updates
10976
10977 2004-03-01  Johan Dahlin  <johan@gnome.org>
10978
10979         * gst/gstbuffer.c (_gst_buffer_initialize): 
10980         * gst/gstdata.c (gst_data_get_type): 
10981         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
10982         instead of ref, since some applications that uses GBoxed
10983         routines depends on a function that actually returns a copy.
10984
10985 2004-02-27  Benjamin Otte  <otte@gnome.org>
10986
10987         * gst/gstbuffer.h:
10988           remove gst_buffer_free, use gst_data_unref
10989         * gst/gstdata.c: (gst_data_get_type):
10990           use refcounting in GstData GBoxed registration
10991         * gst/gstdata.h:
10992           remove gst_data_free, use gst_data_unref
10993
10994 2004-02-27  Johan Dahlin  <johan@gnome.org>
10995
10996         * gst/gstdata.c (gst_data_get_type): New function, register
10997         GstData as a GBoxed type.
10998
10999         * gst/gstdata.h (GST_TYPE_DATA): New macro
11000
11001 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11002
11003         * Makefile.am:
11004         * gstreamer.spec.in:
11005           put back RELEASE
11006         * gst/Makefile.am:
11007           clean up non-disting of built files
11008         * testsuite/debug/commandline.c:
11009           test fix for option rename
11010
11011 2004-02-26  David Schleef  <ds@schleef.org>
11012
11013         * configure.ac:  We don't really need glib-2.3.  Also remove
11014         some unneeded checks for library functions.
11015         * gst/Makefile.am:  Instead, we need to not dist files created
11016         by glib-genmarshal.
11017
11018 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11019
11020         * configure.ac:
11021           bump glib required version to 2.3.0 for g_value_takes_boxed
11022
11023  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11024
11025         * common/m4/gst-docs.m4
11026         change flavour text from enable to disable as enable is our default
11027         closes bug Bug 135304
11028
11029 === release 0.7.5 ===
11030  
11031  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11032  
11033         * NEWS:
11034           instate NEWS file
11035         * Makefile.am:
11036         * gstreamer.spec.in:
11037         * RELEASE:
11038           put back release
11039         * configure.ac:
11040         * docs/random/release:
11041           more updates
11042
11043 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11044
11045         * gst/gsttag.c: (_gst_tag_initialize):
11046         * po/fr.po:
11047         * po/nl.po:
11048           remove hyphen from codec tags
11049
11050 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11051
11052         * gst/parse/Makefile.am:
11053           fix dependency so that a make from a clean build works the first
11054           time
11055
11056 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11057
11058         * docs/random/release:
11059           update release strategy
11060         * po/fr.po:
11061           auto-update po file
11062         * po/nl.po:
11063           update dutch translation
11064
11065 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11066
11067         * docs/manual/debugging.xml:
11068         fix manual for new debugging system
11069
11070 2004-02-25  Andy Wingo  <wingo@pobox.com>
11071
11072         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11073         gst_pad_link_prepare. Please email the list with specific reasons
11074         for reverting.
11075
11076 2004-02-24  Andy Wingo  <wingo@pobox.com>
11077
11078         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11079         invocations.
11080
11081         * gst/schedulers/gstoptimalscheduler.c:
11082         I added a mess of prototypes at the top of the file by way of
11083         documentation. Some of the operations on chains and groups were
11084         re-organized.
11085
11086         (create_group): Added a type argument so if the group is enabled,
11087         the setup_group_scheduler knows what to do.
11088         (group_elements): Added a type argument here, too, to be passed on
11089         to create_group.
11090         (group_element_set_enabled): If an unlinked PLAYING element is
11091         added to a bin, we have to create a new group to hold the element,
11092         and this function will be called before the group is added to the
11093         chain. Thus we have a valid case for group->chain==NULL. Instead
11094         of calling chain_group_set_enabled, just set the flag on the group
11095         (the chain's status will be set when the group is added to it).
11096         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11097         Setup the group scheduler when the group is enabled, not
11098         specifically when an element goes PAUSED->PLAYING. This means
11099         PLAYING elements can be added, linked, and scheduled into a
11100         PLAYING pipeline, as was intended.
11101         (add_to_group): Don't ref the group twice. I don't know when this
11102         double-ref got in here. Removing it has the potential to cause
11103         segfaults if other parts of the scheduler are buggy. If you find
11104         that the scheduler is segfaulting for you, put in an extra ref
11105         here and see if that hacks over the underlying issue. Of course,
11106         then find out what code is unreffing a group it doesn't own...
11107         (create_group): Make the extra refcount floating, and remove it
11108         after adding the element. This means that...
11109         (unref_group): Destroy when the refcount reaches 0, not 1, like
11110         every other refcounted object in the known universe.
11111         (remove_from_group): When a group becomes empty, set it to be not
11112         active, and remove it from its chain. Don't unref it again,
11113         there's no floating reference any more.
11114         (destroy_group): We have to remove the group from the chain in
11115         remove_from_group (rather than here) to break refcounting cycles
11116         (the chain always has a ref on the group). So assert that
11117         group->chain==NULL.
11118         (ref_group_by_count): Removed, it was commented out anyway.
11119         (merge_chains): Use the remove_from_chain and add_to_chain
11120         primitives to do the reparenting, instead of rolling our own
11121         implementation.
11122         (add_to_chain): The first non-disabled group in the chain's group
11123         list will be the entry point for the chain. Because buffers can
11124         accumulate in loop elements' peer bufpens, we preferentially
11125         schedule loop groups before get groups to avoid unnecessary
11126         execution of get-based groups when the bufpens are already full.
11127         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11128         (get_group_schedule_function): Ditto.
11129         (loop_group_schedule_function): Ditto.
11130         (gst_opt_scheduler_loop_wrapper): Ditto.
11131         (gst_opt_scheduler_iterate): Ditto.
11132
11133         I understand the opt scheduler now, yippee!
11134
11135         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11136         (gst_pad_get_name, gst_pad_set_chain_function) 
11137         (gst_pad_set_get_function, gst_pad_set_event_function) 
11138         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11139         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11140         (gst_pad_set_query_function, gst_pad_get_query_types) 
11141         (gst_pad_get_query_types_default) 
11142         (gst_pad_set_internal_link_function) 
11143         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11144         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11145         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11146         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11147         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11148         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11149         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11150         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11151         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11152         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11153         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11154         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11155         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11156         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11157         argument checks, and some doc fixes.
11158
11159         (gst_pad_custom_new_from_template): Um, does anyone
11160         use these functions? Actually make a custom pad instead of a
11161         normal one.
11162         (gst_pad_try_set_caps): Transpose some checks.
11163         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11164         the pad is in negotiation.
11165         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11166         
11167         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11168
11169         * gst/gstelement.h: 
11170         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11171         on the list.
11172
11173 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11174
11175         * gst/gstbin.c: (gst_bin_add):
11176           add error for not being able to add elements
11177
11178 2004-02-22  Julien MOUTTE <julien@moutte.net>
11179
11180         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11181         audio-codec and video-codec.
11182
11183 2004-02-22  Benjamin Otte  <otte@gnome.org>
11184
11185         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11186
11187         * autogen.sh:
11188           replace test -e with test -x for mkinstalldirs to be more portable.
11189           (fixes #134816)
11190
11191 2004-02-22  Benjamin Otte  <otte@gnome.org>
11192
11193         * gst/gstpad.c:
11194           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11195           too noisy
11196         * gst/gsttag.c: (_gst_tag_initialize):
11197         * gst/gsttag.h:
11198           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11199         * libs/gst/control/dparam.c: (gst_dparam_attach):
11200         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11201           check that types for attached dparams match
11202
11203 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11204
11205         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11206         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11207         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11208           fix errors
11209
11210 2004-02-20  Andy Wingo  <wingo@pobox.com>
11211
11212         * gst/gstbin.c:
11213         * gst/gstbuffer.c:
11214         * gst/gstplugin.c:
11215         * gst/registries/gstxmlregistry.c: 
11216         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11217
11218         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11219         (gst_element_add_pad): DEBUG->INFO, some fixes.
11220         (gst_element_get_compatible_pad_template): Just see if the
11221         templates' caps intersect, not if one is a strict subset of the
11222         other. This conforms more to what gst_pad_link_intersect() does.
11223         (gst_element_class_add_pad_template): Don't memcpy the pad
11224         template, just ref it.
11225         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11226
11227         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11228         (gst_pad_link_filtered): Debug changes.
11229         (gst_pad_link_prepare): New function, consolidated from
11230         can_link_filtered and link_filtered.
11231
11232         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11233         look more like that of the functions in gstelement.c
11234
11235         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11236         object, and return the empty string if object is NULL.
11237
11238         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11239         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11240         LOG, not DEBUG. We still get flex info on debug.
11241
11242         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11243         debug string more verbose.
11244         (plugin_times_older_than): DEBUG->LOG.
11245
11246 2004-02-20  Julien MOUTTE <julien@moutte.net>
11247
11248         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11249         will emit found_tag for each stream they demux with the codec.
11250
11251 2004-02-20  Benjamin Otte  <otte@gnome.org>
11252
11253         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11254           copy navigation event correctly. Check freeing tag lists. 
11255         * gst/gstthread.c: (gst_thread_change_state):
11256           don't abort() on state changing mess - it might happen because of
11257           bugs.
11258         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11259           use boxed functions
11260         * gst/gstvalue.h:
11261           fix GST_VALUE_HOLDS_CAPS
11262
11263 2004-02-19  David Schleef  <ds@schleef.org>
11264
11265         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11266         and use it for GST_FUNCTION.  (bug #134750)
11267
11268 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11269
11270         * po/fr.po:
11271         * po/nl.po:
11272           updating translations
11273
11274 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11275
11276         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11277
11278 2004-02-18  kost@imn.htwk-leipzig.de
11279
11280         reviewed by: David Schleef  <ds@schleef.org>
11281
11282         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11283         for libgstcontrol.
11284
11285 2004-02-18  David Schleef  <ds@schleef.org>
11286
11287         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11288         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11289         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11290         * tools/gst-inspect.c: (print_element_info): Support dumping of
11291         double dparam information.
11292
11293 2004-02-17  David Schleef  <ds@schleef.org>
11294
11295         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11296         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11297         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11298         Use GST_TYPE_CAPS in signal prototype.
11299         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11300         Convert GST_TYPE_CAPS to boxed.
11301         * gst/gstelement.c: (gst_element_class_init):
11302         Use GST_TYPE_TAG_LIST in signal prototype.
11303         * gst/gstindex.c: (gst_index_class_init):
11304         * gst/gstindex.h:
11305         Add GST_TYPE_INDEX_ENTRY type.
11306         * gst/gstmarshal.list:
11307         Add necessary marshal types.
11308         * gst/gstpad.c: (gst_real_pad_class_init),
11309         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11310         (gst_pad_recover_caps_error):
11311         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11312         * gst/gststructure.c: (_gst_structure_initialize),
11313         (gst_structure_copy), (_gst_structure_copy_conditional):
11314         * gst/gststructure.h:
11315         Convert GST_TYPE_STRUCTURE to boxed.
11316         * gst/gsttag.c: (gst_tag_list_get_type):
11317         * gst/gsttag.h:
11318         Add GST_TYPE_TAG_LIST type.
11319
11320 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11321
11322         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11323         to what we agreed with david.
11324         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11325
11326 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11327
11328         * po/nl.po: update translation
11329
11330 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11331
11332         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11333           throw an error if spider is trying to play a mime type there is
11334           no decoder for
11335         * po/POTFILES.in:
11336           add gst/autoplug/gstspider.c for translation
11337
11338 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11339
11340         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11341         silently when the pad is negotiating.
11342
11343 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11344
11345         * docs/faq/Makefile.am:
11346           add script to run gstreamer uninstalled 
11347         * docs/faq/faq.xml:
11348         * docs/faq/developing.xml:
11349         * docs/faq/gst-uninstalled:
11350           extract script to run gstreamer uninstalled
11351         * docs/manuals.mak:
11352           add EXTRA_SOURCES variable for Makefile.am's to set to
11353           use additional SOURCE files for the doc build
11354
11355 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11356
11357         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11358
11359 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11360
11361         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11362         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11363         an error was thrown by osssink. Basically a state change failure for
11364         an element in a different scheduling group was considered as
11365         successful, which means that caps nego was going on and weird stuff
11366         happened. Like I wrote in the comment there, if someone wants to
11367         revert that please drop me a mail explaining why because I really see
11368         no point in keeping that broken behaviour there.
11369         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11370         be empty, we then return NULL which will trigger a nice error when 
11371         pulling from the pad.
11372
11373 2004-02-13  David Schleef  <ds@schleef.org>
11374
11375         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11376         (gst_dparam_get_property), (gst_dparam_set_property),
11377         (gst_dparam_do_update_default):
11378         * libs/gst/control/dparam.h:
11379         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11380         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11381         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11382         (gst_dpsmooth_do_update_double):
11383         * libs/gst/control/dparam_smooth.h:
11384         * libs/gst/control/dparammanager.c:
11385         (gst_dpman_inline_direct_update):
11386         Add support for double dparams.
11387
11388 2004-02-13  David Schleef  <ds@schleef.org>
11389
11390         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11391         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11392
11393 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11394
11395         reviewed by: David Schleef  <ds@schleef.org>
11396
11397         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11398         (gst_fdsrc_init), (gst_fdsrc_set_property),
11399         (gst_fdsrc_get_property), (gst_fdsrc_get):
11400         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11401         and sends an EOS event if file descriptor reading times out.
11402
11403 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11404
11405         * configure.ac:
11406           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11407
11408 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11409
11410         * configure.ac: pass required libxml version as argument
11411         (bug reported by Christophe Fergeau)
11412
11413 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11414   
11415         * docs/gst/gstreamer-docs.sgml:
11416         * docs/gst/tmpl/gstxml.sgml:
11417         * docs/libs/gstreamer-libs-docs.sgml:
11418           version API docs
11419
11420 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11421
11422         * gst/gstinfo.c:
11423         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11424         (gst_registry_pool_feature_filter):
11425         * gst/gstthread.c: (gst_thread_class_init):
11426         * gst/gstvalue.c:
11427           add includes exposed by building without libxml
11428         * gst/indexers/Makefile.am:
11429           do not build fileindex when LOADSAVE disabled; we should have
11430           a better libxml check later since fileindex depends on xml, not
11431           LOADSAVE or REGISTRY
11432         * libs/gst/control/Makefile.am:
11433           link with m
11434         * tools/Makefile.am:
11435           fix wrong source code for gst-xmlinspect
11436
11437 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11438
11439         * configure.ac:
11440           fix gcov help output
11441           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11442         * docs/random/release:
11443           some updated releasing notes
11444         * gstreamer.spec.in:
11445           more updates
11446
11447 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11448
11449         * docs/faq/faq.xml:
11450         * docs/manual/manual.xml:
11451         * docs/pwg/pwg.xml:
11452         * docs/pwg/titlepage.xml:
11453           put version in documentation
11454
11455 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11456
11457         * tools/Makefile.am: fix man page installation
11458
11459 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11460
11461         * configure.ac:
11462           don't check for libxml when load/save and registry disabled (#105844)
11463         * gstreamer.spec.in:
11464           sync with fedora candidate spec
11465
11466 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11467
11468         * po/fr.po:
11469         * po/nl.po:
11470           replace multidisksrc with multifilesrc
11471
11472 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11473
11474         * po/POTFILES.in:
11475           update to multidisksrc => multifilesrc file renaming (#134145)
11476
11477 2004-02-11  David Schleef  <ds@schleef.org>
11478
11479         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11480         * docs/gst/tmpl/gstpadtemplate.sgml: same
11481         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11482         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11483         fixing dance.
11484         * gst/gstutils.c: Remove disabled code that uses GstProps.
11485         * gst/registries/gstxmlregistry.h: same
11486         * docs/random/ds/0.9-suggested-changes: random notes
11487
11488 2004-02-11  kost@imn.htwk-leipzig.de
11489
11490         reviewed by: David Schleef  <ds@schleef.org>
11491
11492         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11493         initialisation of clock (bug #134128)
11494
11495 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11496
11497         * configure.ac:
11498         * gst/elements/Makefile.am:
11499         * gst/elements/gstelements.c:
11500         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11501         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11502         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11503         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11504         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11505         * gst/elements/gstmultifilesrc.h:
11506           rename multidisksrc to multifilesrc (part of #122200)
11507
11508 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11509
11510         * docs/manuals.mak:
11511           fix automake complaints
11512         * gst-element-check.m4:
11513           fix unquotedness
11514
11515 2004-02-11  David Schleef  <ds@schleef.org>
11516
11517         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11518         * gst/gstatomic_impl.h: Disable sparc implementation.
11519
11520 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11521
11522         * gst-element-check.m4:
11523           fix underquoted macros as reported by automake 1.8.x (#133800)
11524         * configure.ac:
11525           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11526           by autopoint (fixes #132996)
11527
11528 2004-02-10  Andy Wingo  <wingo@pobox.com>
11529
11530         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11531         way to do inheritance.
11532         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11533         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11534         Routine docs.
11535         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11536         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11537         doc.
11538         (gst_pad_unlink, gst_pad_is_linked): Docs.
11539         (gst_pad_renegotiate): A brief description of capsnego.
11540         (gst_pad_try_set_caps): Document.
11541         (gst_pad_try_set_caps_nonfixed): Document.
11542         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11543         (gst_pad_set_parent): Deprecated (although not out of the API).
11544         (gst_pad_get_parent): Deprecated, although many plugins use this.
11545         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11546         are private and will go away in 0.9.
11547         (gst_pad_perform_negotiate): Doc.
11548         (gst_pad_link_unnegotiate): I think this is meant to be static.
11549         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11550         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11551         (gst_pad_get_peer): Doc updates.
11552         (gst_pad_caps_change_notify): Doc.
11553         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11554         (gst_ghost_pad_new): Doc fixes.
11555
11556         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11557         (gst_object_check_uniqueness): 
11558
11559         * gst/gstelement.c (gst_element_add_pad) 
11560         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11561         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11562         (gst_element_get_static_pad, gst_element_get_pad_list) 
11563         (gst_element_class_get_pad_template_list) 
11564         (gst_element_class_get_pad_template): Work on the docs.
11565         (gst_element_get_pad_template_list): Uses the class method.
11566         (gst_element_get_compatible_pad_template): Docs, and consolidate
11567         some test conditions. 
11568         (gst_element_get_pad_from_template): New static function.
11569         (gst_element_request_compatible_pad): Docs, and work with
11570         non-request compatible templates. 
11571         (gst_element_get_compatible_pad_filtered): Docs and remove
11572         redundant checks.
11573         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11574         (gst_element_link_filtered, gst_element_link_many) 
11575         (gst_element_link, gst_element_link_pads) 
11576         (gst_element_unlink_many): Docs.
11577
11578 2004-02-05  Andy Wingo  <wingo@pobox.com>
11579
11580         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11581         s/pointer/boxed/.
11582
11583         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11584
11585         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11586         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11587         with the type=GST_TYPE_CAPS. This allows language bindings to know
11588         what kind of data they're dealing with.
11589
11590         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11591         to NULL when g_value_init is called. GstCaps, which rolls its own
11592         type implementation, now does the same instead of allocating empty
11593         caps.
11594         (_gst_caps_initialize, _gst_caps_collect_value,
11595         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11596         table methods. This allows G_VALUE_COLLECT to work.
11597
11598 2004-02-05  Andy Wingo  <wingo@pobox.com>
11599
11600         * configure.ac:
11601         * testsuite/Makefile.am (SUBDIRS): 
11602         * testsuite/ghostpads/Makefile.am: 
11603         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11604
11605         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
11606         These two routines are the only ones that set
11607         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
11608         pad template. They should be made static, depending on ABI needs.
11609         (gst_real_pad_dispose): Handle the case of ghost pads without a
11610         parent. Assert after dealing with ghost pads that the ghost pad
11611         list is empty.
11612         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
11613         set after creation.
11614         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
11615         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
11616         functions. set_property will call add_ghost_pad/remove_ghost_pad
11617         as appropriate.
11618         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
11619
11620         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
11621         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
11622         (gst_element_remove_pad): Handle ghost pads as well.
11623         (gst_element_remove_ghost_pad): Deprecated (could be removed,
11624         depending on API-stability needs).
11625
11626 2004-02-05  Andy Wingo  <wingo@pobox.com>
11627
11628         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
11629         of course they're const
11630
11631 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11632
11633         * tools/Makefile.am:
11634         * tools/gst-feedback:
11635         * tools/gst-feedback-0.7:
11636           make gst-feedback versioned too for consistency
11637
11638 2004-02-11  David Schleef  <ds@schleef.org>
11639
11640         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11641         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
11642
11643 2004-02-10  Julien MOUTTE <julien@moutte.net>
11644
11645         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
11646         the structure does not contain a valid tag list. Adding a safety check
11647         to remove a noisy warning in that case.
11648
11649 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11650
11651         * gst/gst.c: fix name to be in line with others
11652
11653 2004-02-09  Julien MOUTTE <julien@moutte.net>
11654
11655         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
11656         not shout that loud when len is 0. Just return 0 silently.
11657
11658 2004-02-09  Julien MOUTTE  <julien@moutte.net>
11659
11660         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
11661         because data_unref has one and I prefer the debug to be symetric.
11662         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
11663         were refed when added to the queue and unrefed only once when the queue
11664         was flushed. Now the flush handler unref the buffers two times : first
11665         unref for the ref added when pushing in the queue's tail and second
11666         unref to destroy the flushed buffer.
11667
11668 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11669
11670         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
11671
11672 2004-02-06  David Schleef  <ds@schleef.org>
11673
11674         * docs/random/ds/0.9-suggested-changes: Random ramblings
11675         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
11676         to int before printing.
11677         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
11678         * gst/parse/parse.l: same.  See bug #129600
11679
11680 2004-02-06  David Schleef  <ds@schleef.org>
11681
11682         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
11683         (gst_index_add_entry), (gst_index_add_associationv),
11684         (gst_index_add_association): Add gst_index_add_associationv()
11685         and clean up gst_index_add_association(). #127133
11686
11687 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11688
11689         * autogen.sh: check out common with right tag if CVS/Tag exists
11690
11691 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11692
11693         * testsuite/ghostpads/ghostpads.c: (main):
11694           fix testsuite from segfaulting
11695
11696 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11697
11698         * Makefile.am: add release target
11699         * configure.ac: bump nano to 1
11700         * docs/random/release:
11701
11702 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11703
11704         * gst/gstcaps.h:
11705         * gst/gstelement.c: (gst_element_base_class_init),
11706         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11707         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11708         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11709         (gst_real_pad_dispose):
11710         * gst/gststructure.c: (gst_structure_free),
11711         (gst_structure_from_string):
11712           put reverted patch back in
11713         * gst/gstelement.c: (gst_element_remove_pad):
11714           free explicit caps if they're set
11715         * gst/gstpad.c: (_gst_pad_default_fixate_func):
11716           copy the structure when fixating
11717
11718 2004-02-05  David Schleef  <ds@schleef.org>
11719
11720         * gst/gstmarshal.list:
11721         * gst/gstpad.c: (gst_real_pad_class_init),
11722         (_gst_real_pad_fixate_accumulator):
11723         Revert POINTER->BOXED change in signal marshaller.
11724
11725 === release 0.7.4 ===
11726                                                                                 
11727 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11728                                                                                 
11729         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
11730         * configure.ac: changed for release
11731
11732 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
11733
11734         * gstreamer.spec.in:
11735           bump required version of gtk-doc
11736
11737 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11738
11739         * gst/gstcaps.h:
11740         * gst/gstelement.c: (gst_element_base_class_init),
11741         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11742         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11743         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11744         (gst_real_pad_dispose):
11745         * gst/gststructure.c: (gst_structure_free),
11746         (gst_structure_from_string):
11747           revert patch that breaks applications, reapply after release
11748           to get this fixed properly
11749
11750 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11751
11752         * gst/gsttag.c: (_gst_tag_initialize):
11753         * gst/gsttag.h:
11754           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
11755
11756 2004-02-04  David Schleef  <ds@schleef.org>
11757
11758         Fix some memleaks:
11759         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
11760         (gst_spider_plug_from_srcpad):
11761         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
11762
11763 2004-02-04  David Schleef  <ds@schleef.org>
11764
11765         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
11766         a GstRealPad before accessing its structure members.
11767
11768 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11769
11770         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
11771         (gst_clock_get_speed):
11772         * gst/gstclock.h:
11773           reset padding, remove unused fields
11774
11775 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11776
11777         * gst/autoplug/gstspideridentity.c:
11778         (gst_spider_identity_sink_loop_type_finding):
11779           use get_allowed_caps, not get_caps (fixes #132519)
11780         * gst/elements/gsttypefind.c: (stop_typefinding):
11781           use correct order when sending buffers and seeking
11782
11783 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11784
11785         * configure.ac:
11786         * gst/gstelement.h:
11787         * gst/gstpad.h:
11788         * gst/gstqueue.h:
11789           upgrade libtool CURRENT, reset padding
11790
11791 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11792
11793         * configure.ac:
11794           bump to prerelease
11795           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
11796
11797 2004-02-04  David Schleef  <ds@schleef.org>
11798
11799         * docs/random/ds/0.9-suggested-changes: random notes
11800         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
11801         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
11802         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
11803         expansion.
11804         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11805         (gst_filesink_get_query_types): same
11806         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
11807         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
11808         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
11809         to use new GST_PTR_FORMAT.
11810         * gst/gstelement.h: deprecate function factory macros
11811         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
11812         These are our last variadic macros that can't be replaced with
11813         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
11814         attempting to deprecate gst_element_clock_wait().
11815         * gst/gstevent.h: same
11816         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11817         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
11818         * gst/gstpad.h: deprecate function factory macros similar to above.
11819
11820 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11821
11822         * configure.ac:
11823         * tools/Makefile.am:
11824         * tools/gst-run.c: (popt_callback), (hash_print_key),
11825         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
11826         (get_candidates), (main):
11827           add new source file to generate non-versioned wrapper binaries
11828           for our tools.
11829
11830 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11831
11832         * gst/gstevent.c: (_gst_event_free):
11833           actually break; inside the switch statement
11834         * gst/parse/grammar.y:
11835           fix memleak where GValues weren't unset
11836
11837 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11838
11839         * gst/gststructure.c: (gst_structure_from_string):
11840           fix huge memleak
11841         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11842         (new_entry), (gst_type_find_element_chain):
11843         * gst/gstelement.c: (gst_element_base_class_init),
11844         (gst_element_class_set_details):
11845         * gst/gstpad.c: (gst_pad_can_link_filtered):
11846           fix smaller memleaks
11847         * gst/gstpad.c: (gst_real_pad_dispose):
11848           check that explicit caps are gone
11849         * gst/gststructure.c: (gst_structure_free):
11850           actually free the structure
11851         * gst/gstelement.c: (gst_element_clear_pad_caps):
11852           unset explicit caps
11853
11854 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11855
11856         * tools/Makefile.am:
11857           use AM_CFLAGS since all the CFLAGS are the same
11858           use AM_LDFAGS
11859
11860 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11861
11862         * docs/manual/gnome.xml:
11863           expand example a little
11864         * gst/gst.c: (gst_init_with_popt_table),
11865         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
11866           make sure popt option displays are done with right textdomain
11867           use GstPoptOption type
11868         * gst/gst.h:
11869           create GstPoptOption type
11870
11871 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11872
11873         * gst/gsterror.c: (_gst_stream_errors_init):
11874         * gst/gsterror.h:
11875           adding error type for no codec
11876         * po/POTFILES.in:
11877           add gst-inspect
11878         * po/nl.po:
11879           update dutch translation
11880         * tools/gst-inspect.c: (print_element_list), (main):
11881           do proper internationalization
11882         * tools/gst-launch.c: (idle_func):
11883           remove commented out function call
11884
11885 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11886
11887         * docs/README:
11888           add some error fixing notes
11889         * docs/gst/gstreamer-sections.txt:
11890           remove double entries
11891         * docs/gst/tmpl/gstbin.sgml:
11892         * docs/gst/tmpl/gstclock.sgml:
11893           remove override
11894         * docs/gst/tmpl/gstelement.sgml:
11895         * docs/gst/tmpl/gstindex.sgml:
11896         * docs/gst/tmpl/gstobject.sgml:
11897         * docs/gst/tmpl/gstpadtemplate.sgml:
11898         * docs/gst/tmpl/gstreamer-unused.sgml:
11899         * docs/gst/tmpl/gsttag.sgml:
11900         * docs/gst/tmpl/gstthread.sgml:
11901         * docs/gst/tmpl/gstxml.sgml:
11902         * gst/gsttag.h:
11903           sync header prototypes with c decls
11904         * gst/gsttaginterface.c:
11905           fix doc headers
11906
11907 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11908
11909         * gst/parse/Makefile.am:
11910         * gst/gstobject.h:
11911           get rid of gstmarshal.h dependency. It's not needed.
11912         * gst/gst.h:
11913         * gst/elements/gstfakesink.c:
11914         * gst/elements/gstfakesrc.c:
11915         * gst/elements/gstidentity.c:
11916         * gst/gstbin.c:
11917         * gst/gstelement.c:
11918         * gst/gstindex.c:
11919         * gst/gstobject.c:
11920         * gst/gstpad.c:
11921         * gst/gstthread.c:
11922         * gst/gstxml.c:
11923         * libs/gst/control/dparam.c:
11924         * libs/gst/control/dparammanager.c:
11925           include gstmarshal.h.
11926         Fixes #132045
11927
11928 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11929
11930         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11931         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
11932         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
11933         * gst/elements/gstfilesrc.h:
11934           don't ref the filesrc when creating mmaped buffers. Don't keep a
11935           list of not-yet-destroyed buffers.
11936         * gst/gstbuffer.h:
11937           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
11938
11939 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11940
11941         * gst/gst.c: (init_pre):
11942           remove textdomain
11943
11944 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11945
11946         * docs/pwg/advanced-events.xml:
11947         * docs/pwg/advanced-scheduling.xml:
11948         * docs/pwg/intro-basics.xml:
11949         * docs/pwg/other-manager.xml:
11950         * docs/pwg/other-nton.xml:
11951         * docs/pwg/other-ntoone.xml:
11952         * docs/pwg/other-oneton.xml:
11953         * docs/pwg/pwg.xml:
11954           All sort of documentation... Forgot what. Point is that I want this
11955           in before I leave. The 'other-*' will be the last section and will
11956           explain issues specific to these type of elements.
11957
11958 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11959
11960         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11961         (gst_filesrc_get_read):
11962           set all the values on buffers that we can
11963
11964 2004-02-02  David Schleef  <ds@schleef.org>
11965
11966         Change usage of isblah() to g_ascii_isblah() to be more locale
11967         independent.  (#133076)
11968         * gst/gsturi.c: (gst_uri_protocol_check_internal):
11969         * gst/gstutils.c:
11970         * gst/parse/parse.l:
11971
11972 2004-02-02  Jon Trowbridge  <trow@gnu.org>
11973
11974         reviewed by: David Schleef  <ds@schleef.org>
11975
11976         Fix memory leaks:
11977         * gst/gstcaps.c: (gst_caps_to_string):
11978         * gst/registries/gstxmlregistry.c:
11979         (gst_xml_registry_add_path_list_func),
11980         (gst_xml_registry_parse_padtemplate):
11981
11982 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11983
11984         * gst/gstelement.c: (gst_element_default_error):
11985           suffix error messages with period
11986
11987 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11988
11989         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11990         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11991         * gst/gsterror.c: (gst_error_get_message):
11992           Suffix with dots
11993         * po/fr.po:
11994         * po/nl.po:
11995           Update translation files
11996
11997 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11998
11999         * gst/autoplug/gstspideridentity.c:
12000         (gst_spider_identity_sink_loop_type_finding):
12001         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12002         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12003         (gst_filesink_close_file), (gst_filesink_handle_event),
12004         (gst_filesink_chain):
12005         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12006         (gst_filesrc_get_read), (gst_filesrc_open_file):
12007         * gst/elements/gstidentity.c: (gst_identity_chain):
12008         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12009         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12010         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12011         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12012         * gst/gsterror.c: (_gst_core_errors_init),
12013         (_gst_library_errors_init), (_gst_resource_errors_init),
12014         (_gst_stream_errors_init), (gst_error_get_message):
12015         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12016         (gst_pad_recover_caps_error), (gst_pad_pull):
12017         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12018         * gst/schedulers/gstbasicscheduler.c:
12019         (gst_basic_scheduler_chainhandler_proxy),
12020         (gst_basic_scheduler_gethandler_proxy),
12021         (gst_basic_scheduler_cothreaded_chain):
12022           Suffix error messages with period.
12023           Use (NULL) instead of NULL
12024
12025 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12026
12027         * docs/gst/tmpl/gstelement.sgml:
12028         * docs/gst/tmpl/gstxml.sgml:
12029         * gst/gstelement.c: (gst_element_error_full):
12030           add element path to error
12031
12032 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12033
12034         * docs/random/mimetypes:
12035           update raw int/float info
12036         * gst/gsttag.c: (_gst_tag_initialize):
12037         * gst/gsttag.h:
12038           add GST_TAG_ENCODER
12039
12040 2004-01-30  David Schleef  <ds@schleef.org>
12041
12042         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12043           missing (#132991)
12044
12045 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12046
12047         reviewed by Benjamin Otte 
12048           parts of the patch submitted in bug #113913
12049
12050         * configure.ac:
12051           use AC_C_INLINE. Use = instead of == with test
12052         * examples/plugins/example.c:
12053         * gst/autoplug/gstspideridentity.c:
12054         * gst/elements/gstfdsrc.c:
12055         * gst/elements/gstfilesrc.c:
12056         * gst/elements/gstidentity.c:
12057         * gst/elements/gstmultidisksrc.c:
12058         * gst/elements/gststatistics.c:
12059         * gst/gstelement.c:
12060         * gst/gstobject.c:
12061         * gst/gstpad.c:
12062         * gst/gstpipeline.c:
12063         * gst/gstthread.c:
12064           don't end enums with a comma
12065         * gst/gstindex.c: (gst_index_compare_func):
12066           do explicit casting to gint
12067         * gst/gsttrace.c: (gst_trace_text_flush):
12068           #define strsize as a macro
12069
12070 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12071
12072         * docs/README:
12073         * docs/gst/gstreamer-docs.sgml:
12074         * docs/gst/gstreamer-sections.txt:
12075         * docs/gst/tmpl/gstelement.sgml:
12076         * docs/gst/tmpl/gsterror.sgml:
12077         * docs/gst/tmpl/gstinterface.sgml:
12078         * docs/gst/tmpl/gstreamer-unused.sgml:
12079         * docs/gst/tmpl/gststructure.sgml:
12080         * docs/gst/tmpl/gsttag.sgml:
12081         * docs/gst/tmpl/gsttaginterface.sgml:
12082         * docs/gst/tmpl/gstvalue.sgml:
12083         make sure all API ends up in the built docs
12084         * gst/gstinterface.c:
12085         * gst/gststructure.c: (gst_structure_id_set_value),
12086         (gst_structure_set_value), (gst_structure_id_get_value):
12087         * gst/gststructure.h:
12088         * gst/gstvalue.h:
12089         sync .h with .c declarations
12090
12091 2004-01-30  Julien Moutte  <julien@moutte.net>
12092
12093         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12094         Ronald will fix riffread.
12095
12096 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12097
12098         * docs/pwg/advanced-interfaces.xml:
12099           Added tuner interface docs.
12100
12101 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12102
12103         * docs/random/mimetypes:
12104           correct Theora information
12105         * gst/gstelement.h:
12106           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12107
12108 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12109
12110         * gst/gstelement.c: (gst_element_error_full):
12111         * gst/gstelement.h:
12112           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12113
12114 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12115
12116         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12117         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12118         again and even before DISCONT.
12119         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12120         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12121         bytestream so that it's not stopping to fill the bytestream if events
12122         different than EOS or DISCONT are received. Instead it process them so
12123         that they go downstream.
12124
12125 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12126
12127         * docs/gst/tmpl/gstelement.sgml:
12128         * docs/gst/tmpl/gstreamer-unused.sgml:
12129         * docs/gst/tmpl/gstxml.sgml:
12130         * gst/autoplug/gstspideridentity.c:
12131         (gst_spider_identity_sink_loop_type_finding):
12132         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12133         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12134         (gst_filesink_close_file), (gst_filesink_handle_event),
12135         (gst_filesink_chain):
12136         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12137         (gst_filesrc_get_read), (gst_filesrc_open_file):
12138         * gst/elements/gstidentity.c: (gst_identity_chain):
12139         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12140         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12141         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12142         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12143         * gst/gstelement.h:
12144         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12145         (gst_pad_recover_caps_error), (gst_pad_pull):
12146         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12147         * gst/schedulers/gstbasicscheduler.c:
12148         (gst_basic_scheduler_chainhandler_proxy),
12149         (gst_basic_scheduler_gethandler_proxy),
12150         (gst_basic_scheduler_cothreaded_chain):
12151           gst_element_error -> GST_ELEMENT_ERROR
12152
12153 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12154
12155         * docs/Makefile.am:
12156         * docs/gst/tmpl/gstelement.sgml:
12157         * docs/gst/tmpl/gstxml.sgml:
12158         * docs/manuals.mak:
12159         * docs/pwg/advanced-request.xml:
12160         * docs/pwg/advanced-scheduling.xml:
12161         * docs/pwg/advanced-tagging.xml:
12162           fix non-validating docbook using CDATA
12163           make sure make check-local gets run first to check if it validates
12164
12165 2004-01-29  Julien MOUTTE <julien@moutte.net>
12166
12167         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12168         handling (up and downstream).
12169         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12170         my_filter thing.
12171
12172 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12173
12174         * docs/pwg/advanced-tagging.xml:
12175           Add docs about tag writing.
12176
12177 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12178
12179         * docs/pwg/advanced-tagging.xml:
12180           Add a part about tag reading and application signalling... Tag
12181           writing still needs to be documented.
12182         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12183           We can set file locations in READY, too.
12184
12185 2004-01-29  Julien MOUTTE <julien@moutte.net>
12186
12187         * docs/random/ds/element-checklist: Adding some notes about src
12188         events.
12189
12190 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12191
12192         * docs/random/mimetypes:
12193           Update docs to point to correct elements for various mimetypes, and
12194           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12195           <stephane.loeuillet@tiscali.fr>.
12196
12197 2004-01-28  David Schleef  <ds@schleef.org>
12198
12199         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12200
12201 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12202
12203         * docs/random/mimetypes:
12204           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12205           undefined"
12206         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12207           make it only work in NULL.
12208         * gst/gstcaps.c:
12209           don't posion NULL caps
12210         * gst/gstelement.c: (gst_element_set_time):
12211           add debugging statement
12212         * gst/gstelement.c: (gst_element_emit_found_tag),
12213         (gst_element_found_tag_func), (gst_element_found_tags):
12214         * gst/gstelement.h:
12215           These functions take const taglists
12216         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12217           fix memleak
12218         * gst/gstpad.c: (gst_pad_event_default):
12219           make more effort on handling discont and clocks, g_warn if everything
12220           fails
12221         * gst/gststructure.c: (gst_structure_remove_fields),
12222         (gst_structure_remove_fields_valist):
12223         * gst/gststructure.h:
12224           add gst_structure_remove_fields(_valist)
12225         * gst/gsttag.c:
12226           fix doc glitch
12227
12228 2004-01-28  David Schleef  <ds@schleef.org>
12229
12230         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12231         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12232         Fix memory leakage of gst_caps_to_string().
12233
12234         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12235         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12236         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12237         (gst_spider_identity_sink_loop_type_finding):
12238         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12239         (find_suggest):
12240         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12241         (gst_pad_set_explicit_caps):
12242         * gst/parse/grammar.y:
12243
12244 2004-01-28  David Schleef  <ds@schleef.org>
12245
12246         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12247         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12248         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12249         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12250         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12251         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12252         (gst_debug_log_default), (_gst_info_printf_extension),
12253         (_gst_info_printf_extension_arginfo):  Add printf extension.
12254         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12255         * gst/gststructure.c: (gst_structure_to_string),
12256         (_gst_structure_parse_value): Use gst_value_deserialize() and
12257         remove old code.
12258         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12259         (gst_value_deserialize_boolean), (gst_strtoi),
12260         (gst_value_deserialize_int), (gst_value_deserialize_double),
12261         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12262         a bunch of deserialize functions and gst_value_deserialize.
12263         * gst/gstvalue.h: er, _de_serialize, not unserialize
12264         * testsuite/caps/string-conversions.c: (main): We don't currently
12265         handle (float) in caps, so convert these to (double).
12266         * testsuite/debug/Makefile.am: Add new test for the printf extension
12267         * testsuite/debug/printf_extension.c: (main): same
12268
12269 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12270
12271         * docs/random/company/time:
12272           Add some docs about clocking and time
12273
12274 2004-01-28  Julien MOUTTE <julien@moutte.net>
12275
12276         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12277
12278 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12279
12280         * docs/pwg/advanced-clock.xml:
12281         * docs/pwg/advanced-dparams.xml:
12282         * docs/pwg/advanced-events.xml:
12283         * docs/pwg/advanced-interfaces.xml:
12284         * docs/pwg/advanced-midi.xml:
12285         * docs/pwg/advanced-request.xml:
12286         * docs/pwg/advanced-scheduling.xml:
12287         * docs/pwg/advanced-tagging.xml:
12288         * docs/pwg/advanced-types.xml:
12289         * docs/pwg/appendix-checklist.xml:
12290         * docs/pwg/building-boiler.xml:
12291         * docs/pwg/building-chainfn.xml:
12292         * docs/pwg/building-filterfactory.xml:
12293         * docs/pwg/building-pads.xml:
12294         * docs/pwg/building-props.xml:
12295         * docs/pwg/building-signals.xml:
12296         * docs/pwg/building-state.xml:
12297         * docs/pwg/building-testapp.xml:
12298         * docs/pwg/intro-basics.xml:
12299         * docs/pwg/intro-preface.xml:
12300         * docs/pwg/other-autoplugger.xml:
12301         * docs/pwg/other-sink.xml:
12302         * docs/pwg/other-source.xml:
12303         * docs/pwg/titlepage.xml:
12304           fix up id's
12305
12306 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12307
12308         * docs/95NonPath:
12309         * docs/HACKING:
12310         * docs/README:
12311         * docs/building-the-docs-on-debian:
12312           collect relevant bits of doc info
12313
12314 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12315
12316         * docs/pwg/advanced_tagging.xml:
12317           Half-assed commit so Thomas can re-arrange document IDs here to be
12318           consistent, too.
12319
12320 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12321
12322         * docs/manual/autoplugging.xml:
12323         * docs/manual/bins-api.xml:
12324         * docs/manual/bins.xml:
12325         * docs/manual/buffers-api.xml:
12326         * docs/manual/buffers.xml:
12327         * docs/manual/clocks.xml:
12328         * docs/manual/components.xml:
12329         * docs/manual/cothreads.xml:
12330         * docs/manual/debugging.xml:
12331         * docs/manual/dparams-app.xml:
12332         * docs/manual/dynamic.xml:
12333         * docs/manual/elements-api.xml:
12334         * docs/manual/elements.xml:
12335         * docs/manual/factories.xml:
12336         * docs/manual/gnome.xml:
12337         * docs/manual/goals.xml:
12338         * docs/manual/helloworld.xml:
12339         * docs/manual/helloworld2.xml:
12340         * docs/manual/init-api.xml:
12341         * docs/manual/intro.xml:
12342         * docs/manual/links-api.xml:
12343         * docs/manual/links.xml:
12344         * docs/manual/manual.xml:
12345         * docs/manual/motivation.xml:
12346         * docs/manual/pads-api.xml:
12347         * docs/manual/pads.xml:
12348         * docs/manual/plugins-api.xml:
12349         * docs/manual/plugins.xml:
12350         * docs/manual/programs.xml:
12351         * docs/manual/queues.xml:
12352         * docs/manual/quotes.xml:
12353         * docs/manual/schedulers.xml:
12354         * docs/manual/states-api.xml:
12355         * docs/manual/states.xml:
12356         * docs/manual/threads.xml:
12357         * docs/manual/typedetection.xml:
12358         * docs/manual/xml.xml:
12359           use chapter, part, section or misc as id starts for all bits
12360
12361 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12362
12363         * docs/gst/gstreamer-sections.txt:
12364           Fix up TITLE of the sections
12365
12366 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12367
12368         * docs/pwg/advanced_interfaces.xml:
12369           Add documentation on propertyprobing.
12370         * docs/pwg/advanced_events.xml:
12371         * docs/pwg/advanced_tagging.xml:
12372         * docs/pwg/building_boiler.xml:
12373         * docs/pwg/building_filterfactory.xml:
12374         * docs/pwg/pwg.xml:
12375           Move filterfactory and tagging into their own chapter, add a chapter
12376           on events. all these are empty placeholders that will be filled in
12377           some day.
12378
12379 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12380
12381         * docs/pwg/advanced_interfaces.xml:
12382           Docs for mixer interface. Also a check for website uploading.
12383
12384 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12385
12386         * docs/HACKING:
12387         * docs/Makefile.am:
12388         * docs/faq/Makefile.am:
12389         * docs/gst/Makefile.am:
12390         * docs/gst/tmpl/gstelement.sgml:
12391         * docs/gst/tmpl/gstplugin.sgml:
12392         * docs/gst/tmpl/gstreamer-unused.sgml:
12393         * docs/libs/Makefile.am:
12394         * docs/manual/Makefile.am:
12395         * docs/manuals.mak:
12396         * docs/pwg/Makefile.am:
12397         * docs/upload.mak:
12398           Separate out upload target and make it similar for
12399           both docbook and gtk-doc docs
12400
12401 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12402
12403         * docs/manuals.mak:
12404           Fix upload target to work with freedesktop
12405
12406 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12407
12408         * docs/pwg/advanced_types.xml:
12409           Add notes on creating your own types.
12410         * docs/pwg/building_boiler.xml:
12411         * docs/pwg/building_pads.xml:
12412         * docs/pwg/building_state.xml:
12413           Add some stuff about how to retrieve values from structures, how
12414           that relates to types and change layout slightly again to be almost
12415           perfect.
12416
12417 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12418
12419         * docs/pwg/advanced_dparams.xml:
12420         * docs/pwg/advanced_scheduling.xml:
12421           Change index layout slightly.
12422
12423 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12424
12425         * docs/pwg/advanced_clock.xml:
12426         * docs/pwg/advanced_interfaces.xml:
12427         * docs/pwg/advanced_midi.xml:
12428           General placeholders for now.
12429         * docs/pwg/advanced_request.xml:
12430           Explanation about sometimes and request pads.
12431         * docs/pwg/advanced_scheduling.xml:
12432           Concept of bytestream, loopfunctions and schedulers.
12433         * docs/pwg/building_boiler.xml:
12434           Add something about plugin-init.
12435
12436 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12437
12438         * docs/pwg/building_pads.xml:
12439           Fix broken docbook
12440
12441 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12442
12443         * docs/pwg/advanced_interfaces.xml:
12444         * docs/pwg/pwg.xml:
12445           Add as a placeholder for future filling-in.
12446         * docs/pwg/basics_autoplugging.xml:
12447         * docs/pwg/basics_buffers.xml:
12448         * docs/pwg/basics_elements.xml:
12449         * docs/pwg/basics_events.xml:
12450         * docs/pwg/basics_plugins.xml:
12451         * docs/pwg/basics_types.xml:
12452           Remove, because unused (this is all in intro_basics.xml).
12453         * docs/pwg/building_signals.xml:
12454           Short intro to signals + reference to GObject docs - we really
12455           shouldn't go into these sort of things to deply because we don't
12456           use them that extensively anyway.
12457         * docs/pwg/building_state.xml:
12458           Explanation of states. Benjamin, please check.
12459         * docs/pwg/building_testapp.xml:
12460           Put everything in one page - putting only a few lines of content
12461           per page doesn't really make sense.
12462
12463           Time to get into the advanced topics. ;).
12464
12465 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12466
12467         * docs/pwg/advanced_types.xml:
12468           Finish documenting the current state of mimetypes.
12469         * docs/pwg/building_boiler.xml:
12470         * docs/pwg/building_chainfn.xml:
12471         * docs/pwg/building_pads.xml:
12472         * docs/pwg/building_props.xml:
12473         * docs/pwg/building_testapp.xml:
12474           Start documenting the "how to build a simple audio filter" part
12475           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12476           states and (maybe?) a short introduction to capsnego in the chapter
12477           on pads (building_pads.xml). Capsnego should probably be explained
12478           fully in advanced_capsnego.xml or so.
12479
12480 2004-01-26  David Schleef  <ds@schleef.org>
12481
12482         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12483         * gst/gstpad.h: Add new function to allow element to (somewhat)
12484         specify non-fixed caps on a pad.
12485         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12486         that I added a few weeks ago.
12487
12488 2004-01-26  David Schleef  <ds@schleef.org>
12489
12490         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12491           making try_set_caps() work with non-fixed caps.
12492
12493 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12494
12495         * docs/pwg/advanced_types.xml:
12496         * docs/pwg/intro_basics.xml:
12497         * docs/pwg/intro_preface.xml:
12498         * docs/pwg/pwg.xml:
12499         * docs/pwg/titlepage.xml:
12500           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12501           in here (docs/random/mimetypes), and will from there on work on both
12502           updating outdated parts and adding missing parts.
12503           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12504
12505 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12506
12507         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12508           policy is set
12509
12510 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12511
12512         * gst/gstelement.h:
12513           remove gst_element_factory_get_version. It doesn't exist anymore.
12514         * gst/gstplugin.c:
12515         * gst/gstplugin.h:
12516           remove gst_plugin_set_name and change gst_plugin_get_longname to
12517           gst_plugin_get_description to match code.
12518         * gst/gsterror.h:
12519           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12520         * gst/gstpad.c: (gst_pad_try_set_caps):
12521           make it work with nonfixed caps.
12522           Note that even in the nonfixed case the link function of the pad
12523           that tries to set caps isn't called.
12524
12525 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12526
12527         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12528           fix bug where buffer was not assembled correctly
12529         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12530           silence by default
12531         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12532           only seek if there's no more buffers that could work without seeking
12533
12534 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12535
12536         * gst/gsttag.c: (_gst_tag_initialize):
12537         * gst/gsttag.h:
12538           Add application tag (for encoding/muxing app).
12539
12540 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12541
12542         * autogen.sh:
12543           make autopoint force, and libtoolize not copy
12544         * common/m4/as-docbook.m4:
12545           added docbook xml catalog setup check
12546         * common/m4/gst-doc.m4:
12547           use docbook check
12548
12549 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12550
12551         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12552         * gst/gsttag.h:
12553           add GstTagFlag
12554
12555 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12556
12557         * docs/gst/gstreamer-sections.txt:
12558         * docs/gst/tmpl/gst.sgml:
12559         * docs/gst/tmpl/gstbuffer.sgml:
12560         * docs/gst/tmpl/gstclock.sgml:
12561         * docs/gst/tmpl/gstelement.sgml:
12562         * docs/gst/tmpl/gstreamer-unused.sgml:
12563         * docs/gst/tmpl/gstxml.sgml:
12564           sync latest API changes to docs
12565
12566 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12567
12568         * gst/gstpluginfeature.c:
12569           fix doc snippet
12570         * tools/gst-inspect.c: (print_element_list):
12571           fix output of typefind
12572           add GPL header
12573         * tools/gst-launch.c:
12574           add GPL header
12575
12576 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12577
12578         * gst/elements/Makefile.am:
12579         * gst/elements/gstelements.c:
12580         * gst/elements/gsttypefindelement.c:
12581         * gst/elements/gsttypefindelement.h:
12582         * po/POTFILES.in:
12583         * po/fr.po:
12584         * po/nl.po:
12585           renamed gsttypefindelement to gsttypefind, conserving CVS history
12586
12587 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12588
12589         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12590         * gst/gsttag.h:
12591           add some tags used in ogg as well
12592           fix _ in replaygain tags
12593
12594 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12595
12596         * gst/gsterror.h:
12597           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12598
12599 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12600
12601         * gst/gstelement.c: (gst_element_error_full):
12602         * gst/gstelement.h:
12603           change _extended to _full
12604
12605 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12606
12607         reviewed by: <delete if not using a buddy>
12608
12609         * docs/gst/tmpl/gst.sgml:
12610         * docs/gst/tmpl/gstbuffer.sgml:
12611         * docs/gst/tmpl/gstclock.sgml:
12612         * docs/gst/tmpl/gstelement.sgml:
12613         * docs/gst/tmpl/gstreamer-unused.sgml:
12614         * docs/gst/tmpl/gstxml.sgml:
12615         * gst/gstelement.c: (gst_element_error_full):
12616         * gst/gstelement.h:
12617
12618 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12619
12620         * gst/gstelement.h: fix _gst_element_error_printf prototype
12621
12622 2004-01-20  David Schleef  <ds@schleef.org>
12623
12624         * gst/gststructure.c: (gst_structure_to_string):
12625         Convert function to use gst_value_serialize().
12626         * gst/gstvalue.c: (gst_value_serialize_list),
12627         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
12628         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
12629         (gst_value_serialize_int), (gst_value_serialize_double),
12630         (gst_string_wrap), (gst_value_serialize_string),
12631         (gst_value_serialize), (gst_value_deserialize):
12632         * gst/gstvalue.h:
12633         Add implementations for serialize.
12634
12635 2004-01-20  Julien MOUTTE  <julien@moutte.net>
12636
12637         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
12638         we want to keep that one in the future or change xvidenc.c to use 
12639         another error.
12640
12641 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12642
12643         * gst/gstelement.c: (_gst_element_error_printf):
12644         * gst/gstelement.h:
12645           privatise function
12646
12647 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12648
12649         * docs/random/error:
12650           doc explaining error system
12651         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12652           cleanup
12653
12654 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12655
12656         * gst/gst-i18n-app.h:
12657         * gst/gst-i18n-lib.h:
12658           remove inclusion of config.h
12659         * po/POTFILES.in:
12660         * po/nl.po:
12661           add gst/gstelement.c
12662
12663 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12664
12665         * po/nl.po: updated Dutch translation
12666
12667 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12668
12669         * gst/gsterror.c: (_gst_core_errors_init),
12670         (_gst_library_errors_init), (_gst_resource_errors_init),
12671         (_gst_stream_errors_init):
12672         remove ending punctuation dots
12673
12674 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12675
12676         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12677         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
12678         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12679         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12680         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12681         use GST_ERROR_SYSTEM
12682
12683 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12684
12685         * gst/gstelement.c: (gst_element_error_printf),
12686         (gst_element_error_extended):
12687         * gst/gstelement.h:
12688           add a helper printf function so we can have NULL values passed.
12689
12690 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12691
12692         * gst/gstelement.h:
12693           add G_STMT macros to gst_element_error, which isn't strictly
12694           necessary but people tell me to anyway.
12695
12696 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12697
12698         * gst/Makefile.am:
12699         * gst/autoplug/gstspideridentity.c:
12700         (gst_spider_identity_sink_loop_type_finding):
12701         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12702         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12703         (gst_filesink_close_file), (gst_filesink_handle_event),
12704         (gst_filesink_chain):
12705         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
12706         (gst_filesrc_map_region), (gst_filesrc_get_read),
12707         (gst_filesrc_open_file):
12708         * gst/elements/gstidentity.c: (gst_identity_chain):
12709         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12710         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12711         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12712         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
12713         * gst/gst.h:
12714         * gst/gst_private.h:
12715         * gst/gstelement.c: (gst_element_class_init),
12716         (gst_element_default_error), (gst_element_error_func),
12717         (gst_element_error_extended):
12718         * gst/gstelement.h:
12719         * gst/gsterror.c: (_gst_core_errors_init),
12720         (_gst_library_errors_init), (_gst_resource_errors_init),
12721         (_gst_stream_errors_init), (gst_error_get_message):
12722         * gst/gsterror.h:
12723         * gst/gstinfo.c: (_gst_debug_init):
12724         * gst/gstmarshal.list:
12725         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12726         (gst_pad_recover_caps_error), (gst_pad_pull):
12727         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12728         * gst/schedulers/gstbasicscheduler.c:
12729         (gst_basic_scheduler_chainhandler_proxy),
12730         (gst_basic_scheduler_gethandler_proxy),
12731         (gst_basic_scheduler_cothreaded_chain):
12732         * po/POTFILES.in:
12733         * po/fr.po:
12734         * po/nl.po:
12735           change error signal
12736           add error categories
12737
12738 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
12739
12740         * gst/gsttag.c: (_gst_tag_initialize):
12741         * gst/gsttag.h:
12742         Add replaygain tag
12743
12744 2004-01-18  Colin Walters  <walters@verbum.org>
12745
12746         * examples/retag/retag.c: Call gst_init before processing
12747         program args.  Add g_assert to _link_many call.
12748
12749 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12750
12751         * gst/gstpad.c: (gst_pad_alloc_buffer):
12752           Return a newly allocated buffer when the pad has no peer.
12753
12754 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12755
12756         * gst/gstclock.c: (gst_clock_get_time):
12757           make it compile with gcc 2.95 again.
12758           Patch by Scott Wheeler
12759
12760 2004-01-15  David Schleef  <ds@schleef.org>
12761
12762         * gst/gstcaps.h:
12763         Added gst_caps_is_simple() macro.
12764         * testsuite/caps/caps.c: (test1):
12765         * testsuite/caps/intersect2.c: (main):
12766         * testsuite/caps/intersection.c: (main):
12767         Fixes to make 'make check' work again after removing
12768         gst_caps_is_chained().
12769
12770 2004-01-15  Leif Johnson <leif@ambient.2y.net>
12771
12772         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
12773         and additions to the MIDI document.
12774
12775 2004-01-15  David Schleef  <ds@schleef.org>
12776
12777         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
12778         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
12779         of GST_RPAD_, since we don't know if it's a real or ghost pad.
12780
12781 2004-01-15  David Schleef  <ds@schleef.org>
12782
12783         * gst/gstqueue.c:
12784         * gst/gstqueue.h:
12785         Fix the spelling of "treshold" and make min_threshold actually
12786         affect the queue.
12787
12788 2004-01-15  David Schleef  <ds@schleef.org>
12789
12790         * gst/gstcaps.c:
12791         Add lots of documentation.
12792         * gst/gstcaps.h:
12793         Deprecate a few functions.
12794         * gst/gstpad.c:
12795         Removed use of deprecated functions.
12796
12797 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12798
12799         * gst/gstpad.c: (gst_pad_is_linked):
12800         * gst/gstpad.h:
12801           implement gst_pad_is_linked
12802         * gst/gstelement.h:
12803           reserve space for initiate_state_change
12804
12805 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12806
12807         * gst/autoplug/gstspideridentity.c:
12808         (gst_spider_identity_sink_loop_type_finding):
12809           break infinite loop by just returning instead of looping
12810         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
12811           set event time difference correctly. Set it to 1 second instead
12812           of 100ms to be more tolerant
12813         * gst/gstelement.c: (gst_element_set_time):
12814           add debugging output
12815
12816 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12817
12818         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
12819           query if buffers are inside the pool, ignore events
12820
12821 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12822
12823         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
12824         (gst_clock_set_speed), (gst_clock_set_active),
12825         (gst_clock_is_active), (gst_clock_reset),
12826         (gst_clock_handle_discont):
12827         * gst/gstclock.h:
12828           deprecate old interface and disable functions that aren't in use
12829           anymore.
12830         * gst/gstelement.h:
12831         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
12832         (gst_element_set_time), (gst_element_adjust_time):
12833           add concept of "element time" and functions to get/set this time.
12834         * gst/gstelement.c: (gst_element_change_state):
12835           update element time correctly.
12836         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12837           This is a debug message, not a g_critical.
12838         * gst/gstpad.c: (gst_pad_event_default):
12839           handle discontinuous events right with element time.
12840         * gst/gstscheduler.c: (gst_scheduler_state_transition):
12841           update to clocking fixes.
12842           set clocks on elements in READY=>PAUSED. The old behaviour caused
12843           a wrong element time on the first element that started playing.
12844         * gst/schedulers/gstbasicscheduler.c:
12845         (gst_basic_scheduler_class_init):
12846         * gst/schedulers/gstoptimalscheduler.c:
12847         (gst_opt_scheduler_class_init):
12848           remove code that just implements the default behaviour.
12849         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
12850           update to use new clocking functions
12851         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
12852         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
12853           update to test new element time.
12854         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
12855           use _get_allowed_caps instead of _get_caps. This catches filtered
12856           caps correctly.
12857         * testsuite/debug/commandline.c:
12858           update for new GST_DEBUG syntax.
12859         * testsuite/threads/Makefile.am:
12860           disable a test that only works sometimes.
12861
12862 2004-01-13  Julien MOUTTE <julien@moutte.net>
12863
12864         * po/LINGUAS: Adding fr.
12865         * po/fr.po: Adding french translation.
12866
12867 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12868
12869         * gst/parse/grammar.y:
12870         * po/POTFILES.in:
12871         * po/nl.po:
12872         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
12873           translate parsing error messages
12874
12875 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12876
12877         * po/POTFILES.in: adding gst-launch
12878         * po/nl.po: updated translation, all 99 strings translated
12879         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
12880         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
12881           fix strings for translation
12882
12883 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12884
12885         * gst/gst.c:
12886           - capitalize beginnings of popt options
12887           - fix strings for translation
12888           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
12889
12890 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12891
12892         * po/README: add some notes on how to update translations
12893
12894 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12895
12896         * ABOUT-NLS: removed, is autogenerated from autopoint
12897         * autogen.sh: add autopoint stuff
12898         * configure.ac: fix up gettext stuff
12899         * gst/Makefile.am: add i18n headers to noinst_HEADERS
12900         * gst/elements/gsttypefindelement.c: add header include
12901         * gst/gettext.h: add header, copy from system-installed header
12902         * gst/gst-i18n-app.h: to be included by each app having translations
12903         * gst/gst-i18n-lib.h: to be included by each lib having translations
12904         * gst/gst.c: (init_pre): fix up gettext calls
12905         * gst/gst_private.h: remove i18n stuff, moving to separate headers
12906         * po/LINGUAS: the new way to specify translations present
12907         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
12908         * po/Makevars: the variables filled in for GStreamer
12909         * po/POTFILES.in: added new files with translations
12910         * po/de.po: has new strings
12911         * po/nl.po: readded, has new strings
12912
12913 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12914
12915         * gst/gsttag.c: fix some strings marked for translation
12916
12917 2004-01-13  Iain <iain@prettypeople.org>
12918
12919         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
12920         group when we add an element to it, cos we unref it when we remove one
12921
12922 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12923
12924         * testsuite/debug/commandline.c: (debug_not_reached):
12925         * testsuite/debug/output.c: (check_message):
12926           fix testsuite
12927
12928 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12929
12930         * examples/cutter/.cvsignore:
12931         * examples/helloworld/.cvsignore:
12932         * examples/launch/.cvsignore:
12933         * examples/manual/.cvsignore:
12934         * examples/mixer/.cvsignore:
12935         * examples/pingpong/.cvsignore:
12936         * examples/plugins/.cvsignore:
12937         * examples/queue/.cvsignore:
12938         * examples/queue2/.cvsignore:
12939         * examples/queue3/.cvsignore:
12940         * examples/queue4/.cvsignore:
12941         * examples/retag/.cvsignore:
12942         * examples/thread/.cvsignore:
12943         * examples/typefind/.cvsignore:
12944         * examples/xml/.cvsignore:
12945         * gst/.cvsignore:
12946         * gst/autoplug/.cvsignore:
12947         * gst/elements/.cvsignore:
12948         * gst/indexers/.cvsignore:
12949         * gst/parse/.cvsignore:
12950         * gst/registries/.cvsignore:
12951         * gst/schedulers/.cvsignore:
12952         * libs/gst/bytestream/.cvsignore:
12953         * libs/gst/control/.cvsignore:
12954         * libs/gst/getbits/.cvsignore:
12955         * tests/.cvsignore:
12956         * tests/bufspeed/.cvsignore:
12957         * tests/instantiate/.cvsignore:
12958         * tests/memchunk/.cvsignore:
12959         * tests/muxing/.cvsignore:
12960         * tests/sched/.cvsignore:
12961         * tests/seeking/.cvsignore:
12962         * tests/threadstate/.cvsignore:
12963         * testsuite/.cvsignore:
12964         * testsuite/caps/.cvsignore:
12965         * testsuite/cleanup/.cvsignore:
12966         * testsuite/dynparams/.cvsignore:
12967         * testsuite/plugin/.cvsignore:
12968         * tools/.cvsignore:
12969           update - this is huge, because it includes *.bb, *.bbg and *.da files
12970           which are generated for gcov.
12971
12972 2004-01-11  David Schleef  <ds@schleef.org>
12973
12974         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
12975         a function to parse integers in ways that strto[u]l() does not.
12976
12977 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12978
12979         * tools/gst-inspect.c: (print_caps):
12980           improve output of caps a bit
12981
12982 2004-01-11  David Schleef  <ds@schleef.org>
12983
12984         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
12985         inherit correct flags (READONLY and DONTKEEP).
12986
12987 2004-01-11  David Schleef  <ds@schleef.org>
12988
12989         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
12990         (gst_filesrc_map_region):
12991         * gst/gstbuffer.c: (_gst_buffer_initialize),
12992         (_gst_buffer_sub_free), (gst_buffer_default_copy),
12993         (gst_buffer_new), (gst_buffer_create_sub),
12994         (gst_buffer_is_span_fast), (gst_buffer_span):
12995         * gst/gstbuffer.h:
12996         Change GstBuffer private structure element names. (all files)
12997         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
12998         (gst_queue_link):
12999         * gst/gstqueue.h:
13000         Implement getcaps/pad_link functions that handle the case where
13001         there are data in the queue.
13002
13003 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13004
13005         * gst/elements/gstbufferstore.c:
13006           initialize debugging structure correctly
13007         * gst/elements/gsttee.c: (gst_tee_set_property):
13008           g_object_notify when property was changed
13009         * gst/elements/gsttypefindelement.c:
13010         (gst_type_find_element_change_state):
13011           clear caps correctly
13012
13013 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13014
13015         * gst/gstqueue.c: (gst_queue_init):
13016           Use better defaults for when a queue should block. This
13017           gets rid of jerky playback for quite a few files.
13018           It takes more memory.
13019
13020 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13021
13022         (gst_xml_registry_parse_padtemplate):
13023           make critical message slightly more useful
13024
13025 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13026
13027         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13028         (gst_debug_message_get), (gst_debug_log_default):
13029         * gst/gstinfo.h:
13030           Change gst_debug_log(_valist) to take a const format string.
13031           Change prototype of log function and functions using those to 
13032           take a GstDebugMessage instead of a string that requires using
13033           gst_debug_message_get.
13034
13035 2004-01-08  David Schleef  <ds@schleef.org>
13036
13037         * Makefile.am:
13038         * configure.ac:
13039         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13040         and -ftest-coverage, which allows gcov to show information about
13041         testsuite coverage.
13042
13043 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13044
13045         * gst/gstutils.h:
13046           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13047           GST_PARENT_CALL_WITH_DEFAULT
13048         * gst/elements/gstaggregator.c: 
13049         * gst/elements/gstbufferstore.c: 
13050         * gst/elements/gstfakesink.c: 
13051         * gst/elements/gstfakesrc.c: 
13052         * gst/elements/gstfdsink.c: 
13053         * gst/elements/gstfdsrc.c: 
13054         * gst/elements/gstfilesink.c: 
13055         * gst/elements/gstfilesrc.c: 
13056         * gst/elements/gstidentity.c: 
13057         * gst/elements/gstmd5sink.c: 
13058         * gst/elements/gstmultidisksrc.c:
13059         * gst/elements/gstpipefilter.c: 
13060         * gst/elements/gstshaper.c:
13061         * gst/elements/gststatistics.c:
13062         * gst/elements/gsttee.c:
13063         * gst/elements/gsttypefindelement.c:
13064           use them.
13065
13066 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13067
13068         * docs/gst/gstreamer-docs.sgml: remove props
13069         * docs/gst/gstreamer-sections.txt: remove props
13070         * docs/gst/tmpl/gst.sgml:
13071         * docs/gst/tmpl/gstbin.sgml:
13072         * docs/gst/tmpl/gstbuffer.sgml:
13073         * docs/gst/tmpl/gstcaps.sgml:
13074         * docs/gst/tmpl/gstclock.sgml:
13075         * docs/gst/tmpl/gstelement.sgml:
13076         * docs/gst/tmpl/gstindex.sgml:
13077         * docs/gst/tmpl/gstobject.sgml:
13078         * docs/gst/tmpl/gstpad.sgml:
13079         * docs/gst/tmpl/gstpadtemplate.sgml:
13080         * docs/gst/tmpl/gstreamer-unused.sgml:
13081         * docs/gst/tmpl/gstthread.sgml:
13082         * docs/gst/tmpl/gstxml.sgml:
13083           sync with code reorganization
13084
13085 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13086
13087         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13088         Make the 'Could not find compatible pad' message more informative.
13089
13090 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13091                                                                                 
13092         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13093           Fix for if we pass NULL as property to location.
13094         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13095         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13096           Fix for instantiate-test (see below).
13097         * gst/gststructure.c: (_gst_structure_parse_value):
13098           Fix compile error on gcc-2.96.
13099         * configure.ac:
13100         * tests/Makefile.am:
13101         * tests/instantiate/Makefile.am:
13102         * tests/instantiate/create.c: (create_all_elements), (main):
13103           Add a test that instantiates all elements. This makes it easy to
13104           track dead code for old API/design (like setting event functions
13105           on sink pads and so on).
13106
13107 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13108
13109         * gst/gstcaps.c: (gst_caps_append_structure):
13110           Move the poisoning to allow a NULL structure
13111         * gst/gstevent.c: (_gst_event_free):
13112           When freeing a navigation event, free the structure
13113           also
13114
13115 2004-01-04  David Schleef  <ds@schleef.org>
13116
13117         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13118         Remove usage of gst_pad_proxy_fixate.
13119         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13120         (gst_caps_split_one), (gst_caps_replace):
13121         Add poisoning code.
13122         * gst/gstmarshal.list:
13123         Add pointer__pointer for fixate signal
13124         * gst/gstpad.c: (gst_real_pad_class_init),
13125         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13126         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13127         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13128         Add poisoning code. Add fixate signal on RealPad. Change
13129         set_explicit_caps() to take const GstCaps, like try_set_caps().
13130         * gst/gstpad.h:
13131         * testsuite/caps/Makefile.am:
13132         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13133
13134 2004-01-03  David Schleef  <ds@schleef.org>
13135
13136         * gst/elements/gsttypefindelement.c:
13137         (gst_type_find_element_have_type), (gst_type_find_element_init):
13138         Use gst_pad_use_explicit_caps for src pad.
13139         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13140         before using it.
13141
13142 2004-01-03  David Schleef  <ds@schleef.org>
13143
13144         * gst/gstelement.c: (gst_element_link_pads_filtered),
13145         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13146         that linking was successful.
13147         * gst/gstpad.c: (gst_pad_link_free),
13148         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13149         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13150         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13151         GstPadLinkReturn correctly between functions, and don't fail
13152         when DELAYED is used (DELAYED is very important).  Better
13153         cleanup on unlinking and unnegotiation.  Should fix some spider
13154         bugs.
13155
13156 2004-01-02  David Schleef  <ds@schleef.org>
13157
13158         * gst/gstelement.c: (gst_element_class_init),
13159         (gst_element_base_class_init): ->padtemplates should be cleared
13160         in base_init, since we need to have a fresh list for every
13161         class.  (Alternately, we chould copy the list and share the
13162         actual pad templates (not the list), but that would require
13163         changing every plugin to move pad template registration from
13164         base_init to class_init.)
13165
13166 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13167
13168         * gst/gstelement.c: (gst_element_class_add_pad_template):
13169           Refuse registering a pad template if another pad template
13170           with the same name already exists (#114715).
13171
13172 2004-01-02  David Schleef  <ds@schleef.org>
13173
13174         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13175         (gst_caps_is_equal_fixed): Add new function.
13176         * gst/gstcaps.h: ditto.
13177         * gst/gstpad.c: (gst_real_pad_class_init),
13178         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13179         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13180         check new caps against existing caps -- if they're the same, return
13181         OK without renegotiating.  caps-nego-failed signal fixed so that
13182         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13183         to save an extra caps copy.  Don't complete negotiation if a pad
13184         link function returns DELAYED.
13185
13186 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13187
13188         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13189           Fix wrong g_return_if_fail
13190
13191 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13192
13193         * gst/gstbin.c: (gst_bin_class_init):
13194         Change the marshalling of element_added/element_removed
13195         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13196         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13197
13198 2004-01-01  David Schleef  <ds@schleef.org>
13199
13200         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13201         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13202         (gst_pad_use_explicit_caps):
13203         * gst/gstpad.h:
13204         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13205         to use an internal getcaps and link fuction so that negotiation
13206         always results in the explicitly set caps.
13207         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13208         are particularly useful for decoders.
13209
13210 2003-12-31  David Schleef  <ds@schleef.org>
13211
13212         * gst/elements/gstidentity.c: (gst_identity_class_init),
13213         (gst_identity_init), (gst_identity_chain),
13214         (gst_identity_set_property), (gst_identity_get_property):
13215         * gst/elements/gstidentity.h:
13216         * gst/gstqueue.c: (gst_queue_init):
13217           Negotiation fixes.
13218
13219 2003-12-31  David Schleef  <ds@schleef.org>
13220
13221         * gst/gstcaps.c: (gst_caps_intersect),
13222         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13223           Implement gst_caps_normalize().
13224         * testsuite/caps/normalisation.c: (main):
13225           Add an additional test
13226
13227 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13228
13229         * gst/gstqueue.c: (gst_queue_init):
13230           use gst_pad_proxy_getcaps()
13231
13232 2003-12-31  David Schleef  <ds@schleef.org>
13233
13234         * gst/elements/gstshaper.c: (gst_shaper_link):
13235         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13236         * gst/gstqueue.c: (gst_queue_link):
13237           Negotiation fixes.
13238
13239 2003-12-31  David Schleef  <ds@schleef.org>
13240
13241         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13242         * gst/gstpad.h: Add functions that are useful as default pad
13243         link and fixate functions for elements.
13244
13245 2003-12-30  David Schleef  <ds@schleef.org>
13246
13247         * gst/gstpad.c: (gst_pad_link_try):
13248           Fix segfault when attempting to return to old caps
13249
13250 2003-12-29  David Schleef  <ds@schleef.org>
13251
13252         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13253         (gst_caps_structure_simplify), (gst_caps_simplify):
13254         * gst/gstcaps.h:
13255           Add simplify function
13256         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13257         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13258         * gst/gstpad.h:
13259           Copy over srcnotify, sinknotify when calling old pad_link
13260           functions.  Add new is_negotiated() function.
13261         * gst/gststructure.c: (gst_structure_copy):
13262           Fix an incredibly stupid bug that should have been noticed
13263           weeks ago.  _copy() returned the argument, not the new copy.
13264
13265 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13266
13267         * gst/gstcaps.c: (gst_caps_append):
13268           add sanity checks
13269         * gst/gstcaps.h: (gst_caps_debug):
13270           remove, it doesn't exist anymore.
13271         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13272         (gst_element_threadsafe_properties_post_run):
13273           make debugging messages not clutter up THREAD debug category
13274         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13275         (gst_element_change_state):
13276           update to new caps API
13277         * gst/gstinterface.c: (gst_implements_interface_cast):
13278           don't put vital code in g_return_if_fail
13279         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13280         (gst_pad_link_filtered):
13281           add pst_pad_try_link and use it.
13282         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13283           implement correctly, deprecate first one.
13284         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13285           add and implement.
13286         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13287           implement.
13288         (gst_pad_get_negotiated_caps):
13289           add and implement. Make GST_PAD_CAPS call this function.
13290         (gst_pad_get_caps):
13291           remove unneeded check..
13292         (gst_pad_recover_caps_error):
13293           disable, always return FALSE.
13294         (gst_real_pad_dispose):
13295           don't free caps and appfilter anymore, they're unused.
13296         * gst/gstpad.h:
13297           Reflect changes mentioned above.
13298         * gst/gstsystemclock.c: (gst_system_clock_wait):
13299           Make 'clock is way behind' a debugging message.
13300         * gst/gstthread.c: (gst_thread_change_state):
13301           Fix debugging message
13302
13303 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13304
13305         * gst/gstinfo.h:
13306           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13307         * docs/gst/tmpl/gstreamer-unused.sgml:
13308           removed all traces of cvs conflicts
13309
13310 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13311
13312         * configure.ac:
13313         * gst/schedulers/cothreads_compat.h:
13314         * libs/Makefile.am:
13315           remove last instances of wingo cothread usage
13316
13317 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13318
13319         * gst/gstplugin.c:
13320         * gst/gstversion.h.in:
13321         * gst/parse/grammar.y:
13322           change comment block from /** to /* when not gtk-doc comments
13323
13324 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13325
13326         * gst/gst.c: whitespace and doc style fixes
13327
13328 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13329
13330         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13331
13332 2003-12-24  Colin Walters  <walters@verbum.org>
13333
13334         * gst/elements/gsttypefindelement.c:
13335           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13336           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13337           Don't double-free caps.
13338
13339 2003-12-23  David Schleef  <ds@schleef.org>
13340
13341         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13342           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13343           Many little fixes and additions of debug statements to
13344           get rhythmbox working.
13345
13346 2003-12-23  Colin Walters  <walters@verbum.org>
13347
13348         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13349         Use GST_PAD_LINK_SUCCESSFUL.
13350
13351 2003-12-23  David Schleef  <ds@schleef.org>
13352
13353         * gst/elements/gstaggregator.c:
13354         * gst/elements/gsttee.c:
13355           Use gst_pad_proxy_getcaps().
13356         * gst/gstpad.c:
13357         * gst/gstpad.h:
13358           Add gst_pad_proxy_getcaps(), which filter elements can use
13359           as a generic getcaps implementation.
13360           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13361           was advertised.
13362
13363 2003-12-23  David Schleef  <ds@schleef.org>
13364
13365         * gst/gstpad.c:
13366           Rearrange/rewrite much of the pad negotiation code, since it
13367           resembled pasta.  This actually changes the way some
13368           negotiation works, since the previous code was inconsistent
13369           depending on how it was invoked.  Add (internal) structure
13370           GstPadLink, which is used to hold some information (more in
13371           the future) about the link between two pads.  Fixes a number
13372           of bugs, including random lossage of filter caps when the
13373           initial negotiation is delayed.  A few functions are still
13374           unimplemented.
13375         * gst/gstpad.h:
13376           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13377           these when testing GstPadLinkReturn values instead of comparing
13378           directly.
13379
13380 2003-12-23  David Schleef  <ds@schleef.org>
13381
13382         * gst/gstvalue.c: 
13383         * gst/gstvalue.h:
13384           Rearrange lots of code.  Change registration of compare function
13385           into registration of compare/serialize/deserialize functions.
13386           Doesn't include implementation of gst_value_[de]serialize(),
13387           but that should be easy.
13388
13389 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13390
13391         * docs/gst/gstreamer-sections.txt:
13392         * docs/gst/tmpl/gstprops.sgml: removed
13393         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13394           David removed props and caps code, so let's remove their docs as well.
13395           Removed all no longer existing symbols from gstreamer-sections.txt
13396           
13397 2003-12-22  Colin Walters  <walters@verbum.org>
13398
13399         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13400           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13401           of tags directly.
13402
13403 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13404
13405         * gst/elements/gstelements.c:
13406           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13407         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13408           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13409           gst_caps (peer).
13410
13411 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13412
13413         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13414         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13415         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13416         (gst_spider_identity_sink_loop_type_finding):
13417         * gst/autoplug/gstspideridentity.h:
13418           Fix autoplugging in spider element, so it works with new caps.
13419           This was mainly caused by identifying empty caps incorrectly.
13420
13421 2003-12-22  David Schleef  <ds@schleef.org>
13422
13423         * gststructure.c, gstvalue.c, gstvalue.h: Add
13424           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13425           using g_value_copy()
13426
13427 2003-12-21  David Schleef  <ds@schleef.org>
13428
13429         * many, many files: Merge CAPS branch.  This includes:
13430           - implemention of GstValue and several GstValue types
13431           - implemention of GstStructure
13432           - entire rewrite of GstCaps
13433           - removal of GstProps
13434           - many changes to GstPad to compensate for new caps paradigm
13435           - removal of GstBufferpool
13436         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13437         gstvalue.h, gst/gstcaps[2]*.[ch]:
13438           - rename gstcaps2.[ch] to gstcaps.[ch]
13439
13440 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13441
13442         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13443         (gst_queue_chain), (gst_queue_handle_src_event):
13444           implement timeout for sending events. Workaround for if the
13445           pipeline on this queue is not passing any data.
13446
13447 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13448                                                                                 
13449         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13450         * moved CVS to freedesktop.org
13451