check/gst/gstghostpad.c: Added test for removing an element with ghostpad from a...
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-07-29  Wim Taymans  <wim@fluendo.com>
2
3         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
4         Added test for removing an element with ghostpad from a bin.
5         Fixed test as current implementation does the right thing.
6
7         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
8         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
9         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
10         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
11         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
12         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
13         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
14         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
15         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
16         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
17         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
18         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
19         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
20         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
21         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
22         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
23         * gst/gstghostpad.h:
24         Clean up ghostpads, remove properties for internal stuff.
25         Make threadsafe.
26         Fix refcounting.
27         Prepare for switching targets, not all use cases work yet.
28
29 2005-07-29  Wim Taymans  <wim@fluendo.com>
30
31         * docs/design/part-gstghostpad.txt:
32         Small update.
33
34         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
35         (gst_bin_remove_func):
36         Unlinking pads while holding the bin LOCK is not a good
37         idea.
38
39         * gst/gstpad.c: (gst_pad_class_init),
40         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
41         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
42         No prob setting template after creating the pad.
43
44 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
45
46         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
47         (gst_bus_peek), (gst_bus_source_dispatch),
48         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
49         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
50           gst_bus_poll may be called from other threads. Handle
51           this nicely by not making poll_data disappear off the
52           stack once gst_bus_poll returns.
53           gst_bus_peek now increments the refcount on the returned
54           message.
55
56 2005-07-29  Wim Taymans  <wim@fluendo.com>
57
58         * docs/design/part-gstghostpad.txt:
59         Overview of current GhostPad datastructures and use
60         cases for changing the target.
61
62 2005-07-28  Wim Taymans  <wim@fluendo.com>
63
64         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
65         Added checks for hierarchy consistency whan adding linked
66         elements to bins.
67
68         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
69         Added check to test element scheduling without bin/pipeline.
70
71         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
72         First add elements to bin, then link.
73         
74         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
75         (gst_bin_remove_func):
76         Unlink pads from elements added/removed from bin to maintain
77         hierarchy consistency.
78
79 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
80
81         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
82         (gst_base_transform_handle_buffer):
83         * gst/base/gstbasetransform.h:
84           Remove broken delay_configure (fixes renegotiation of software
85           scaling pipelines); remove some leftover printf()s.
86
87 2005-07-28  Wim Taymans  <wim@fluendo.com>
88
89         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
90         Added some more tests for wrong hierarchy
91
92         * docs/design/part-overview.txt:
93         Some updates.
94
95         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
96         Cleanups.
97
98         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
99         (gst_element_dispose):
100         Some more cleanups.
101
102         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
103         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
104         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
105         (gst_pad_set_caps), (gst_pad_send_event):
106         Check for correct hierarchy when linking pads. Moving to
107         strict requirement for ghostpads when linking elements in
108         different bins.
109
110         * gst/gstpad.h:
111         Clean ups. Added WRONG_HIERARCHY return value.
112
113 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
114
115         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
116           Better debug if no transform is possible.
117
118 2005-07-27  Wim Taymans  <wim@fluendo.com>
119
120         * docs/random/wtay/network-transp:
121         Some old doc I had.
122
123 2005-07-27  Wim Taymans  <wim@fluendo.com>
124
125         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
126         (gst_dp_event_from_packet):
127         Fix serialization of seek events.
128
129 2005-07-27  Wim Taymans  <wim@fluendo.com>
130
131         * check/gst-libs/gdp.c: (GST_START_TEST):
132         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
133         Fix compilation and fix event serialization.
134
135 2005-07-27  Wim Taymans  <wim@fluendo.com>
136
137         * CHANGES-0.9:
138         * docs/design/part-TODO.txt:
139         * docs/design/part-events.txt:
140         Some docs updates
141
142         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
143         (gst_base_sink_event), (gst_base_sink_do_sync),
144         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
145         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
146         (gst_base_src_do_seek), (gst_base_src_event_handler),
147         (gst_base_src_loop):
148         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
149         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
150         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
151         (gst_base_transform_event), (gst_base_transform_handle_buffer),
152         (gst_base_transform_set_passthrough),
153         (gst_base_transform_is_passthrough):
154         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
155         * gst/elements/gstfilesink.c: (gst_file_sink_event):
156         Event updates.
157
158         * gst/gstbuffer.h:
159         Use faster casts.
160
161         * gst/gstelement.c: (gst_element_seek):
162         * gst/gstelement.h:
163         Update gst_element_seek.
164
165         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
166         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
167         (gst_event_new_flush_start), (gst_event_new_flush_stop),
168         (gst_event_new_eos), (gst_event_new_newsegment),
169         (gst_event_parse_newsegment), (gst_event_new_tag),
170         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
171         (gst_event_parse_qos), (gst_event_new_seek),
172         (gst_event_parse_seek), (gst_event_new_navigation):
173         * gst/gstevent.h:
174         Make GstEvent use GstStructure. Add parsing code, make sure the
175         API is sufficiently generic.
176         Mark possible directions of events and serialization.
177
178         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
179         (_gst_message_copy), (gst_message_new_segment_start),
180         (gst_message_new_segment_done), (gst_message_new_custom),
181         (gst_message_parse_segment_start),
182         (gst_message_parse_segment_done):
183         Small cleanups.
184
185         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
186         (gst_pad_set_caps), (gst_pad_send_event):
187         Update for new events. 
188         Catch events sent in wrong directions.
189
190         * gst/gstqueue.c: (gst_queue_link_src),
191         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
192         (gst_queue_handle_src_query):
193         Event updates.
194
195         * gst/gsttag.c:
196         * gst/gsttag.h:
197         Remove event code from this file.
198
199         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
200         (gst_dp_event_from_packet):
201         Event updates.
202
203 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
204
205         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
206         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
207         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
208           Make debugging actually useful.
209
210 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
211
212         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
213         (gst_pad_fixate_caps):
214           Implement default fixation once again, so that gst_pad_fixate()
215           actually does anything at all. This probably needs to be some
216           sort of a last resort, and use profile-based fixation first, but
217           since that doesn't exist yet, this is the best we have. Fixes
218           visualization in Totem.
219
220 2005-07-22  Wim Taymans  <wim@fluendo.com>
221
222         * docs/design/part-events.txt:
223         Small update.
224
225         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
226         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
227         (gst_base_sink_activate_pull):
228         Some more comments.
229
230         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
231         (gst_fake_src_create):
232         Fix handoff marshall.
233
234         * gst/elements/gstidentity.c: (gst_identity_class_init),
235         (gst_identity_transform_ip):
236         We're a real inplace element.
237
238         * gst/gstbus.c: (gst_bus_post):
239         Added some comments.
240
241         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
242         * tests/muxing/case1.c: (main):
243         * tests/sched/dynamic-pipeline.c: (main):
244         * tests/sched/interrupt1.c: (main):
245         * tests/sched/interrupt2.c: (main):
246         * tests/sched/interrupt3.c: (main):
247         * tests/sched/runxml.c: (main):
248         * tests/sched/sched-stress.c: (main):
249         * tests/seeking/seeking1.c: (event_received), (main):
250         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
251         (main):
252         * tests/threadstate/threadstate3.c: (main):
253         * tests/threadstate/threadstate4.c: (main):
254         * tests/threadstate/threadstate5.c: (main):
255         Fix the tests.
256
257 2005-07-21  Wim Taymans  <wim@fluendo.com>
258
259         * docs/design/part-seeking.txt:
260         Some small additions.
261
262         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
263         (gst_base_sink_get_times), (gst_base_sink_do_sync),
264         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
265         * gst/base/gstbasesink.h:
266         discont values are gint64, handle the math correctly.
267
268         * gst/base/gstbasesrc.c: (gst_base_src_loop):
269         Make the basesrc report error if the source pad is not linked.
270
271         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
272         (gst_queue_loop), (gst_queue_handle_src_query),
273         (gst_queue_src_activate_push):
274         Make queue collect data even if the srcpad is not linked.
275         Start pushing out data as soon as it is linked.
276
277         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
278         * gst/gstutils.h:
279         Added gst_flow_get_name() to ease error reporting.
280
281 2005-07-20  Wim Taymans  <wim@fluendo.com>
282
283         * gst/gstmessage.c: (gst_message_new_segment_start),
284         (gst_message_new_segment_done), (gst_message_parse_segment_start),
285         (gst_message_parse_segment_done):
286         * gst/gstmessage.h:
287         Added a bunch of messages for advanced seeking.
288
289         * gst/parse/grammar.y:
290         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
291         (gst_dpman_state_changed):
292         Fix some new-pad -> pad-added signals
293
294 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
295
296         * docs/manual/appendix-porting.xml:
297         * docs/pwg/appendix-porting.xml:
298           Document new-pad/state-change signal renames and the FixedList
299           type rename.
300
301 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
302
303         * docs/manual/advanced-autoplugging.xml:
304         * docs/manual/basics-helloworld.xml:
305         * docs/manual/basics-pads.xml:
306         * docs/random/ds/0.9-suggested-changes:
307         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
308         * gst/gstelement.h:
309         * gst/gstevent.h:
310         * gst/gstformat.h:
311         * gst/gstquery.h:
312         * gst/gststructure.c: (gst_structure_value_get_generic_type),
313         (gst_structure_parse_array), (gst_structure_parse_value):
314         * gst/gstvalue.c: (gst_type_is_fixed),
315         (gst_value_list_prepend_value), (gst_value_list_append_value),
316         (gst_value_list_get_size), (gst_value_list_get_value),
317         (gst_value_transform_array_string), (gst_value_serialize_array),
318         (gst_value_deserialize_array), (gst_value_intersect_array),
319         (gst_value_is_fixed), (_gst_value_initialize):
320         * gst/gstvalue.h:
321           GstElement::new-pad -> pad-added, GstElement::state-change ->
322           state-changed, GstValueFixedList -> GstValueArray, add format and
323           flags as their own arguments in gst_element_seek() (should improve
324           "bindeability"), remove function generators since they don't work
325           under a whole bunch of compilers (they were deprecated already
326           anyway).
327
328 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
329
330         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
331         (_gst_debug_register_funcptr):
332         * gst/gstinfo.h:
333           Fix illegal cast on some platforms (#309253).
334
335 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
336
337         * gst/gstmessage.c: (gst_message_new_custom):
338         * gst/gstmessage.h:
339           Add _new_custom, make _new_application a macro to _new_custom.
340
341 2005-07-20  Wim Taymans  <wim@fluendo.com>
342
343         * gst/base/gstbasesrc.c: (gst_base_src_init),
344         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
345         * gst/base/gstbasesrc.h:
346         Add a gboolean to decide when to push out a discont.
347
348         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
349         (gst_queue_loop), (gst_queue_handle_src_query),
350         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
351         (gst_queue_set_property), (gst_queue_get_property):
352         Some cleanups.
353
354         * tests/threadstate/threadstate1.c: (main):
355         Make a thread test compile and run... very silly..
356
357
358 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
359
360         * docs/manual/appendix-porting.xml:
361           Mention removal of libgstgconf-0.9.la and existence of gconf
362           elements.
363
364 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
365
366         * docs/pwg/advanced-clock.xml:
367         * docs/pwg/appendix-porting.xml:
368         * docs/pwg/intro-preface.xml:
369         * docs/pwg/other-base.xml:
370         * docs/pwg/other-manager.xml:
371         * docs/pwg/other-nton.xml:
372         * docs/pwg/other-ntoone.xml:
373         * docs/pwg/other-oneton.xml:
374         * docs/pwg/pwg.xml:
375           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
376           demuxer), remove n-to-n (was never written), fix some code examples
377           and links and update the porting section to include all this.
378
379 2005-07-19  Wim Taymans  <wim@fluendo.com>
380
381         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
382         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
383         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
384         (gst_queue_src_activate_push), (gst_queue_change_state),
385         (gst_queue_get_property):
386         * gst/gstqueue.h:
387         Propagate GstFlowReturn more intelligently upstream and output
388         an ERROR/EOS when streaming stopped due to fatal error.
389
390 2005-07-19  Wim Taymans  <wim@fluendo.com>
391
392         * tools/gst-launch.c: (check_intr), (event_loop), (main):
393         Don't block forever for the state change to complete, the
394         pipeline already did with a sensible timeout.
395
396 2005-07-19  Wim Taymans  <wim@fluendo.com>
397
398         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
399         Make sure we never call the create function is we
400         got deactivated.
401
402 2005-07-19  Andy Wingo  <wingo@pobox.com>
403
404         * gst/parse/parse.l: Attempt to solve bug #172815.
405
406 2005-07-19  Wim Taymans  <wim@fluendo.com>
407
408         * docs/design/part-clocks.txt:
409         * docs/design/part-events.txt:
410         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
411         Small docs updates.
412         Only update the seeking values when we are not
413         busy streaming.
414
415 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
416
417         * gst/base/gstbasesrc.c: (gst_base_src_loop):
418           Oops, ignore the result of gst_pad_push_event here.
419
420 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
421
422         * gst/base/gstbasesrc.c: (gst_base_src_loop),
423         (gst_base_src_activate_push):
424           Send discont event from the loop function, as pads
425           aren't activated yet in the activate_push handler.
426
427         * gst/gstbin.c: (bin_bus_handler):
428           Don't leak element name.
429
430 2005-07-18  Andy Wingo  <wingo@pobox.com>
431
432         * configure.ac: Use AS_LIBTOOL_TAGS.
433
434 2005-07-18  Wim Taymans  <wim@fluendo.com>
435
436         * docs/gst/gstreamer.types:
437         Remove deleted types.
438
439 2005-07-18  Wim Taymans  <wim@fluendo.com>
440
441         * check/elements/gstfakesrc.c: (GST_START_TEST):
442         * configure.ac:
443         * gst/Makefile.am:
444         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
445         (init_popt_callback):
446         * gst/gst.h:
447         * gst/gst_private.h:
448         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
449         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
450         * gst/gstbin.h:
451         * gst/gstbus.h:
452         * gst/gstconfig.h.in:
453         * gst/gstelement.c: (gst_element_class_init),
454         (gst_element_set_base_time), (gst_element_get_base_time),
455         (iterator_fold_with_resync), (gst_element_change_state),
456         (gst_element_dispose), (gst_element_get_bus):
457         * gst/gstelement.h:
458         * gst/gstelementfactory.h:
459         * gst/gsterror.c: (_gst_core_errors_init):
460         * gst/gsterror.h:
461         * gst/gstevent.h:
462         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
463         * gst/gstindex.c:
464         * gst/gstinfo.c: (_gst_debug_init):
465         * gst/gstmessage.c: (_gst_message_copy):
466         * gst/gstmessage.h:
467         * gst/gstminiobject.h:
468         * gst/gstobject.c:
469         * gst/gstobject.h:
470         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
471         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
472         * gst/gstpad.h:
473         * gst/gstparse.h:
474         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
475         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
476         (gst_pipeline_get_last_stream_time):
477         * gst/gstpipeline.h:
478         * gst/gstpluginfeature.h:
479         * gst/gstquery.h:
480         * gst/gstscheduler.c:
481         * gst/gstscheduler.h:
482         * gst/gststructure.h:
483         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
484         (gst_task_finalize), (gst_task_func), (gst_task_create),
485         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
486         (gst_task_stop), (gst_task_pause):
487         * gst/gsttask.h:
488         * gst/gsttypefind.h:
489         * gst/gsttypes.h:
490         * gst/registries/gstlibxmlregistry.c: (load_feature),
491         (gst_xml_registry_load), (gst_xml_registry_save_feature):
492         * gst/registries/gstxmlregistry.c:
493         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
494         * gst/schedulers/threadscheduler.c:
495         * libs/gst/control/dparammanager.h:
496         * tools/gst-inspect.c: (print_element_list),
497         (print_plugin_features), (print_element_features):
498         * tools/gst-xmlinspect.c: (print_element_list),
499         (print_plugin_info), (main):
500         Removed plugable schedulers.
501         Removed Scheduler/Manager from elements.
502         Removed gsttypes.h, rearranged includes.
503         Removed dependency pad<->element, element<>pipeline, and
504         various others,  fix includes.
505         implement gst_pad_get_parent() with gst_object_get_parent()
506         Make GstTask sefcontained.
507         Fix _get_state() on GstBin, it did not return ASYNC with a 0
508         timeout.
509         Fix endless loop in iterator_fold_with_resync.
510
511
512 2005-07-18  Wim Taymans  <wim@fluendo.com>
513
514         * gst/Makefile.am:
515         * gst/gstarch.h:
516         Remove old file.
517
518 2005-07-18  Wim Taymans  <wim@fluendo.com>
519
520         * gst/Makefile.am:
521         No more cothreads.h
522
523 2005-07-18  Wim Taymans  <wim@fluendo.com>
524
525         * gst/cothreads.c:
526         * gst/cothreads.h:
527         Let's remove these.
528
529 2005-07-18  Wim Taymans  <wim@fluendo.com>
530
531         * docs/design/part-dynamic.txt:
532         * docs/design/part-events.txt:
533         * docs/design/part-seeking.txt:
534         Some more docs in the works.
535
536         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
537         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
538         (gst_base_transform_setcaps), (gst_base_transform_get_size),
539         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
540         (gst_base_transform_handle_buffer),
541         (gst_base_transform_sink_activate_push),
542         (gst_base_transform_src_activate_pull),
543         (gst_base_transform_set_passthrough),
544         (gst_base_transform_is_passthrough):
545         Refcounting fixes.
546
547         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
548         Cleanups.
549
550         * gst/gstevent.c: (gst_event_finalize):
551         Set SRC to NULL.
552
553         * gst/gstutils.c: (gst_element_unlink),
554         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
555         (gst_pad_proxy_setcaps):
556         * gst/gstutils.h:
557         Add _get_parent_element() to get a pads parent as an element.
558
559 2005-07-18  Wim Taymans  <wim@fluendo.com>
560
561         * check/gst/gstbin.c: (GST_START_TEST):
562         Remove bogus test.
563
564 2005-07-18  Wim Taymans  <wim@fluendo.com>
565
566         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
567         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
568         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
569         (gst_base_sink_event), (gst_base_sink_do_sync),
570         (gst_base_sink_chain), (gst_base_sink_loop),
571         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
572         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
573         Refcounting fixes.
574         Fix logic for returning ASYNC when not prerolled.
575
576 2005-07-18  Wim Taymans  <wim@fluendo.com>
577
578         * gst/gstqueue.c: (gst_queue_handle_sink_event):
579         Fix nasty refcount bug.
580
581 2005-07-16 Philippe Khalaf <burger@speedy.org>
582         * gst/elements/gstfdsrc.c:
583         * gst/elements/gstfdsrc.h:
584         * gst/elements/gstelements.c:
585         * gst/elements/Makefile.am:
586         Ported fdsrc to 0.9.
587
588 2005-07-16  Wim Taymans  <wim@fluendo.com>
589
590         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
591         (gst_base_sink_do_sync):
592         Fix compile error.
593
594 2005-07-16  Wim Taymans  <wim@fluendo.com>
595
596         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
597         (gst_base_sink_event), (gst_base_sink_get_times),
598         (gst_base_sink_do_sync), (gst_base_sink_change_state):
599         * gst/base/gstbasesink.h:
600         Store and use discont values when syncing buffers as described
601         in design docs.
602         
603         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
604         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
605         (gst_base_src_activate_push):
606         Push discont event when starting.
607
608         * gst/elements/gstidentity.c: (gst_identity_transform):
609         Small cleanups.
610
611         * gst/gstbin.c: (gst_bin_change_state):
612         Small cleanups in base_time  distribution.
613
614         * gst/gstelement.c: (gst_element_set_base_time),
615         (gst_element_get_base_time), (gst_element_change_state):
616         * gst/gstelement.h:
617         Added methods for the base_time of the element.
618         Some MT fixes.
619
620         * gst/gstpipeline.c: (gst_pipeline_send_event),
621         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
622         (gst_pipeline_get_last_stream_time):
623         * gst/gstpipeline.h:
624         MT fixes.
625         Handle seeking as described in design doc, remove stream_time
626         hack.
627         Cleanups clock and stream_time selection code. Added accessors
628         for the stream_time.
629         
630
631 2005-07-16  Andy Wingo  <wingo@pobox.com>
632
633         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
634         (#305291).
635
636 2005-07-16  Wim Taymans  <wim@fluendo.com>
637
638         * check/gst/gstbin.c: (GST_START_TEST):
639         Make elements silent as the deep_notify refs the
640         parent, which might make the test fail.
641
642         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
643         Don't hold the lock for too long.
644
645 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
646
647         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
648           Don't unref the caps we passed to gst_caps_make_writable() after
649           passing them. gst_caps_make_writable() will do that for us.
650
651 2005-07-15  Andy Wingo  <wingo@pobox.com>
652
653         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
654         (#157311).
655
656         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
657         own marshalling function for the handoff signal. Properly type the
658         buffer as a buffer. Fixes some warnings. Should do a more general
659         solution.
660         (gst_identity_class_init): Plug into the right marshaller.
661
662 2005-07-15  Wim Taymans  <wim@fluendo.com>
663
664         * docs/design/part-TODO.txt:
665         * docs/design/part-clocks.txt:
666         * docs/design/part-element-sink.txt:
667         * docs/design/part-events.txt:
668         * docs/design/part-gstpipeline.txt:
669         Updated docs, mostly DISCONT related.
670
671 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
672
673         * docs/pwg/building-pads.xml:
674           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
675
676 2005-07-15  Andy Wingo  <wingo@pobox.com>
677
678         * tools/gst-typefind.c: Update, add copyright block.
679
680         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
681         Normalize and truncate caps before fixation.
682
683         * gst/gstcaps.h:
684         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
685         discards all but the first structure from its argument.
686
687 2005-07-15  Wim Taymans  <wim@fluendo.com>
688
689         * gst/base/gstbasetransform.c: (gst_base_transform_init),
690         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
691         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
692         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
693         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
694         (gst_base_transform_chain), (gst_base_transform_change_state),
695         (gst_base_transform_set_passthrough),
696         (gst_base_transform_is_passthrough):
697         * gst/base/gstbasetransform.h:
698         Make passthrough work using the bufferpools.
699         Changed API a bit, subclasses have to write into a buffer
700         provided by the base class.
701         More debug info in nego functions.
702         
703         * gst/elements/gstidentity.c: (gst_identity_init),
704         (gst_identity_transform):
705         Port to new base class.
706
707 2005-07-15  Wim Taymans  <wim@fluendo.com>
708
709         * gst/gstmessage.c: (gst_message_new_state_changed):
710         * tools/gst-launch.c: (event_loop), (main):
711         Totally dump messages in -launch with the -m option.
712         Fix message name for State messages,
713
714 2005-07-14  Wim Taymans  <wim@fluendo.com>
715
716         * gst/base/gstbasesrc.c: (gst_base_src_loop):
717         Post error messages on errors.
718
719 2005-07-14  Wim Taymans  <wim@fluendo.com>
720
721         * gst/gstcaps.c: (gst_caps_do_simplify):
722         Remove debug info.
723
724         * gst/gsterror.h:
725         Define error for stream stopped.
726
727         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
728         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
729         Do proper return values.
730
731         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
732         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
733         (gst_pad_get_range):
734         Better return values.
735
736         * gst/gstpad.h:
737         Reorganise return values, add macro to check for fatal errors.
738
739         * gst/gstqueue.c: (gst_queue_chain):
740         Return proper GstFlowReturn values,
741
742 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
743
744         * docs/gst/gstreamer-sections.txt:
745         * docs/gst/gstreamer.types:
746         * docs/gst/tmpl/gst.sgml:
747         * docs/gst/tmpl/gstbasesink.sgml:
748         * docs/gst/tmpl/gstbasesrc.sgml:
749         * docs/gst/tmpl/gstbasetransform.sgml:
750         * docs/gst/tmpl/gstbin.sgml:
751         * docs/gst/tmpl/gstbuffer.sgml:
752         * docs/gst/tmpl/gstcaps.sgml:
753         * docs/gst/tmpl/gstclock.sgml:
754         * docs/gst/tmpl/gstcompat.sgml:
755         * docs/gst/tmpl/gstconfig.sgml:
756         * docs/gst/tmpl/gstelement.sgml:
757         * docs/gst/tmpl/gstelementdetails.sgml:
758         * docs/gst/tmpl/gstelementfactory.sgml:
759         * docs/gst/tmpl/gstenumtypes.sgml:
760         * docs/gst/tmpl/gsterror.sgml:
761         * docs/gst/tmpl/gstevent.sgml:
762         * docs/gst/tmpl/gstfakesink.sgml:
763         * docs/gst/tmpl/gstfakesrc.sgml:
764         * docs/gst/tmpl/gstfilesink.sgml:
765         * docs/gst/tmpl/gstfilesrc.sgml:
766         * docs/gst/tmpl/gstfilter.sgml:
767         * docs/gst/tmpl/gstformat.sgml:
768         * docs/gst/tmpl/gstghostpad.sgml:
769         * docs/gst/tmpl/gstimplementsinterface.sgml:
770         * docs/gst/tmpl/gstindex.sgml:
771         * docs/gst/tmpl/gstindexfactory.sgml:
772         * docs/gst/tmpl/gstinfo.sgml:
773         * docs/gst/tmpl/gstiterator.sgml:
774         * docs/gst/tmpl/gstmacros.sgml:
775         * docs/gst/tmpl/gstmemchunk.sgml:
776         * docs/gst/tmpl/gstminiobject.sgml:
777         * docs/gst/tmpl/gstobject.sgml:
778         * docs/gst/tmpl/gstpad.sgml:
779         * docs/gst/tmpl/gstpadtemplate.sgml:
780         * docs/gst/tmpl/gstparse.sgml:
781         * docs/gst/tmpl/gstpipeline.sgml:
782         * docs/gst/tmpl/gstplugin.sgml:
783         * docs/gst/tmpl/gstpluginfeature.sgml:
784         * docs/gst/tmpl/gstquery.sgml:
785         * docs/gst/tmpl/gstqueue.sgml:
786         * docs/gst/tmpl/gstregistry.sgml:
787         * docs/gst/tmpl/gstregistrypool.sgml:
788         * docs/gst/tmpl/gstscheduler.sgml:
789         * docs/gst/tmpl/gstschedulerfactory.sgml:
790         * docs/gst/tmpl/gststructure.sgml:
791         * docs/gst/tmpl/gstsystemclock.sgml:
792         * docs/gst/tmpl/gsttaglist.sgml:
793         * docs/gst/tmpl/gsttagsetter.sgml:
794         * docs/gst/tmpl/gsttrace.sgml:
795         * docs/gst/tmpl/gsttrashstack.sgml:
796         * docs/gst/tmpl/gsttypefind.sgml:
797         * docs/gst/tmpl/gsttypefindfactory.sgml:
798         * docs/gst/tmpl/gsttypes.sgml:
799         * docs/gst/tmpl/gsturihandler.sgml:
800         * docs/gst/tmpl/gsturitype.sgml:
801         * docs/gst/tmpl/gstutils.sgml:
802         * docs/gst/tmpl/gstvalue.sgml:
803         * docs/gst/tmpl/gstversion.sgml:
804         * docs/gst/tmpl/gstxml.sgml:
805         * docs/libs/tmpl/gstcontrol.sgml:
806         * docs/libs/tmpl/gstdataprotocol.sgml:
807         * docs/libs/tmpl/gstdparam.sgml:
808         * docs/libs/tmpl/gstdplinint.sgml:
809         * docs/libs/tmpl/gstdpman.sgml:
810         * docs/libs/tmpl/gstdpsmooth.sgml:
811         * docs/libs/tmpl/gstgetbits.sgml:
812         * docs/libs/tmpl/gstunitconvert.sgml:
813         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
814         (gst_push_src_base_init), (gst_push_src_class_init),
815         (gst_push_src_init), (gst_push_src_create):
816         * gst/base/gstpushsrc.h:
817         * gst/elements/gstelements.c:
818         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
819         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
820         (gst_fake_sink_init), (gst_fake_sink_set_property),
821         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
822         (gst_fake_sink_event), (gst_fake_sink_preroll),
823         (gst_fake_sink_render), (gst_fake_sink_change_state):
824         * gst/elements/gstfakesink.h:
825         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
826         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
827         (gst_fake_src_base_init), (gst_fake_src_class_init),
828         (gst_fake_src_init), (gst_fake_src_event_handler),
829         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
830         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
831         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
832         (gst_fake_src_create_buffer), (gst_fake_src_create),
833         (gst_fake_src_start), (gst_fake_src_stop):
834         * gst/elements/gstfakesrc.h:
835         * gst/elements/gstfilesink.c: (_do_init),
836         (gst_file_sink_base_init), (gst_file_sink_class_init),
837         (gst_file_sink_init), (gst_file_sink_dispose),
838         (gst_file_sink_set_location), (gst_file_sink_set_property),
839         (gst_file_sink_get_property), (gst_file_sink_open_file),
840         (gst_file_sink_close_file), (gst_file_sink_query),
841         (gst_file_sink_event), (gst_file_sink_render),
842         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
843         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
844         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
845         * gst/elements/gstfilesink.h:
846         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
847         (gst_file_src_class_init), (gst_file_src_init),
848         (gst_file_src_finalize), (gst_file_src_set_location),
849         (gst_file_src_set_property), (gst_file_src_get_property),
850         (gst_file_src_map_region), (gst_file_src_map_small_region),
851         (gst_file_src_create_mmap), (gst_file_src_create_read),
852         (gst_file_src_create), (gst_file_src_is_seekable),
853         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
854         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
855         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
856         (gst_file_src_uri_handler_init):
857         * gst/elements/gstfilesrc.h:
858           more autistic cleanliness in functions/names/defines
859
860 2005-07-13  Andy Wingo  <wingo@pobox.com>
861
862         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
863         source couldn't negotiate.
864
865         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
866         connections again.
867
868         * gst/gstutils.h:
869         * gst/gstutils.c (gst_element_link_pads_filtered): New old
870         function. I am channeling Hades. Put your boots on suckers!!!
871
872 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
873
874         * testsuite/caps/Makefile.am:
875         * testsuite/caps/value_compare.c:
876         * testsuite/caps/value_intersect.c:
877         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
878           move two testsuite apps over to the check dir
879
880 2005-07-12  Wim Taymans  <wim@fluendo.com>
881
882         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
883         Added more debug info in the negotiate process.
884
885         * gst/gstmessage.h:
886         Prepare for segment playback.
887
888         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
889         Better debugging.
890
891         * gst/gstutils.c:
892         Some more docs.
893
894         * tools/gst-launch.c: (main):
895         NULL pipeline on errors.
896
897 2005-07-12  Andy Wingo  <wingo@pobox.com>
898
899         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
900         not it comes from a malloc region. Make sure our copy gets freed.
901
902 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
903
904         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
905         * check/gst/gstmessage.c: (GST_START_TEST):
906         * check/gst/gststructure.c: (GST_START_TEST),
907         (gst_structure_suite), (main):
908           more testing
909         * gst/gstelement.c: (gst_element_message_full):
910           clean up GError and debug string now that they get copied
911         * gst/gstmessage.c: (gst_message_new_error),
912         (gst_message_new_warning), (gst_message_parse_error),
913         (gst_message_parse_warning):
914           use GST_TYPE_G_ERROR for structure_new, and take copies of
915           arguments, so that we don't mess up refcounting
916
917 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
918
919         * check/Makefile.am:
920           add per-test valgrind targets
921         * check/gst-libs/gdp.c: (GST_START_TEST),
922         (gst_data_protocol_suite), (main):
923           clean up
924
925 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
926
927         * check/Makefile.am:
928           instate more valgrindable tests
929         * check/elements/gstfakesrc.c: (chain_func), (event_func),
930         (GST_START_TEST), (fakesrc_suite):
931         * check/gst/gstpad.c: (GST_START_TEST):
932         * check/gst/gststructure.c: (GST_START_TEST):
933           fix test leaks
934         * docs/gst/tmpl/gstminiobject.sgml:
935         * gst/gstpad.c: (gst_pad_finalize):
936           fix the static mutex leak
937
938 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
939
940         * check/Makefile.am:
941           add two more tests for valgrinding
942         * check/gst/gstvalue.c: (GST_START_TEST):
943           test refcount of deserialized buffer, found a leak
944         * docs/gst/gstreamer-docs.sgml:
945         * docs/gst/gstreamer-sections.txt:
946         * docs/gst/gstreamer.types:
947         * docs/gst/tmpl/gstminiobject.sgml:
948           add miniobject to docs
949         * gst/gstminiobject.c:
950           add some docs
951         * gst/gstvalue.c: (gst_value_deserialize_buffer),
952         (gst_string_unwrap):
953           fix a hard-to-find invalid write for one of the tests
954           fix a leak for deserialized buffers
955
956 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
957
958         * docs/pwg/advanced-events.xml:
959         * docs/pwg/advanced-request.xml:
960         * docs/pwg/advanced-scheduling.xml:
961         * docs/pwg/appendix-porting.xml:
962         * docs/pwg/building-boiler.xml:
963         * docs/pwg/intro-preface.xml:
964         * docs/pwg/other-ntoone.xml:
965           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
966           of example code and explanation for pad activation, loop() and
967           getrange() functions and a bit more. Remove old comments pointing
968           to loop-functions.
969         * examples/pwg/Makefile.am:
970           Add loop/getrange examples.
971
972 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
973
974         * configure.ac:
975           check for valgrind binary + some fixes
976         * check/gst.supp:
977           valgrind suppressions for the tests
978         * check/Makefile.am:
979           add a valgrind: target that valgrinds the unit tests
980         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
981         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
982         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
983         * check/gst/gstghostpad.c:
984           added some cleanup
985         * check/gst/gstdata.c:
986           removed
987         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
988         (thread_unref), (gst_mini_object_suite), (main):
989           added
990         * gst/gst.c: (gst_deinit):
991         * gst/gst.h:
992           add a method to clean up.
993         * gst/gstsystemclock.c: (gst_system_clock_dispose),
994         (gst_system_clock_obtain):
995           allow for disposing the system clock.
996         * tools/gst-launch.c: (main):
997           deinit
998
999 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1000
1001         * docs/gst/tmpl/gstbasesrc.sgml:
1002         * docs/gst/tmpl/gstfakesrc.sgml:
1003         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1004         (gst_base_src_init), (gst_base_src_set_property),
1005         (gst_base_src_get_property), (gst_base_src_get_range),
1006         (gst_base_src_start):
1007         * gst/base/gstbasesrc.h:
1008           add num-buffers property
1009         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1010         (gst_fakesrc_init), (gst_fakesrc_set_property),
1011         (gst_fakesrc_get_property), (gst_fakesrc_create),
1012         (gst_fakesrc_start):
1013           remove num-buffers property
1014
1015 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1016
1017         * docs/gst/gstreamer-sections.txt:
1018         * docs/gst/tmpl/gstbasesink.sgml:
1019         * docs/gst/tmpl/gstbasesrc.sgml:
1020         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1021         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1022         (gst_base_sink_finalize), (gst_base_sink_set_clock),
1023         (gst_base_sink_set_property), (gst_base_sink_get_property),
1024         (gst_base_sink_handle_object), (gst_base_sink_event),
1025         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
1026         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
1027         (gst_base_sink_loop), (gst_base_sink_deactivate),
1028         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
1029         (gst_base_sink_change_state):
1030         * gst/base/gstbasesink.h:
1031         * gst/base/gstbasesrc.h:
1032         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
1033         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1034         (gst_filesink_init):
1035           more macro splitting
1036
1037 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1038
1039         * gst/gstelement.c: (gst_element_get_bus):
1040           add debug
1041         * tools/gst-launch.c: (check_intr), (event_loop):
1042           fix bus leaks
1043
1044 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1045
1046         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1047           fix a caps leak
1048
1049 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1050
1051         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1052         (gst_base_src_finalize):
1053           add finalize method and clean up properly
1054         * gst/gstpipeline.c: (gst_pipeline_dispose):
1055           add debug
1056
1057 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1058
1059         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1060         (gst_bin_suite):
1061           add more things to check
1062         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1063         * gst/gstelement.c:
1064           more debug
1065
1066 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1067
1068         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1069         (GST_START_TEST), (fakesrc_suite):
1070         * check/gst-libs/gdp.c: (GST_START_TEST):
1071         * check/gst/gst.c: (GST_START_TEST):
1072         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1073         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1074         * check/gst/gstbus.c: (GST_START_TEST):
1075         * check/gst/gstcaps.c: (GST_START_TEST):
1076         * check/gst/gstdata.c: (GST_START_TEST):
1077         * check/gst/gstelement.c: (GST_START_TEST):
1078         * check/gst/gstghostpad.c: (GST_START_TEST):
1079         * check/gst/gstiterator.c: (GST_START_TEST):
1080         * check/gst/gstmessage.c: (GST_START_TEST):
1081         * check/gst/gstobject.c: (GST_START_TEST):
1082         * check/gst/gstpad.c: (GST_START_TEST):
1083         * check/gst/gststructure.c: (GST_START_TEST):
1084         * check/gst/gstsystemclock.c: (GST_START_TEST),
1085         (gst_systemclock_suite):
1086         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1087         * check/gst/gstvalue.c: (GST_START_TEST):
1088         * check/pipelines/cleanup.c: (GST_START_TEST):
1089         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1090         * check/states/sinks.c: (GST_START_TEST):
1091         * check/gstcheck.c: (gst_check_init):
1092         * check/gstcheck.h:
1093           add debugging category
1094           use GST_START_TEST now, so we add a debug line
1095
1096 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1097
1098         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1099           add test for state change message on a bin
1100         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1101           add another test
1102         * gst/gstbin.c: (gst_bin_init):
1103         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1104         * gst/gstelement.c: (gst_element_post_message),
1105         (gst_element_set_state):
1106         * gst/gstelementfactory.c: (gst_element_factory_create):
1107         * gst/gstmessage.c: (gst_message_new):
1108         * gst/gstscheduler.c:
1109           various debugging additions and cleanups
1110
1111 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1112
1113         * check/Makefile.am:
1114         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1115         (main):
1116           adding tests for elements
1117         * gst/gstelement.c: (gst_element_dispose):
1118
1119 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1120
1121         * gst/registries/gstlibxmlregistry.c: (load_feature):
1122           plug more leaks.  A simple gst_init() now is leakfree, yay.
1123
1124 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1125
1126         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1127         (gst_xml_registry_load):
1128           plug another memleak
1129
1130 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1131
1132         * configure.ac:
1133           use GST_SET_ERROR_CFLAGS
1134         * docs/faq/cvs.xml:
1135           change to ERROR_CFLAGS
1136
1137 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1138
1139         * configure.ac:
1140           make GST_ERROR_CFLAGS overridable and re-enable Werror
1141         * docs/faq/cvs.xml:
1142           add a note about error CFLAGS
1143         * docs/gst/tmpl/gstfakesrc.sgml:
1144         * gst/elements/gstfakesrc.c:
1145           comment out some unused code
1146         * gst/gst.c: (split_and_iterate):
1147         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1148         (load_feature):
1149           plug some memleaks
1150
1151 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1152
1153         * common/Makefile.am:
1154         * common/gtk-doc.mak:
1155         * docs/gst/Makefile.am:
1156           factor out gtk-doc.mak
1157
1158 2005-07-07  Wim Taymans  <wim@fluendo.com>
1159
1160         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1161         (gst_thread_scheduler_dispose):
1162         Unlock the STREAM_LOCK completely.
1163
1164 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1165
1166         * check/Makefile.am:
1167         * check/elements/.cvsignore:
1168         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1169         (START_TEST), (fakesrc_suite), (main):
1170         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1171         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1172         (gst_fakesrc_create), (gst_fakesrc_start):
1173         * gst/elements/gstfakesrc.h:
1174           adding a first element test
1175
1176 2005-07-07  Andy Wingo  <wingo@pobox.com>
1177
1178         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1179         debug message.
1180
1181 2005-07-07  Wim Taymans  <wim@fluendo.com>
1182
1183         * gst/gstquery.c:
1184         * gst/gstquery.h:
1185         Remove old types
1186
1187 2005-07-07  Wim Taymans  <wim@fluendo.com>
1188
1189         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1190         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1191         Allow subclasses to implement their own negotiation.
1192
1193 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1194
1195         * docs/design/part-gstbin.txt:
1196         * docs/design/part-gstpipeline.txt:
1197           Update design notes to reflect the movement of
1198           responsibility for bus handling from GstPipeline to
1199           GstBin
1200
1201 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1202
1203         * configure.ac:
1204           Remove unnecessary queue2/3/4 examples.
1205
1206 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1207
1208         * examples/Makefile.am:
1209         * examples/helloworld/helloworld.c: (event_loop), (main):
1210         * examples/queue/queue.c: (event_loop), (main):
1211         * examples/queue2/queue2.c: (main):
1212           Update a couple of the examples to work again.
1213
1214         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1215         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1216          Spelling corrections and extra debug.
1217         
1218         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1219         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1220         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1221         * gst/gstbin.h:
1222         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1223         (gst_pipeline_change_state):
1224         * gst/gstpipeline.h:
1225           Move the bus handler for children to the GstBin, and create a
1226           separate bus for receiving messages from children to the one the
1227           bus sends 'upwards' on.
1228
1229 2005-07-06  Wim Taymans  <wim@fluendo.com>
1230
1231         * gst/base/README:
1232         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1233         (gst_base_sink_handle_object), (gst_base_sink_loop),
1234         (gst_base_sink_change_state):
1235         * gst/base/gstbasesink.h:
1236         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1237         (gst_base_src_init), (gst_base_src_setcaps),
1238         (gst_base_src_getcaps), (gst_base_src_loop),
1239         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1240         (gst_base_src_start), (gst_base_src_change_state):
1241         * gst/base/gstbasesrc.h:
1242         Make basesrc negotiate.
1243         Handle the case where preroll fails in basesink.
1244         Update README.
1245
1246 2005-07-06  Wim Taymans  <wim@fluendo.com>
1247
1248         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1249         Implement the fixate function.
1250         Clean up acceptcaps.
1251
1252 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1253
1254         * docs/pwg/building-filterfactory.xml:
1255         * docs/pwg/pwg.xml:
1256           Remove never-written filter-factory chapter; I'll add the various
1257           base classes to part 4 ("other element types") later on.
1258
1259 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1260
1261         * docs/pwg/advanced-negotiation.xml:
1262         * docs/pwg/building-boiler.xml:
1263         * docs/pwg/building-pads.xml:
1264         * docs/pwg/pwg.xml:
1265         * examples/pwg/Makefile.am:
1266           Add a chapter on caps negotiation, simplify the original code
1267           samples a bit w.r.t. caps negotiation, add link to the advanced
1268           section. Add a bunch of examples showing different use cases of
1269           different types of caps negotiation. Upstream renegotiation isn't
1270           fully documented yet since nobody knows how that works.
1271
1272 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1273
1274         * check/gst/gstpad.c:
1275         * check/gstcheck.c:
1276         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1277           if pad has no parent, return NULL as list of internal links
1278
1279 2005-07-05  Andy Wingo  <wingo@pobox.com>
1280
1281         * gst/elements/gstfilesrc.c:
1282         * gst/elements/gstfakesrc.c: 
1283         * gst/base/gstpushsrc.c:
1284         * gst/base/gstbasesrc.h: 
1285         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1286         
1287 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1288
1289         * Makefile.am:
1290           better report generation target (lcov needs a patch)
1291
1292 2005-07-05  Andy Wingo  <wingo@pobox.com>
1293
1294         * gst/elements, testsuite: Null if we got it...
1295
1296 2005-07-05  Wim Taymans  <wim@fluendo.com>
1297
1298         * configure.ac:
1299         * libs/gst/dataprotocol/Makefile.am:
1300         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1301         * libs/gst/dataprotocol/dataprotocol.h:
1302         * pkgconfig/Makefile.am:
1303         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1304         * pkgconfig/gstreamer-dataprotocol.pc.in:
1305         Ported dataprotol to 0.9. 
1306         Added pkgconfig files.
1307
1308 2005-07-05  Andy Wingo  <wingo@pobox.com>
1309
1310         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1311         Default to returning TRUE for the case when tranform_caps returns
1312         a fixed caps, like for identity or volume.
1313
1314         * check/gst/gstbus.c (pound_bus_with_messages): 
1315         * check/gst/gstmessage.c (START_TEST): 
1316         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1317         message API change.
1318
1319         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1320         logic weaks here: always run transform_caps, trying passthrough
1321         operation only if the original caps intersects with the transform.
1322
1323         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1324         source and sink caps.
1325
1326         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1327         Intersect the peer caps with the pad template before going into
1328         transform_caps.
1329         (gst_base_transform_transform_caps): More debugging.
1330
1331         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1332         src argument.
1333
1334 2005-07-04  Edward Hervey  <edward@fluendo.com>
1335
1336         * gst/gstutils.c:
1337         * gst/gstutils.h:
1338         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1339         in bindings.
1340
1341 2005-07-04  Andy Wingo  <wingo@pobox.com>
1342
1343         * check/gst/gstpad.c: Only set explicit caps on pads.
1344
1345 2005-07-01  Andy Wingo  <wingo@pobox.com>
1346
1347         * tests/network-clock.scm: Commentary update.
1348
1349         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1350         Didn't really make sense, not implementable with basetransform,
1351         etc.
1352         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1353         attempt at implementing the sync property, needs an unlock method.
1354
1355         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1356         New func, by default returns the same caps (the identity
1357         transformation).
1358         (gst_base_transform_getcaps): Uses transform_caps to return
1359         something sensible.
1360         (gst_base_transform_setcaps): Complicated logic to get caps on
1361         both pads, even if they are different, and to call set_caps once
1362         for every time both pads get their caps set.
1363         (gst_base_transform_handle_buffer): Give the ref to the transform
1364         function. Allows in-place modification of the buffer.
1365
1366         * gst/base/gstbasetransform.h (transform_caps): New class method.
1367         Given caps on one side, what can I do on the other.
1368         (set_caps): Take two caps, one for each side of the element.
1369
1370         * gst/gstpad.h:
1371         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1372         caps in place. This is safe because we can check the mutability of
1373         the caps, and a good idea because fixate functions are just called
1374         as a matter of last resort. (Not actually implemented.)
1375         (gst_pad_set_caps): If the caps we're setting is actually the same
1376         as the existing pad caps, just update the pointer without calling
1377         setcaps. Assert that caps is either NULL or fixed, as per the
1378         docs.
1379
1380         * gst/gstghostpad.c: Update for fixate changes.
1381
1382 2005-07-02  Andy Wingo  <wingo@pobox.com>
1383
1384         * gst/gstcaps.c:
1385         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1386         two refcounts makes it immutable, which is enough. Doc more.
1387
1388 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1389
1390         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1391           Put the mini_object into GValue as a mini_object,
1392           not a gpointer, since that's how we declared
1393           the signal.
1394
1395 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1396
1397         * examples/pwg/Makefile.am:
1398           Fix buildbot again.
1399
1400 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1401
1402         * docs/pwg/building-testapp.xml:
1403           Add extra check.
1404         * examples/pwg/Makefile.am:
1405           Fix buildbot.
1406
1407 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1408
1409         * configure.ac:
1410         * examples/Makefile.am:
1411         * examples/pwg/Makefile.am:
1412         * examples/pwg/extract.pl:
1413           Enable building the PWG examples.
1414         * docs/pwg/advanced-interfaces.xml:
1415           Add URI interface stub.
1416         * docs/pwg/advanced-types.xml:
1417         * docs/pwg/other-autoplugger.xml:
1418         * docs/pwg/appendix-porting.xml:
1419         * docs/pwg/pwg.xml:
1420           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1421         * docs/pwg/building-boiler.xml:
1422         * docs/pwg/building-chainfn.xml:
1423         * docs/pwg/building-pads.xml:
1424         * docs/pwg/building-props.xml:
1425         * docs/pwg/building-state.xml:
1426         * docs/pwg/building-testapp.xml:
1427           Update the building-*.xml parts for 0.9 changes. All examples
1428           code blocks compile in examples/pwg/*.
1429
1430 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1431
1432         * docs/manual/advanced-autoplugging.xml:
1433         * docs/manual/appendix-checklist.xml:
1434         * docs/manual/appendix-integration.xml:
1435         * docs/manual/highlevel-components.xml:
1436           Fix playbin/decodebin examples, update docs a bit, mention bus
1437           instead of signals in various places, mention kmplayer and
1438           kaffeine since they have a working GStreamer backend in the KDE
1439           section.
1440
1441 2005-06-30  Wim Taymans  <wim@fluendo.com>
1442
1443         * CHANGES-0.9:
1444         * docs/design/draft-ghostpads.txt:
1445         * docs/design/draft-push-pull.txt:
1446         * docs/design/draft-query.txt:
1447         * docs/design/part-TODO.txt:
1448         * docs/design/part-query.txt:
1449         Added CHANGES-0.9 doc, updated status of other docs.
1450         
1451         * gst/gstquery.h:
1452         Remove "hmm" macro
1453
1454 2005-06-30  Wim Taymans  <wim@fluendo.com>
1455
1456         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1457         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1458         (gst_base_sink_change_state):
1459         * gst/base/gstbasesink.h:
1460         Some tweaks, only EOS and a buffer complete a preroll.
1461
1462 2005-06-30  Andy Wingo  <wingo@pobox.com>
1463
1464         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1465         activate_push down to the internal pad as well.
1466
1467 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1468
1469         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1470
1471         * gst/gsttaginterface.c:
1472           Some documentation fixes (#307394 and #307397).
1473
1474 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1475
1476         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1477
1478         * gst/gstvalue.c: (gst_value_intersect_list):
1479           Fix memleak (#309125).
1480
1481 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1482
1483         * docs/manual/advanced-dataaccess.xml:
1484           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1485         * docs/manual/basics-pads.xml:
1486           Add reference for filtered caps to above chapter.
1487
1488 2005-06-30  Wim Taymans  <wim@fluendo.com>
1489
1490         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1491         (gst_bin_change_state):
1492         Probes are gone.
1493         Lame attempt at making the state change function a bit
1494         more readable.
1495
1496 2005-06-30  Wim Taymans  <wim@fluendo.com>
1497
1498         * docs/design/part-clocks.txt:
1499         * docs/design/part-element-sink.txt:
1500         * docs/design/part-events.txt:
1501         * docs/design/part-preroll.txt:
1502         * docs/design/part-states.txt:
1503         Some more tweeks and additions to the docs.
1504
1505 2005-06-30  Wim Taymans  <wim@fluendo.com>
1506
1507         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1508         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1509         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1510         (gst_pad_check_pull_range), (gst_pad_get_range),
1511         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1512         * gst/gstpad.h:
1513         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1514         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1515         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1516         (gst_pad_remove_buffer_probe):
1517         Removed atomic operations, use existing LOCK.
1518         Move exception handling out of main code path.
1519
1520 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1521
1522         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1523         (silly_return_true_function), (gst_pad_class_init),
1524         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1525         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1526         (gst_pad_send_event):
1527           Fix accumulator, add default value by using _emitv() instead
1528           of _emit() for signal emission.
1529
1530 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1531
1532         * docs/manual/advanced-dataaccess.xml:
1533         * examples/manual/Makefile.am:
1534           Add probe example.
1535         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1536           Make work (??).
1537
1538 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1539
1540         * gst/elements/gstfilesink.c: (gst_filesink_render):
1541           Simplify code so that we don't have to handle short
1542           writes and return GST_FLOW_ERROR if an error occured.
1543
1544 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1545
1546         * docs/gst/gstreamer-docs.sgml:
1547           Remove probes more.
1548
1549 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1550
1551         * docs/gst/gstreamer-sections.txt:
1552         * docs/gst/tmpl/gstpad.sgml:
1553         * docs/gst/tmpl/gstprobe.sgml:
1554         * gst/Makefile.am:
1555         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1556         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1557         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1558         (gst_pad_push_event), (gst_pad_send_event):
1559         * gst/gstpad.h:
1560         * gst/gstutils.c: (gst_pad_add_data_probe),
1561         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1562         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1563         (gst_pad_remove_buffer_probe):
1564         * gst/gstutils.h:
1565           Remove old probes, add new g-signal-based probes and some utility
1566           functions.
1567
1568 2005-06-29  Edward Hervey  <edward@fluendo.com>
1569
1570         * gst/gstelementfactory.c:
1571         * gst/gstutils.h:
1572         * gst/gstutils.c:
1573         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1574         the definition to the header file.
1575
1576 2005-06-29  Andy Wingo  <wingo@pobox.com>
1577
1578         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1579         plugins from the source directory.
1580
1581 2005-06-29  Wim Taymans  <wim@fluendo.com>
1582
1583         * docs/gst/tmpl/gstbuffer.sgml:
1584         * docs/gst/tmpl/gstclock.sgml:
1585         Some fixings for blantently wrong text.
1586
1587 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1588
1589         * check/Makefile.am:
1590         * gst/gst.c: (add_path_func), (init_pre):
1591         * gst/gstregistry.c: (gst_registry_add_path):
1592           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1593           only scan the GST_PLUGIN_PATH locations, and not add
1594           system locations
1595
1596 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1597
1598         * docs/gst/gstreamer-sections.txt:
1599         * docs/gst/tmpl/gstbasesrc.sgml:
1600         * gst/gstelement.c:
1601         * gst/gstelement.h:
1602         * gst/gstevent.c:
1603         * gst/gstutils.c:
1604           doc fixes
1605
1606 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1607
1608         * docs/manual/advanced-autoplugging.xml:
1609           Fix autoplugging example.
1610
1611 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1612
1613         * docs/manual/advanced-autoplugging.xml:
1614         * docs/manual/mime-world.fig:
1615           Try to get autoplugging working, fix type detection. Fix text
1616           in hello-world image.
1617
1618 2005-06-29  Wim Taymans  <wim@fluendo.com>
1619
1620         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1621         (gst_base_sink_change_state):
1622         Small debug line.
1623
1624         * gst/gstclock.h:
1625         map SIGNAL and BROADCAST to the right function.
1626
1627         * gst/gstobject.h:
1628         Remove redundant braces.
1629
1630         * gst/gstpad.c: (gst_pad_set_caps):
1631         Don't call setcaps function when reseting caps to NULL.
1632
1633         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1634         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1635         (gst_system_clock_id_unschedule):
1636         Use BROADCAST as this is what we do.
1637
1638 2005-06-29  Wim Taymans  <wim@fluendo.com>
1639
1640         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1641         We are actually prerolling before commiting the state
1642         change. 
1643
1644 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1645
1646         * docs/manual/advanced-clocks.xml:
1647         * docs/manual/advanced-interfaces.xml:
1648         * docs/manual/advanced-metadata.xml:
1649         * docs/manual/advanced-position.xml:
1650         * docs/manual/advanced-schedulers.xml:
1651         * docs/manual/advanced-threads.xml:
1652         * docs/manual/appendix-porting.xml:
1653         * docs/manual/basics-bins.xml:
1654         * docs/manual/basics-bus.xml:
1655         * docs/manual/basics-elements.xml:
1656         * docs/manual/basics-helloworld.xml:
1657         * docs/manual/basics-pads.xml:
1658         * docs/manual/highlevel-components.xml:
1659         * docs/manual/manual.xml:
1660         * docs/manual/thread.fig:
1661           Update (until threads/scheduling) Application Development Manual;
1662           remove GstThread, add GstBus, add simple porting checklist, add
1663           documentation for tag writing, clocks, make all examples until this
1664           part compile and run.
1665         * examples/manual/Makefile.am:
1666           Update from changes to Application Development Manual; add bus
1667           example, remove thread example.
1668
1669 2005-06-28  Wim Taymans  <wim@fluendo.com>
1670
1671         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
1672         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
1673         (gst_bus_source_dispatch):
1674         Add debugging messages.
1675         Make internal methods static.
1676         Handle the case where the bus is flushed in the handler.
1677         
1678         * gst/gstelement.c: (gst_element_get_bus):
1679         Fix refcount in _get_bus();
1680
1681         * gst/gstpipeline.c: (gst_pipeline_change_state),
1682         (gst_pipeline_get_clock_func):
1683         Clock refcounting fixes.
1684         Handle the case where preroll timed out more gracefully.
1685         
1686         * gst/gstsystemclock.c: (gst_system_clock_dispose):
1687         Clean up the internal thread in dispose. This is needed
1688         for subclasses that actually get disposed.
1689         
1690         * gst/schedulers/threadscheduler.c:
1691         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1692         (gst_thread_scheduler_dispose):
1693         Free thread pool in dispose.
1694
1695 2005-06-28  Andy Wingo  <wingo@pobox.com>
1696
1697         * tests/network-clock-utils.scm (debug, print-event): New utils.
1698
1699         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
1700         (*packet-loss*): Unified loss probability.
1701         (network-time): Report out-of-band events.
1702
1703         * tests/plot-data: Add support for out-of-band events. Hack it
1704         into this script instead of passing it down the pipe; should fix
1705         this later.
1706
1707 2005-06-28  Wim Taymans  <wim@fluendo.com>
1708
1709         * docs/gst/gstreamer.types:
1710         * docs/gst/tmpl/gstbasesrc.sgml:
1711         * docs/gst/tmpl/gstpad.sgml:
1712         Docs fixes.
1713
1714 2005-06-28  Wim Taymans  <wim@fluendo.com>
1715
1716         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1717         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
1718         (gst_proxy_pad_do_fixatecaps):
1719         Correctly proxy the check_pull_range function.
1720
1721 2005-06-28  Andy Wingo  <wingo@pobox.com>
1722
1723         * tests/network-clock.scm: Removed need for slib.
1724         
1725 2005-06-28  Wim Taymans  <wim@fluendo.com>
1726
1727         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
1728         (gst_basesink_preroll_queue_flush):
1729         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
1730         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
1731         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1732         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1733         (gst_proxy_pad_set_property):
1734         * gst/gstpad.c:
1735         * gst/gstpad.h:
1736         * gst/gstqueue.c: (gst_queue_init):
1737         The deprecated pad loop function is removed now.
1738
1739 2005-06-28  Andy Wingo  <wingo@pobox.com>
1740
1741         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
1742         New parameters, simulate network packet loss.
1743
1744         * tests/network-clock-utils.scm: Initialize the RNG.
1745
1746 2005-06-28  Wim Taymans  <wim@fluendo.com>
1747
1748         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
1749         (gst_basesink_event), (gst_basesink_deactivate):
1750         Flushing the preroll queue always needs to unlock the waiters.
1751
1752 2005-06-28  Edward Hervey  <edward@fluendo.com>
1753
1754         * gst/gstpipeline.c: (gst_pipeline_send_event): 
1755         Wheen a seek was successful on a pipeline, set the stream_time to the
1756         seek offset in order to have a synchronized stream_time.
1757
1758 2005-06-28  Wim Taymans  <wim@fluendo.com>
1759
1760         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1761         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
1762         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
1763         (gst_proxy_pad_do_fixatecaps):
1764         Call wrapper function instead of just calling the function
1765         pointers. This takes care of any locking and whatmore.
1766
1767 2005-06-28  Wim Taymans  <wim@fluendo.com>
1768
1769         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
1770         (gst_pad_pull_range):
1771         * gst/gstpad.h:
1772         CONNECTED -> LINKED.
1773
1774 2005-06-28  Andy Wingo  <wingo@pobox.com>
1775
1776         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
1777         source-munging commit!!!
1778
1779         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
1780         (gst_object_sink): Take gpointer arguments, not GstObject --
1781         avoids casts. Like GLib.
1782
1783         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
1784         activate.
1785
1786 2005-06-27  Andy Wingo  <wingo@pobox.com>
1787
1788         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
1789         remaining buffer.
1790
1791         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
1792         returns a sorted copy of the trace list.
1793         (gst_alloc_trace_print_live): New API, only prints traces with
1794         live objects. Sort the list.
1795         (gst_alloc_trace_print_all): Sort the list.
1796         (gst_alloc_trace_print): Align columns.
1797
1798         * gst/elements/gstttypefindelement.c:
1799         * gst/elements/gsttee.c:
1800         * gst/base/gstbasesrc.c:
1801         * gst/base/gstbasesink.c:
1802         * gst/base/gstbasetransform.c:
1803         * gst/gstqueue.c: Adapt for pad activation changes.
1804
1805         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
1806         sched.
1807         (gst_pipeline_dispose): Drop ref on sched.
1808
1809         * gst/gstpad.c (gst_pad_init): Set the default activate func.
1810         (gst_pad_activate_default): Push mode by default.
1811         (pre_activate_switch, post_activate_switch): New stubs, things to
1812         do before and after switching activation modes on pads.
1813         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
1814         the pad's activate function to choose which mode to activate.
1815         Shortcut on deactivation and call the right function directly.
1816         (gst_pad_activate_pull): New API, (de)activates a pad in pull
1817         mode.
1818         (gst_pad_activate_push): New API, same for push mode.
1819         (gst_pad_set_activate_function) 
1820         (gst_pad_set_activatepull_function) 
1821         (gst_pad_set_activatepush_function): Setters for new API.
1822
1823         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
1824         Trace all miniobjects.
1825         (gst_mini_object_make_writable): Unref the arg if we copy, like
1826         gst_caps_make_writable.
1827
1828         * gst/gstmessage.c (_gst_message_initialize): No trace init.
1829
1830         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
1831         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
1832         Adapt for new pad API.
1833
1834         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
1835
1836         * gst/gstelement.h:
1837         * gst/gstelement.c (gst_element_iterate_src_pads) 
1838         (gst_element_iterate_sink_pads): New API functions.
1839         
1840         * gst/gstelement.c (iterator_fold_with_resync): New utility,
1841         should fold into gstiterator.c in some form.
1842         (gst_element_pads_activate): Simplified via use of fold and
1843         delegation of decisions to gstpad->activate.
1844
1845         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
1846         help in debugging.
1847
1848         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
1849         class once in init, like gstmessage. Didn't run into this issue
1850         but it seems correct. Don't initialize a trace, gstminiobject does
1851         that.
1852
1853         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
1854         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
1855         to the bus.
1856         (assert_live_count): New util function, uses alloc traces to check
1857         cleanup.
1858
1859         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
1860         To be modified when unlink drops the internal pad.
1861
1862 2005-06-27  Wim Taymans  <wim@fluendo.com>
1863
1864         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
1865         (gst_bin_change_state):
1866         Cleanup the get_state() function a little, make sure it
1867         iterates the same set of elements.
1868         Added stub iterate_state_order().
1869
1870 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1871
1872         * docs/gst/gstreamer-docs.sgml:
1873         * docs/gst/gstreamer-sections.txt:
1874         * docs/gst/gstreamer.types:
1875         * docs/gst/tmpl/gstbasesink.sgml:
1876         * docs/gst/tmpl/gstbasesrc.sgml:
1877         * docs/gst/tmpl/gstbasetransform.sgml:
1878         * docs/gst/tmpl/gstelement.sgml:
1879         * docs/gst/tmpl/gstiterator.sgml:
1880         * gst/base/gstbasesrc.c:
1881         * gst/base/gstbasesrc.h:
1882         * gst/base/gstbasetransform.h:
1883         * gst/gstelement.c:
1884         * gst/gstiterator.h:
1885           adding basetransform and iterator docs
1886
1887 2005-06-27  Andy Wingo  <wingo@pobox.com>
1888
1889         * docs/design/part-activation.txt: Notes on how activation should
1890         work -- not quite implemented yet.
1891
1892 2005-06-25  Wim Taymans  <wim@fluendo.com>
1893
1894         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
1895         At least get the chain function correct, needs more
1896         fixing.
1897
1898 2005-06-25  Wim Taymans  <wim@fluendo.com>
1899
1900         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1901         (gst_basesink_handle_object), (gst_basesink_event),
1902         (gst_basesink_do_sync), (gst_basesink_handle_event),
1903         (gst_basesink_change_state):
1904         * gst/gsttask.h:
1905         Right, two problems here: ghostpads don't take locks and
1906         glib _rec_mutex_lock_full() with depth==0 still locks.
1907         Catch illegal locking and g_warn them.
1908
1909 2005-06-25  Wim Taymans  <wim@fluendo.com>
1910
1911         * check/states/sinks.c: (START_TEST), (gst_object_suite):
1912         Have to check for completion now...
1913
1914 2005-06-25  Wim Taymans  <wim@fluendo.com>
1915
1916         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1917         (gst_basesink_handle_object), (gst_basesink_event),
1918         (gst_basesink_do_sync), (gst_basesink_handle_event),
1919         (gst_basesink_change_state):
1920         * gst/gstpad.h:
1921         Unlock STREAM_LOCK whatever the recursion was.
1922
1923 2005-06-25  Wim Taymans  <wim@fluendo.com>
1924
1925         * gst/base/gstbasesink.c: (gst_basesink_set_property),
1926         (gst_basesink_preroll_queue_empty),
1927         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
1928         (gst_basesink_event), (gst_basesink_do_sync),
1929         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
1930         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
1931         (gst_basesink_change_state):
1932         Reworked the base sink, handle event and buffer serialisation
1933         correctly and removed possible deadlock.
1934         Handle EOS correctly.
1935
1936 2005-06-25  Wim Taymans  <wim@fluendo.com>
1937
1938         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
1939         (gst_pipeline_change_state):
1940         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1941         Allow elements to post EOS in the state change function.
1942         Fix up -launch, make it exit the poll loop when the
1943         pipeline actually changed state.
1944         Fix up warning parsing in -launch.
1945
1946 2005-06-25  Wim Taymans  <wim@fluendo.com>
1947
1948         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
1949         (gst_tee_sink_activate):
1950         Core takes STREAM_LOCK for us now.
1951
1952 2005-06-25  Wim Taymans  <wim@fluendo.com>
1953
1954         * gst/gstelement.c: (gst_element_get_state_func),
1955         (gst_element_set_state):
1956         * gst/gstelement.h:
1957         * gst/gstmessage.c: (gst_message_parse_error),
1958         (gst_message_parse_warning):
1959         Keep track of current target state while performing a state
1960         change so that subclasses can do something interesting.
1961         Fix parsing of warning/error messages when GError is NULL.
1962
1963 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1964
1965         * docs/gst/Makefile.am:
1966         * docs/gst/gstreamer-docs.sgml:
1967         * docs/gst/gstreamer-sections.txt:
1968         * docs/gst/gstreamer.types:
1969         * docs/gst/tmpl/gstbasesink.sgml:
1970         * docs/gst/tmpl/gstbasesrc.sgml:
1971         * docs/gst/tmpl/gstbin.sgml:
1972         * docs/gst/tmpl/gstcompat.sgml:
1973         * docs/gst/tmpl/gstfakesink.sgml:
1974         * docs/gst/tmpl/gstfakesrc.sgml:
1975         * docs/gst/tmpl/gstfilesink.sgml:
1976         * docs/gst/tmpl/gstfilesrc.sgml:
1977         * docs/gst/tmpl/gstindex.sgml:
1978         * docs/manual/appendix-quotes.xml:
1979         * gst/base/gstbasesrc.h:
1980         * gst/elements/gstfakesrc.h:
1981         * gst/gstmessage.h:
1982           start pulling in base classes and elements in our docs
1983
1984 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
1985
1986         * docs/gst/Makefile.am:
1987         * docs/libs/Makefile.am:
1988           fixed make distcheck with gtk-doc 1.3
1989
1990 2005-06-23  Wim Taymans  <wim@fluendo.com>
1991
1992         * gst/gstelement.c: (gst_element_get_state_func),
1993         (gst_element_set_state), (gst_element_change_state):
1994         When the state did not change, also report NO_PREROLL
1995         when it matters.
1996
1997 2005-06-23  Wim Taymans  <wim@fluendo.com>
1998
1999         * gst/gstpad.c: (gst_pad_event_default):
2000         * gst/gstqueue.c: (gst_queue_loop):
2001         No unsafe task pausing please.
2002
2003 2005-06-23  Wim Taymans  <wim@fluendo.com>
2004
2005         * gst/schedulers/threadscheduler.c:
2006         (gst_thread_scheduler_task_start),
2007         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
2008         Ref the task before pushing it on the threadpool. This
2009         makes sure that we have a ref when the threadfunction is
2010         actually called.
2011
2012 2005-06-23  Andy Wingo  <wingo@pobox.com>
2013
2014         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
2015         offset is greater than the file's size.
2016
2017         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
2018         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
2019         * gst/gstobject.c (gst_object_class_init): Make the class lock
2020         recursive. Wim won't let me drop deep_notify. Decodebin works
2021         again, whoopdy doo.
2022
2023         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
2024         internal pad, and hacks accordingly. Doesn't do it on the target
2025         pad because we change its caps. Probably catches all cases of
2026         interest tho.
2027         (gst_ghost_pad_set_property): Connect to notify::caps as
2028         appropritate.
2029
2030         * tests/network-clock.scm (plot-simulation): Pipe data to the
2031         elite python skript.
2032
2033         * tests/network-clock-utils.scm (define-parameter): New macro,
2034         defines a parameter that can be set via the command line.
2035         (set-parameter!, parse-parameter-arguments): Command line args
2036         parser.
2037
2038         * tests/plot-data: Simple matplotlib-based plotter, takes input on
2039         stdin.
2040
2041 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
2042
2043         * gst/elements/gsttypefindelement.c:
2044         (gst_type_find_element_handle_event):
2045           Don't restart typefinding on a discont.
2046         * gst/gstelement.c: (gst_element_set_state):
2047           Debug spelling fix.
2048         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
2049           Allow changing mode of an active pad.
2050           Debug output fixes.
2051         * gst/registries/gstlibxmlregistry.c: (load_feature):
2052           Don't cast a static pad template to a normal pad template.
2053
2054 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2055
2056         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2057         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2058           remove gst_strtoll completely, since it didn't actually do
2059           anything more than what g_ascii_strtoull already does.
2060           check for range errors when deserializing
2061           do a cast for the unsigned cases; but further fixing needs
2062           a decision on what the interpretation of "(int)" and
2063           deserialization should be for values that fall outside the
2064           type's boundaries (ie, refuse, or interpret as casting)
2065
2066 2005-06-23  Wim Taymans  <wim@fluendo.com>
2067
2068         * check/Makefile.am:
2069         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2070         * docs/design/part-live-source.txt:
2071         * docs/design/part-states.txt:
2072         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2073         (gst_basesrc_set_live), (gst_basesrc_is_live),
2074         (gst_basesrc_get_range), (gst_basesrc_activate),
2075         (gst_basesrc_change_state):
2076         * gst/base/gstbasesrc.h:
2077         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2078         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2079         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2080         * gst/gstelement.c: (gst_element_get_state_func),
2081         (gst_element_set_state):
2082         * gst/gstelement.h:
2083         * gst/gsttypes.h:
2084         * tools/gst-launch.c: (event_loop), (main):
2085         Added support for live sources and other elements that
2086         cannot do preroll.
2087         Updated design docs, added live-source design doc.
2088         Implemented live source functionality in basesrc
2089         Fix error condition in _bin_get_state()
2090         Implement live source handling in -launch.
2091         Added check for live sources.
2092         Fixed case in GstBin where elements were changed state
2093         multiple times.
2094
2095
2096 2005-06-23  Andy Wingo  <wingo@pobox.com>
2097
2098         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2099         borken refcounting.
2100
2101         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2102         gst_caps_replace takes care of this for us.
2103
2104         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2105         gst_pad_set_caps on the target, not just its setcaps() function.
2106
2107         * tests/network-clock.scm: 
2108         * tests/network-clock-utils.scm: A network clock simulator.
2109         Something of an algorithmic testbed before doing something in C.
2110
2111 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2112
2113         * check/Makefile.am:
2114         * check/gst/capslist.h:
2115           copy over from 0.8, and add two with bitmasks specified with
2116           (int) 0xFF...
2117         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2118           add test to parse everything from capslist.h
2119         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2120         (main):
2121           add test for structure deserialization
2122         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2123           add tests for deserialization of strings to int types
2124         * gst/gststructure.c: (gst_structure_nth_field_name):
2125         * gst/gststructure.h:
2126           add a way to get the name of a field referenced by index
2127         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2128           instead of checking if the resulting long long lies between
2129           min and max, we check if the long long would fit into
2130           a number of bytes for the final type.
2131           This fixes cases where a string represents 2^32 - 1, which
2132           when cast to int would be the (valid) -1, but is bigger than
2133           G_MAXINT
2134
2135 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2136
2137         * gst/parse/grammar.y:
2138           add a log line for type deserialization
2139
2140 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2141
2142         * check/gst/gstvalue.c: (START_TEST):
2143         * gst/gstvalue.c: (gst_value_deserialize):
2144           return long long, not int, so gint64 deserialization actually
2145           works.  Is there any flag that makes the compiler check this ?
2146           Fixes #308559
2147
2148 2005-06-22  Wim Taymans  <wim@fluendo.com>
2149
2150         * gst/gstbuffer.h:
2151         Added convenience macros for setting buffers in GValue.
2152
2153 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2154
2155         * check/gst/.cvsignore:
2156         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2157           add a test deserializing int64, and comment part out because
2158           it fails, yay !
2159
2160 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2161
2162         * check/Makefile.am:
2163         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2164         * testsuite/Makefile.am:
2165         * testsuite/caps/Makefile.am:
2166         * testsuite/caps/value_serialize.c:
2167         * testsuite/test_gst_init.c:
2168           move a value_serialize test over
2169
2170 2005-06-20  Wim Taymans  <wim@fluendo.com>
2171
2172         * gst/gstpad.c:
2173         Small doc updates.
2174         
2175         * gst/gstvalue.c: (gst_value_compare_buffer),
2176         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2177         (gst_value_compare_flags), (gst_value_serialize_flags),
2178         (gst_value_deserialize_flags), (_gst_value_initialize):
2179         Fix serialisation of buffers, they are not boxed types anymore
2180
2181 2005-06-20  Wim Taymans  <wim@fluendo.com>
2182
2183         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2184         Testcase to show error in buffer-on-caps serialisation.
2185
2186 2005-06-20  Andy Wingo  <wingo@pobox.com>
2187
2188         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2189         will be adding to later.
2190
2191         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2192         if its socks fill with rocks.
2193         (gst_system_clock_obtain): Set the name on object construction.
2194         Avoid double-checked locking.
2195
2196 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2197
2198         * gst/gsturi.c: (gst_element_make_from_uri):
2199           Fix potential endless loop.
2200
2201 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2202
2203         * check/Makefile.am:
2204           add gsttag
2205         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2206         (main):
2207           move over from testsuite dir and clean up
2208         * configure.ac:
2209         * gst/gsttag.c:
2210         * testsuite/Makefile.am:
2211         * testsuite/tags/.cvsignore:
2212         * testsuite/tags/Makefile.am:
2213         * testsuite/tags/merge.c:
2214           remove testsuite/tags
2215
2216 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2217
2218         * docs/gst/gstreamer-sections.txt:
2219         * docs/gst/tmpl/gstenumtypes.sgml:
2220         * win32/gstenumtypes.c:
2221           clean up documentation build a little
2222
2223 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2224
2225         * check/gstcheck.h:
2226           add macros for checking refcounts on objects and caps
2227         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2228           add some more unit tests
2229         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2230         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2231           fix leaked refcounts (I hope :)) so unittest works
2232         * gst/gstpad.h:
2233           whitespace removal
2234
2235 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2236
2237         * configure.ac: back to HEAD
2238
2239 === release 0.9.1 ===
2240
2241 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2242
2243         * NEWS:
2244         * RELEASE:
2245           updated
2246
2247 2005-06-17  Andy Wingo  <wingo@pobox.com>
2248
2249         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2250         assert; it's always possible that the pad gets deactivated in
2251         between the checks in gstpad.c and the implementation. Rely on
2252         finish_preroll() to return a FLUSHING or similar instead of on the
2253         assert.
2254         
2255         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2256         clock and post an EOS message if we come out of finish_preroll in
2257         the playing state.
2258
2259 2005-06-16  David Schleef  <ds@schleef.org>
2260
2261         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2262         (gst_capsfilter_set_property): Allow NULL as possible value
2263         for filter_caps property, indicating GST_CAPS_ANY.
2264
2265 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2266
2267         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2268           fix debug output
2269         * gst/schedulers/Makefile.am:
2270           use libgst prefix
2271         * gstreamer.spec.in:
2272           fix spec for it
2273
2274 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2275
2276         * gstreamer.spec.in:
2277           clean up
2278
2279 2005-06-08  Andy Wingo  <wingo@pobox.com>
2280
2281         * gst/gstutils.c: RPAD fixes all around.
2282         (gst_element_link_pads): Refcounting fixes.
2283
2284         * tools/gst-inspect.c:
2285         * tools/gst-xmlinspect.c:
2286         * parse/grammar.y:
2287         * gst/base/gsttypefindhelper.c:
2288         * gst/base/gstbasesink.c:
2289         * gst/gstqueue.c: RPAD fixes.
2290
2291         * gst/gstghostpad.h:
2292         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2293         pads. The tricky thing is they provide both source and sink
2294         interfaces, since they proxy the internal pad for the external
2295         pad, and vice versa. Implement with lower-level ProxyPad objects,
2296         with the interior proxy pad as a child of the exterior ghost pad.
2297         Should write a doc on this.
2298         
2299         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2300         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2301         gst_object API.
2302         
2303         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2304         pads are real pads. No ghost pads in this file. Not documenting
2305         the myriad s/RPAD/PAD/ and REALIZE fixes.
2306         (gst_pad_class_init): Add properties for "direction" and
2307         "template". Both are construct-only, so they can't change during
2308         the life of the pad. Fixes properly deriving from GstPad.
2309         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2310         derived objects, just set properties when creating the objects via
2311         g_object_new.
2312         (gst_pad_get_parent): Implement as a function, return NULL if the
2313         parent is not an element.
2314         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2315         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2316         
2317         * gst/gstobject.c (gst_object_class_init): Make name a construct
2318         property. Don't set it in the object init.
2319
2320         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2321         with UNKNOWN direction.
2322         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2323         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2324         (gst_element_remove_pad): Remove ghost-pad special cases.
2325         (gst_element_pads_activate): Remove rpad cruft.
2326
2327         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2328         catch the pad's-parent-not-an-element case.
2329
2330         * gst/gst.h: Include gstghostpad.h.
2331
2332         * gst/gst.c (init_post): No more real, ghost pads.
2333
2334         * gst/Makefile.am: Add gstghostpad.[ch].
2335
2336         * check/Makefile.am:
2337         * check/gst/gstbin.c:
2338         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2339         into a bin creates ghost pads, and that the refcounts are right.
2340         Partly moved from gstbin.c.
2341
2342 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2343
2344         * check/gst-libs/.cvsignore:
2345         * check/gst/.cvsignore:
2346         * check/pipelines/.cvsignore:
2347           ignore more
2348         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2349         (START_TEST), (cleanup_suite), (main):
2350           add some tests related to cleanup after running pipelines
2351
2352 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2353
2354         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2355           add a testsuite for GstBuffer
2356
2357 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2358
2359         * gst/gstminiobject.h:
2360           add defines for accessing the refcount
2361
2362 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2363
2364         * Makefile.am: added support for html unit test coverage reports
2365
2366 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2367
2368         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2369           Free existing caps if the capsfilter changes. Add a FIXME about
2370           setting those caps on the pads.
2371
2372         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2373           Before adding a ghost pad to a parent bin, check that there isn't
2374           already one for the element on the bin. Prevents infinite recursion
2375           when using decodebin in parse pipelines. Andy says he'll rewrite the
2376           way this works anyway, so ignore the hack.
2377
2378 2005-06-02  Andy Wingo  <wingo@pobox.com>
2379
2380         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2381         file size, pass it on to the type find helper.
2382
2383         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2384         segment_start and segment_end properly according to the seek
2385         method. Segment_end is still a bit flaky because offset can be
2386         negative for CUR and END cases, but it takes -1 as an "unset"
2387         value.
2388
2389 2005-06-02  Wim Taymans  <wim@fluendo.com>
2390
2391         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2392         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2393         (gst_basesink_activate):
2394         * gst/base/gstbasesink.h:
2395         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2396         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2397         (gst_pad_query), (gst_pad_start_task):
2398         * gst/gstpad.h:
2399         * gst/gstqueue.c: (gst_queue_bufferalloc),
2400         (gst_queue_handle_sink_event), (gst_queue_chain):
2401         Bufferalloc: return GstFlowReturn to more accuratly report
2402         why allocation failed.
2403
2404 2005-06-02  Wim Taymans  <wim@fluendo.com>
2405
2406         * gst/gstpipeline.c: (gst_pipeline_send_event):
2407         Take snapshot of state without blocking.
2408
2409 2005-06-02  Wim Taymans  <wim@fluendo.com>
2410
2411         * docs/design/part-TODO.txt:
2412         * docs/design/part-caps.txt:
2413         * docs/design/part-clocks.txt:
2414         * docs/design/part-negotiation.txt:
2415         * docs/design/part-preroll.txt:
2416         Small doc updates 
2417
2418 2005-05-30  Wim Taymans  <wim@fluendo.com>
2419
2420         * gst/elements/gstidentity.c: (gst_identity_event),
2421         (gst_identity_transform), (gst_identity_get_property):
2422         Protect last_message property as it is accessed from
2423         multiple threads.
2424
2425 2005-05-30  Wim Taymans  <wim@fluendo.com>
2426
2427         * gst/gstelement.c: (gst_element_init),
2428         (gst_element_pads_activate), (gst_element_change_state):
2429         Slicker pad activation code.
2430
2431 2005-05-30  Wim Taymans  <wim@fluendo.com>
2432
2433         * gst/Makefile.am:
2434         * gst/gstelement.h:
2435         * gst/gstelementfactory.h:
2436         * gst/gsttypes.h:
2437         Move elementfactory methods to separate .h file.
2438
2439 2005-05-30  Wim Taymans  <wim@fluendo.com>
2440
2441         * docs/design/part-overview.txt:
2442         * gst/gstsystemclock.h:
2443         Small typo fixes, doc updates.
2444
2445 2005-05-30  Wim Taymans  <wim@fluendo.com>
2446
2447         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2448         (init_popt_callback):
2449         Remove cpu-opt flag.
2450
2451 2005-05-30  Wim Taymans  <wim@fluendo.com>
2452
2453         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2454         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2455         * gst/gstbuffer.h:
2456         Avoid typechecking in places where not needed.
2457         Added accessor for malloc_data.
2458
2459 2005-05-30  Wim Taymans  <wim@fluendo.com>
2460
2461         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2462         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2463         (gst_pad_configure_sink), (gst_pad_configure_src),
2464         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2465         (gst_pad_start_task):
2466         Propagate errors from _set_caps() in configure_src/sink
2467         functions instead of returning TRUE.
2468         FLUSH events can travel up and downstream
2469
2470
2471 2005-05-30  Wim Taymans  <wim@fluendo.com>
2472
2473         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2474         (gst_basesink_activate):
2475         Handle EOS in preroll.
2476
2477 2005-05-30  Wim Taymans  <wim@fluendo.com>
2478
2479         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2480         (gst_queue_loop), (gst_queue_handle_src_event):
2481         Remove old pieces of code
2482         Flushing the queue in an upstream event is a very bad idea.
2483
2484 2005-05-26  Andy Wingo  <wingo@pobox.com>
2485
2486         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2487         gst_value_set_mini_object so as to add a ref on the object (which
2488         will be removed when the value is unset).
2489
2490         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2491         arg type in ::handoff.
2492
2493         * gst/gstelement.c (gst_element_change_state): Also deactivate
2494         pads in READY->NULL, just in case the element didn't make it to
2495         PAUSED. Wingo tested, Wim approved.
2496
2497 2005-05-26  Wim Taymans  <wim@fluendo.com>
2498
2499         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2500         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2501         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2502         A flushing pad cannot be used to alloc_buffer from.
2503
2504 2005-05-26  Wim Taymans  <wim@fluendo.com>
2505
2506         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2507         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2508         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2509         (gst_bus_create_watch), (gst_bus_add_watch_full):
2510         * gst/gstbus.h:
2511         Implement a real GSource and use g_main_context_wakeup() to
2512         signal new messages instead of the socketpair.
2513
2514 2005-05-25  Wim Taymans  <wim@fluendo.com>
2515
2516         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2517         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2518         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2519         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2520         (gst_pad_send_event), (gst_pad_start_task):
2521         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2522         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2523         (gst_queue_sink_activate), (gst_queue_src_activate),
2524         (gst_queue_change_state):
2525         * gst/gstqueue.h:
2526         Fix state changes for non sinks. We now change sinks, then elements
2527         with unconnected srcpads, then the rest.
2528         More efficient queue unlocking in flush and state changes.
2529         Set the pad activate mode even if it does not have an activate
2530         function.
2531
2532 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2533
2534         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2535           Don't go in pull mode for non-seekable sources.
2536         * gst/elements/gsttypefindelement.h:
2537         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2538         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2539         (free_entry), (stop_typefinding),
2540         (gst_type_find_element_handle_event), (find_peek),
2541         (gst_type_find_element_chain), (do_pull_typefind),
2542         (gst_type_find_element_change_state):
2543           Allow typefinding (w/o seeking) in push-mode, simplified version
2544           of what was in 0.8.
2545         * gst/gstutils.c: (gst_buffer_join):
2546         * gst/gstutils.h:
2547           gst_buffer_join() from 0.8.
2548
2549 2005-05-25  Wim Taymans  <wim@fluendo.com>
2550
2551         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2552         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2553         (gst_pad_send_event), (gst_pad_start_task):
2554         Disable attempt at mode switching until it is figured out.
2555
2556 2005-05-25  Wim Taymans  <wim@fluendo.com>
2557
2558         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2559         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2560         (gst_basesink_finish_preroll), (gst_basesink_chain),
2561         (gst_basesink_loop), (gst_basesink_activate),
2562         (gst_basesink_change_state):
2563         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2564         (gst_basesrc_get_range), (gst_basesrc_loop),
2565         (gst_basesrc_activate):
2566         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2567         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2568         (gst_real_pad_init), (gst_real_pad_set_property),
2569         (gst_real_pad_get_property), (gst_pad_set_active),
2570         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2571         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2572         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2573         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2574         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2575         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2576         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2577         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2578         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2579         (gst_pad_stop_task):
2580         * gst/gstpad.h:
2581         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2582         (gst_queue_loop), (gst_queue_src_activate):
2583         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2584         (gst_task_get_state):
2585         * gst/gsttask.h:
2586         * gst/schedulers/threadscheduler.c:
2587         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2588         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2589         in task function.
2590         Remove ACTIVE pad flag, use FLUSHING everywhere
2591         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2592         functions.
2593         Add locks around IS_FLUSHING when reading.
2594         Take STREAM lock in chain(), get_range() functions so plugins
2595         don't need to take it anymore.
2596         
2597
2598
2599 2005-05-25  Wim Taymans  <wim@fluendo.com>
2600
2601         * tools/gst-launch.c: (event_loop):
2602         Unref message after using its contents instead of
2603         before.
2604
2605 2005-05-24  Wim Taymans  <wim@fluendo.com>
2606
2607         * docs/design/draft-ghostpads.txt:
2608         * docs/design/draft-push-pull.txt:
2609         * docs/design/draft-query.txt:
2610         * docs/design/part-overview.txt:
2611         Docs updates, added general overview doc.
2612
2613 2005-05-21  David Schleef  <ds@schleef.org>
2614
2615         * docs/gst/tmpl/old/GstBin.sgml:
2616         * docs/gst/tmpl/old/GstBuffer.sgml:
2617         * docs/gst/tmpl/old/GstCaps.sgml:
2618         * docs/gst/tmpl/old/GstClock.sgml:
2619         * docs/gst/tmpl/old/GstCompat.sgml:
2620         * docs/gst/tmpl/old/GstData.sgml:
2621         * docs/gst/tmpl/old/GstElement.sgml:
2622         * docs/gst/tmpl/old/GstEvent.sgml:
2623         * docs/gst/tmpl/old/GstIndex.sgml:
2624         * docs/gst/tmpl/old/GstStructure.sgml:
2625         * docs/gst/tmpl/old/GstTag.sgml:
2626         * docs/gst/tmpl/old/cothreads.sgml:
2627         * docs/gst/tmpl/old/cothreads_compat.sgml:
2628         * docs/gst/tmpl/old/gettext.sgml:
2629         * docs/gst/tmpl/old/gobject2gtk.sgml:
2630         * docs/gst/tmpl/old/grammar.tab.sgml:
2631         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2632         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2633         * docs/gst/tmpl/old/gst_private.sgml:
2634         * docs/gst/tmpl/old/gstaggregator.sgml:
2635         * docs/gst/tmpl/old/gstarch.sgml:
2636         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2637         * docs/gst/tmpl/old/gstbufferstore.sgml:
2638         * docs/gst/tmpl/old/gstdata_private.sgml:
2639         * docs/gst/tmpl/old/gstdisksink.sgml:
2640         * docs/gst/tmpl/old/gstdisksrc.sgml:
2641         * docs/gst/tmpl/old/gstelementfactory.sgml:
2642         * docs/gst/tmpl/old/gstextratypes.sgml:
2643         * docs/gst/tmpl/old/gstfakesink.sgml:
2644         * docs/gst/tmpl/old/gstfakesrc.sgml:
2645         * docs/gst/tmpl/old/gstfdsink.sgml:
2646         * docs/gst/tmpl/old/gstfdsrc.sgml:
2647         * docs/gst/tmpl/old/gstfilesink.sgml:
2648         * docs/gst/tmpl/old/gstfilesrc.sgml:
2649         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2650         * docs/gst/tmpl/old/gstidentity.sgml:
2651         * docs/gst/tmpl/old/gstindexfactory.sgml:
2652         * docs/gst/tmpl/old/gstmarshal.sgml:
2653         * docs/gst/tmpl/old/gstmd5sink.sgml:
2654         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2655         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2656         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2657         * docs/gst/tmpl/old/gstpipefilter.sgml:
2658         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2659         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
2660         * docs/gst/tmpl/old/gstshaper.sgml:
2661         * docs/gst/tmpl/old/gstspider.sgml:
2662         * docs/gst/tmpl/old/gstspideridentity.sgml:
2663         * docs/gst/tmpl/old/gststatistics.sgml:
2664         * docs/gst/tmpl/old/gsttee.sgml:
2665         * docs/gst/tmpl/old/gsttimecache.sgml:
2666         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
2667         * docs/gst/tmpl/old/gstxmlregistry.sgml:
2668         * docs/gst/tmpl/old/gthread-cothreads.sgml:
2669         * docs/gst/tmpl/old/types.sgml:
2670           I didn't intend to add these or check them in.
2671
2672 2005-05-19  David Schleef  <ds@schleef.org>
2673
2674         * configure.ac: Use -no-common everywhere.  In a sane world, it
2675           would be the default in libtool, because without it, you can't
2676           build DLLs on Windows.
2677         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
2678         * docs/gst/gstreamer-sections.txt:
2679         * docs/gst/tmpl/gstcpu.sgml:
2680         * docs/gst/tmpl/gstdata.sgml:
2681         * docs/gst/tmpl/gstthread.sgml:
2682
2683 2005-05-19  David Schleef  <ds@schleef.org>
2684
2685         * gst/gstminiobject.c: (gst_value_set_mini_object),
2686         (gst_value_take_mini_object), (gst_value_get_mini_object):
2687         * gst/gstminiobject.h: Add GValue set/get functions.
2688
2689 2005-05-19  Wim Taymans  <wim@fluendo.com>
2690
2691         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
2692         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
2693         (gst_subbuffer_init), (gst_buffer_is_span_fast):
2694         * gst/gstbuffer.h:
2695         * gst/gstbus.c: (gst_bus_post):
2696         * gst/gstelement.c: (gst_element_get_random_pad):
2697         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
2698         Make subbufer unref the parent in finalize.
2699         some more debugging info.
2700
2701
2702 2005-05-19  Wim Taymans  <wim@fluendo.com>
2703
2704         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2705         (gst_basesink_init), (gst_basesink_finalize),
2706         (gst_basesink_activate), (gst_basesink_change_state):
2707         Don't free preroll queue too early.
2708
2709 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2710
2711         * gst/Makefile.am:
2712         * gst/ROADMAP:
2713           Hi, I'm outdated. Please shoot me.
2714
2715 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2716
2717         * gst/gstpipeline.c: (gst_pipeline_send_event):
2718           Do not access variables after they have been deleted.
2719
2720 2005-05-19  Wim Taymans  <wim@fluendo.com>
2721
2722         * tools/gst-inspect.c: (print_plugin_features):
2723         A plugin feature does unfortunatly not use the
2724         object name yet...
2725
2726 2005-05-18  Wim Taymans  <wim@fluendo.com>
2727
2728         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
2729         Port _span() functions to new subbuffers.
2730
2731 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2732
2733         * gst/gstbin.c: (gst_bin_add_func):
2734           Fix clock settery in bins when adding kids after the clock has
2735           been selected.
2736
2737 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2738
2739         * gst/elements/gstidentity.c: (gst_identity_class_init):
2740           Workaround until signals support GstMiniObject.
2741
2742 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
2743
2744         * gst/gstbuffer.c:
2745         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
2746
2747 2005-05-18  Wim Taymans  <wim@fluendo.com>
2748
2749         * gst/base/Makefile.am:
2750         * gst/base/gstadapter.c: (gst_adapter_base_init),
2751         (gst_adapter_class_init), (gst_adapter_init),
2752         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
2753         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
2754         (gst_adapter_flush), (gst_adapter_available),
2755         (gst_adapter_available_fast):
2756         * gst/base/gstadapter.h:
2757         Ported and added adapter to the base classes.
2758
2759 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2760
2761         * gst/gst.c:
2762         * gst/gstmessage.c:
2763           Make sure the class is reffed/unreffed once before threads can be
2764           used.  Fixes #304551.
2765
2766 2005-05-17  Wim Taymans  <wim@fluendo.com>
2767
2768         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
2769         (gst_basesink_chain_unlocked), (gst_basesink_activate):
2770         * gst/gstminiobject.c: (gst_mini_object_get_type),
2771         (gst_mini_object_free):
2772         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
2773         (gst_pad_push), (gst_pad_push_event):
2774         * gst/gstqueue.c: (gst_queue_change_state):
2775         Don't queue buffers in basesink when we are flushing.
2776         Unref buffer when flushing in basesink.
2777         Flush queue when going to READY
2778         Unref buffer when _push() returns an error.
2779         Don't free MiniObject instance when refcount is incremented
2780         in _finalize() so that we can recover objects.
2781
2782 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2783
2784         * docs/manual/advanced-schedulers.xml:
2785         * docs/manual/appendix-checklist.xml:
2786         * docs/pwg/advanced-clock.xml:
2787         * docs/pwg/advanced-interfaces.xml:
2788         * docs/pwg/advanced-request.xml:
2789         * docs/pwg/advanced-types.xml:
2790         * docs/pwg/intro-preface.xml:
2791         * examples/plugins/example.c: (gst_example_get_type),
2792         (gst_example_class_init), (gst_example_chain),
2793         (gst_example_set_property), (gst_example_get_property),
2794         (gst_example_change_state), (plugin_init):
2795         * examples/plugins/example.h:
2796           small doc fixes
2797
2798 2005-05-17  Wim Taymans  <wim@fluendo.com>
2799
2800         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
2801         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
2802         * gst/gstqueue.c: (gst_queue_change_state):
2803         Clear queue when going to READY.
2804         Remove IN_SETCAPS flag too.
2805
2806 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
2807
2808         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
2809           Remove implicit cast from gboolean to GstElementStateReturn;
2810           make sure we still return failure in paused => ready case if
2811           the parent class fails to change state and our own stop 
2812           vfunc succeeds.
2813
2814 2005-05-17  Wim Taymans  <wim@fluendo.com>
2815
2816         * tools/gst-launch.c: (event_loop):
2817         Message was unreffed too soon.
2818
2819 2005-05-16  Andy Wingo  <wingo@pobox.com>
2820
2821         * gst/gstbin.c (sink_iterator_filter): Err... um...
2822
2823         * check/gst/gstbin.c (test_ghost_pads): New test for the
2824         ghosting-if-elements-not-in-same-bin behavior.
2825
2826 2005-05-16  David Schleef  <ds@schleef.org>
2827
2828         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
2829         accessing refcount directly.
2830
2831 2005-05-15  David Schleef  <ds@schleef.org>
2832
2833         * check/Makefile.am: remove GstData checks
2834         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
2835         * gst/Makefile.am: add miniobject, remove data
2836         * gst/gst.h: add miniobject, remove data
2837         * gst/gstdata.c: remove
2838         * gst/gstdata.h: remove
2839         * gst/gstdata_private.h: remove
2840         * gst/gsttypes.h: remove GstEvent and GstMessage
2841         * gst/gstelement.c: (gst_element_post_message): fix for API changes
2842         * gst/gstmarshal.list: change BOXED -> OBJECT
2843
2844         Implement GstMiniObject.
2845         * gst/gstminiobject.c:
2846         * gst/gstminiobject.h:
2847
2848         Modify to be subclasses of GstMiniObject.
2849         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
2850         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
2851         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
2852         (gst_subbuffer_get_type), (gst_subbuffer_init),
2853         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
2854         (gst_buffer_span):
2855         * gst/gstbuffer.h:
2856         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
2857         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
2858         (_gst_event_copy), (gst_event_new):
2859         * gst/gstevent.h:
2860         * gst/gstmessage.c: (_gst_message_initialize),
2861         (gst_message_get_type), (gst_message_class_init),
2862         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
2863         (gst_message_new), (gst_message_new_error),
2864         (gst_message_new_warning), (gst_message_new_tag),
2865         (gst_message_new_state_changed), (gst_message_new_application):
2866         * gst/gstmessage.h:
2867         * gst/gstprobe.c: (gst_probe_perform),
2868         (gst_probe_dispatcher_dispatch):
2869         * gst/gstprobe.h:
2870         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
2871         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
2872         (_gst_query_copy), (gst_query_new):
2873
2874         Update elements for GstData -> GstMiniObject changes
2875         * gst/gstquery.h:
2876         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
2877         (gst_queue_chain), (gst_queue_loop):
2878         * gst/elements/gstbufferstore.c:
2879         (gst_buffer_store_add_buffer_func),
2880         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
2881         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2882         (gst_fakesink_render):
2883         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2884         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
2885         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
2886         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
2887         (gst_filesrc_create_read):
2888         * gst/elements/gstidentity.c: (gst_identity_class_init):
2889         * gst/elements/gsttypefindelement.c:
2890         (gst_type_find_element_src_event), (free_entry_buffers),
2891         (gst_type_find_element_handle_event):
2892         * libs/gst/dataprotocol/dataprotocol.c:
2893         (gst_dp_header_from_buffer):
2894         * libs/gst/dataprotocol/dataprotocol.h:
2895         * libs/gst/dataprotocol/dp-private.h:
2896
2897 2005-05-15  David Schleef  <ds@schleef.org>
2898
2899         * gst/elements/gstelements.c: Don't include headers that were
2900         just removed.
2901
2902 2005-05-15  David Schleef  <ds@schleef.org>
2903
2904         * gst/elements/Makefile.am: Remove some elements that don't
2905         need to be in the core (or even exist at all).
2906         * gst/elements/gstaggregator.c:
2907         * gst/elements/gstaggregator.h:
2908         * gst/elements/gstmd5sink.c:
2909         * gst/elements/gstmd5sink.h:
2910         * gst/elements/gstmultifilesrc.c:
2911         * gst/elements/gstmultifilesrc.h:
2912         * gst/elements/gstpipefilter.c:
2913         * gst/elements/gstpipefilter.h:
2914         * gst/elements/gstshaper.c:
2915         * gst/elements/gstshaper.h:
2916         * gst/elements/gststatistics.c:
2917         * gst/elements/gststatistics.h:
2918         * po/POTFILES.in: Remove above files.
2919
2920 2005-05-14  Andy Wingo  <wingo@pobox.com>
2921
2922         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
2923         so as to get the refs right.
2924         (sink_iterator_filter): New function, wraps bin_element_is_sink,
2925         unreffing objects that don't pass the filter.
2926
2927         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
2928         gst_element_set_bus.
2929         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
2930         normal cases, this will destroy the bus.
2931
2932         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
2933         object.
2934
2935         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
2936         has no sinks.
2937
2938 2005-05-13  Andy Wingo  <wingo@pobox.com>
2939
2940         * gst/gstutils.c (gst_element_link_pads): Instead of calling
2941         gst_pad_link, call pad_link_maybe_ghosting,
2942         (pad_link_maybe_ghosting): Links pads, making sure that the
2943         elements being linked are in the same bin.
2944         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
2945         Helpers for pad_link_maybe_ghosting.
2946
2947 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2948
2949         * configure.ac:
2950           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
2951
2952 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2953
2954         * docs/design/part-element-source.txt:
2955           Mention GstPushSrc
2956
2957 2005-05-12  Wim Taymans  <wim@fluendo.com>
2958
2959         * gst/base/gstbasesink.c: (gst_basesink_init),
2960         (gst_basesink_activate):
2961         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
2962         (gst_basesrc_is_seekable):
2963         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
2964         (bin_element_is_sink), (gst_bin_change_state):
2965         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2966         * gst/gstelement.h:
2967         Identify sinks by their flag to avoid overly complicated
2968         checks (fow now).
2969         Do state changes even for elements not reachable from the
2970         sinks.
2971         BaseSink is a sink now :)
2972         Some more debugging info in the basesrc.
2973
2974
2975 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2976
2977         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
2978           Implement _query on a bin, similar to _send_event.
2979
2980 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
2981
2982         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
2983           Discont event offset format should be GST_FORMAT_BYTES,
2984           not GST_FORMAT_TIME.
2985
2986 2005-05-12  Wim Taymans  <wim@fluendo.com>
2987
2988         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
2989         Same fix as Ronald's but without the signal. 
2990
2991 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2992
2993         * gst/gstutils.c: (gst_element_query_position):
2994           No, an element is not a pad.
2995
2996 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2997
2998         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
2999         (gst_bin_get_state):
3000           If a child is removed from a bin while we remove the child from
3001           the bin and while we're retrieving its state, signal this to the
3002           get_state function so we abort the wait (instead of waiting for
3003           a timeout) and can immediately re-iterate over all other elements.
3004
3005 2005-05-12  Wim Taymans  <wim@fluendo.com>
3006
3007         * gst/base/Makefile.am:
3008         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
3009         (gst_basesrc_start):
3010         * gst/base/gstbasesrc.h:
3011         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
3012         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
3013         (gst_pushsrc_init), (gst_pushsrc_create):
3014         * gst/base/gstpushsrc.h:
3015         Added is_seekable to BaseSrc
3016         Added simple PushSrc.
3017
3018 2005-05-11  Wim Taymans  <wim@fluendo.com>
3019
3020         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3021         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3022         (gst_element_link_pads), (gst_element_query_position),
3023         (gst_element_query_convert), (intersect_caps_func),
3024         (gst_pad_query_position), (gst_pad_query_convert):
3025         Fix refcounting in utils function.
3026         No point in trying to activate a pad when it's added, it could
3027         be added from the state change function and then we deadlock, the
3028         element has to decide what to do.
3029
3030 2005-05-10  Andy Wingo  <wingo@pobox.com>
3031
3032         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
3033         *all* the arguments.
3034
3035         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
3036         stream lock if it's a FLUSH_DONE; normal flushes don't get the
3037         lock (according to the docs -- if this is wrong change the docs).
3038
3039         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
3040         flush messages in the NULL state.
3041
3042         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
3043         message immediately and return.
3044         (gst_bus_set_flushing): New function. If a bus is flushing, it
3045         flushes out any queued messages and immediately unrefs new
3046         messages. This is so when an element goes to NULL, all of the
3047         unhandled messages coming from it can be freed, and their
3048         references to the element dropped. In other words: message source
3049         ref considered harmful :P
3050
3051         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
3052         we're finished with it.
3053
3054         * gst/gstmessage.c (gst_message_new_state_changed): 
3055
3056 2005-05-10  Wim Taymans  <wim@fluendo.com>
3057
3058         * gst/gstvalue.c: (gst_value_compare_flags),
3059         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3060         (_gst_value_initialize):
3061         Added flags serialize/deserialize/compare code.
3062
3063 2005-05-09  Andy Wingo  <wingo@pobox.com>
3064
3065         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3066         Intersect the peer's caps with our caps.
3067
3068 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3069
3070         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3071         * gst/elements/gsttypefindelement.c: (find_peek):
3072           Handle negative offsets better. Fixes decodebin.
3073
3074 2005-05-09  Wim Taymans  <wim@fluendo.com>
3075
3076         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3077         (gst_base_transform_event):
3078         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3079         Implement accept_caps.
3080         Fix silly lock/unlock mismatch in base class.
3081
3082 2005-05-09  Wim Taymans  <wim@fluendo.com>
3083
3084         * docs/design/draft-push-pull.txt:
3085         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3086         * gst/elements/gstfilesink.c: (gst_filesink_init),
3087         (gst_filesink_query):
3088         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3089         (gst_type_find_handle_src_query), (find_element_get_length):
3090         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3091         * gst/gstelement.h:
3092         * gst/gstmessage.c:
3093         * gst/gstmessage.h:
3094         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3095         (gst_real_pad_get_caps_unlocked),
3096         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3097         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3098         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3099         (gst_real_pad_dispose), (gst_real_pad_finalize),
3100         (gst_pad_load_and_link), (gst_pad_save_thyself),
3101         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3102         (gst_pad_check_pull_range), (gst_pad_pull_range),
3103         (gst_pad_template_get_type), (gst_pad_template_class_init),
3104         (gst_pad_template_init), (gst_pad_template_dispose),
3105         (name_is_valid), (gst_static_pad_template_get),
3106         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3107         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3108         (gst_pad_get_element_private), (gst_pad_start_task),
3109         (gst_pad_pause_task), (gst_pad_stop_task),
3110         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3111         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3112         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3113         (gst_ghost_pad_new):
3114         * gst/gstpad.h:
3115         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3116         (gst_query_new_position), (gst_query_set_position),
3117         (gst_query_parse_position), (gst_query_new_convert),
3118         (gst_query_set_convert), (gst_query_parse_convert):
3119         * gst/gstquery.h:
3120         * gst/gstqueryutils.c:
3121         * gst/gstqueryutils.h:
3122         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3123         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3124         (gst_queue_handle_src_query):
3125         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3126         (gst_element_query_position), (gst_element_query_convert),
3127         (intersect_caps_func), (gst_pad_query_position),
3128         (gst_pad_query_convert):
3129         * gst/gstutils.h:
3130         * tools/gst-inspect.c: (print_pad_info):
3131         * tools/gst-xmlinspect.c: (print_element_info):
3132         Remove old query functions. Ported old code.
3133         Added position/convert helper functions to gstutils.
3134         Reordered gstpad.c code, grouping relevant things.
3135         Remove gst_message_new(), always need to speficy a specific
3136         message.
3137
3138
3139 2005-05-09  Andy Wingo  <wingo@pobox.com>
3140
3141         * gst/gstiterator.h: Add some includes.
3142
3143         * gst/gstqueryutils.h: Include more headers.
3144
3145         * gst/gstpad.h:
3146         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3147         some uses of gst_pad_query.
3148
3149         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3150         NULL out parameters.
3151         (gst_query_new_position): New proc, allocates a new position
3152         query.
3153
3154         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3155         gstqueryutils.c to the build.
3156
3157         * gst/gststructure.c (gst_structure_set_valist): Implement with
3158         the generic G_VALUE_COLLECT.
3159         
3160 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3161
3162         * gst/Makefile.am: (gst_headers):
3163         Added gstqueryutils.h to the list of headers to install, that was
3164         a 'nachty' move wingo :)
3165
3166 2005-05-06  Andy Wingo  <wingo@pobox.com>
3167
3168         * gst/gstquery.h
3169         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3170         GstData, init a memchunk.
3171         (standard_definitions): Add a few query types, deprecate a few.
3172         (gst_query_get_type): New proc.
3173         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3174         implementation.
3175         (gst_query_new_application, gst_query_get_structure): New public
3176         procs.
3177
3178         * docs/design/draft-query.txt: Removed LINKS from the query types,
3179         because all the rest can be dispatched to other pads -- seemed
3180         ugly to have a query that couldn't be dispatched. internal_links
3181         is fine as a pad method.
3182
3183         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3184         in gstpad.c, but maintain binary compatibility for the moment.
3185         Will fix before 0.9 is out.
3186
3187         * gst/gstqueryutils.c: 
3188         * gst/gstqueryutils.h: New files, implement 3 methods for each
3189         query type: parse_query, parse_response, and set. Probably need an
3190         allocator as well.
3191
3192         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3193
3194         * gst/elements/gstfilesink.c (gst_filesink_query2):
3195         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3196         query_types, and formats methods.
3197
3198         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3199         (gst_pad_set_query2_function): New functions.
3200         (gst_real_pad_init): Set query2_default as the default query2
3201         function. Basically just dispatches to internally linked pads.
3202
3203         Needs review!
3204         
3205         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3206         without using the atomic operations. Only one thread can possibly
3207         be accessing the data at this point. Changed so as to avoid
3208         gst_atomic operations.
3209
3210 2005-05-06  Wim Taymans  <wim@fluendo.com>
3211
3212         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3213         Also set caps if we use the fallback buffer alloc.
3214
3215 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3216
3217         * docs/gst/Makefile.am:
3218         * docs/gst/gstreamer-docs.sgml:
3219         * docs/gst/gstreamer-sections.txt:
3220         * docs/gst/tmpl/gstatomic.sgml:
3221         * docs/gst/tmpl/gstmemchunk.sgml:
3222         * testsuite/elements/struct_i386.h:
3223         * win32/GStreamer.vcproj:
3224         * win32/Makefile:
3225           Purge GstAtomic stuff from docs and win32 makefiles as well
3226
3227 2005-05-06  Wim Taymans  <wim@fluendo.com>
3228
3229         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3230         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3231         * gst/gstpad.c: (gst_pad_peer_get_caps):
3232         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3233         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3234         (gst_queue_src_activate), (gst_queue_change_state):
3235         * gst/gstqueue.h:
3236         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3237         (intersect_caps_func):
3238         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3239         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3240         Some fixes for the peer_get_caps() change.
3241
3242 2005-05-06  Wim Taymans  <wim@fluendo.com>
3243
3244         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3245         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3246         (gst_basesink_activate):
3247         Actually do something with error codes returned from the push
3248         functions.
3249
3250 2005-05-06  Wim Taymans  <wim@fluendo.com>
3251
3252         * docs/design/part-element-sink.txt:
3253         * docs/design/part-element-source.txt:
3254         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3255         (gst_basesink_event), (gst_basesink_activate):
3256         * gst/base/gstbasesink.h:
3257         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3258         (gst_basesrc_activate):
3259         * gst/base/gstbasesrc.h:
3260         * gst/gstelement.c: (gst_element_pads_activate):
3261         Some more documentation.
3262         Fixed scheduling decision in _pads_activate().
3263
3264 2005-05-05  Andy Wingo  <wingo@pobox.com>
3265
3266         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3267         the test suite.
3268
3269 2005-05-05  Wim Taymans  <wim@fluendo.com>
3270
3271         * gst/base/Makefile.am:
3272         * gst/base/gstbasesink.h:
3273         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3274         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3275         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3276         (gst_collectpads_class_init), (gst_collectpads_init),
3277         (gst_collectpads_finalize), (gst_collectpads_new),
3278         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3279         (find_pad), (gst_collectpads_remove_pad),
3280         (gst_collectpads_is_active), (gst_collectpads_collect),
3281         (gst_collectpads_collect_range), (gst_collectpads_start),
3282         (gst_collectpads_stop), (gst_collectpads_peek),
3283         (gst_collectpads_pop), (gst_collectpads_available),
3284         (gst_collectpads_read), (gst_collectpads_flush),
3285         (gst_collectpads_chain):
3286         * gst/base/gstcollectpads.h:
3287         * gst/elements/Makefile.am:
3288         * gst/elements/gstelements.c:
3289         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3290         (gst_fakesink_get_times), (gst_fakesink_event),
3291         (gst_fakesink_preroll), (gst_fakesink_render):
3292         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3293         (gst_filesink_init), (gst_filesink_set_location),
3294         (gst_filesink_open_file), (gst_filesink_close_file),
3295         (gst_filesink_pad_query), (gst_filesink_event),
3296         (gst_filesink_render), (gst_filesink_change_state):
3297         * gst/elements/gstfilesink.h:
3298         Added object to help in making collect pad based elements.
3299         Ported filesink.
3300         Make event function in sink baseclass return gboolean.
3301
3302 2005-05-05  Wim Taymans  <wim@fluendo.com>
3303
3304         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3305         (gst_bin_get_by_name):
3306         * gst/gstbuffer.h:
3307         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3308         (gst_clock_finalize):
3309         * gst/gstdata.c: (gst_data_replace):
3310         * gst/gstdata.h:
3311         * gst/gstelement.c: (gst_element_request_pad),
3312         (gst_element_pads_activate):
3313         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3314         (gst_object_unref):
3315         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3316         (gst_pad_set_checkgetrange_function),
3317         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3318         (gst_pad_check_pull_range), (gst_pad_pull_range),
3319         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3320         (gst_pad_pause_task), (gst_pad_stop_task):
3321         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3322         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3323         Fix name lookup in GstBin.
3324         Added _data_replace() function and _buffer_replace()
3325         Use finalize method to clean up clock.
3326         Fix refcounting on request pads.
3327         Fix pad schedule mode error.
3328         Some more object refcounting debug info,
3329
3330
3331 2005-05-04  Andy Wingo <wingo@pobox.com>
3332
3333         * check/Makefile.am:
3334         * docs/gst/tmpl/gstatomic.sgml:
3335         * docs/gst/tmpl/gstplugin.sgml:
3336         * gst/base/gstbasesink.c: (gst_basesink_activate):
3337         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3338         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3339         (gst_basesrc_query), (gst_basesrc_set_property),
3340         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3341         (gst_basesrc_activate):
3342         * gst/base/gstbasesrc.h:
3343         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3344         (gst_base_transform_src_activate):
3345         * gst/elements/gstelements.c:
3346         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3347         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3348         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3349         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3350         (gst_type_find_element_checkgetrange),
3351         (gst_type_find_element_activate):
3352         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3353         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3354         (gst_caps_load_thyself):
3355         * gst/gstelement.c: (gst_element_pads_activate),
3356         (gst_element_save_thyself), (gst_element_restore_thyself):
3357         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3358         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3359         * gst/gstpad.h:
3360         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3361         (gst_xml_parse_file), (gst_xml_parse_memory),
3362         (gst_xml_get_element), (gst_xml_make_element):
3363         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3364         (_file_index_id_save_xml), (gst_file_index_commit):
3365         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3366         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3367         (load_paths):
3368         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3369         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3370         * tools/gst-complete.c: (main):
3371         * tools/gst-compprep.c: (main):
3372         * tools/gst-inspect.c: (print_element_properties_info):
3373         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3374         * tools/gst-xmlinspect.c: (print_element_properties):
3375         GCC 4 fixen.
3376         
3377 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3378
3379         * gst/gstplugin.c: (gst_plugin_check_module),
3380         (gst_plugin_check_file), (gst_plugin_load_file):
3381             apply patch from #172526 to make register work on MacOSX
3382
3383 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3384
3385         * docs/gst/tmpl/gstconfig.sgml:
3386         * gst/gstconfig.h.in:
3387           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3388         * testsuite/debug/printf_extension.c: (main):
3389           Do not use GST_PTR_FORMAT on pointers to types with
3390           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3391         * testsuite/elements/property.h:
3392           use correct printf format
3393
3394 2005-05-02  Wim Taymans  <wim@fluendo.com>
3395
3396         * docs/design/draft-push-pull.txt:
3397         * docs/design/draft-query.txt:
3398         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3399         (gst_basesrc_start):
3400         Added draft for new query API.
3401         Added draft for better selecting scheduling methods.
3402         Make basesrc ignore length if the subclass does not support
3403         it.
3404
3405 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3406
3407         * gst/Makefile.am:
3408           possible fixes for automake-1.5 - _LIBADD is reserved
3409
3410 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3411
3412         * docs/faq/Makefile.am:
3413         * docs/manual/Makefile.am:
3414         * docs/manuals.mak:
3415         * docs/pwg/Makefile.am:
3416         * gst/Makefile.am:
3417           possible fixes for automake-1.5
3418
3419 2005-04-28  Wim Taymans  <wim@fluendo.com>
3420
3421         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3422         (gst_basesink_pad_getcaps), (gst_basesink_init),
3423         (gst_basesink_do_sync):
3424         * gst/gstclock.c: (gst_clock_entry_new):
3425         * gst/gstevent.c: (gst_event_discont_get_value):
3426         * gst/gstpipeline.c: (pipeline_bus_handler),
3427         (gst_pipeline_change_state):
3428         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3429         Better debugging of clocking info.
3430         Allow NULL values when getting discont values.
3431
3432 2005-04-27  Wim Taymans  <wim@fluendo.com>
3433
3434         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3435         * check/gst/gstpad.c: (gst_pad_suite):
3436         Increase timeout for checks.
3437
3438 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3439
3440         * check/Makefile.am:
3441           fix the broken rule for cleanup.  Apparently this rule is
3442           only needed on FC2, so maybe this warrants further autotool
3443           inspection.
3444
3445 2005-04-26  Wim Taymans  <wim@fluendo.com>
3446
3447         * gst/gsttrashstack.h:
3448         Ooohh. a nasty one! After having a failed pop() from the stack,
3449         it's possible that the stack is empty. In that case, don't
3450         follow the NULL pointer.
3451
3452 2005-04-25  Wim Taymans  <wim@fluendo.com>
3453
3454         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3455         (gst_pad_set_checkgetrange_function),
3456         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3457         (gst_pad_check_pull_range), (gst_pad_pull_range),
3458         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3459         (gst_pad_pause_task), (gst_pad_stop_task):
3460         * gst/gstplugin.c: (gst_plugin_load):
3461         * gst/gstplugin.h:
3462         Remove gst_library_load as it does more harm than good with
3463         the new g_module flags.
3464         Revert bogus caps template check in pad linking, pad caps
3465         are important when linking not the template, which is more
3466         general than the current caps.
3467
3468 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3469
3470         * gst/autoplug/.cvsignore:
3471         * gst/autoplug/Makefile.am:
3472         * gst/autoplug/gstsearchfuncs.c:
3473         * gst/autoplug/gstsearchfuncs.h:
3474         * gst/autoplug/gstspider.c:
3475         * gst/autoplug/gstspider.h:
3476         * gst/autoplug/gstspideridentity.c:
3477         * gst/autoplug/gstspideridentity.h:
3478         * gst/autoplug/spidertest.c:
3479           Die, spider, die.
3480
3481 2005-04-25  Wim Taymans  <wim@fluendo.com>
3482
3483         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3484         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3485         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3486         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3487         * gst/gstpad.h:
3488         Added stubs for unimplemented functions. 
3489
3490 2005-04-24  David Schleef  <ds@schleef.org>
3491
3492         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3493         please fix.
3494
3495 2005-04-24  David Schleef  <ds@schleef.org>
3496
3497         Convert everything from GstAtomicInt to g_atomic_int_*, and
3498         remove gstatomic.
3499         * gst/Makefile.am:
3500         * gst/gstatomic.c:
3501         * gst/gstatomic.h:
3502         * gst/gstatomic_impl.h:
3503         * gst/gstbuffer.c:
3504         * gst/gstcaps.c:
3505         * gst/gstcaps.h:
3506         * gst/gstclock.c:
3507         * gst/gstclock.h:
3508         * gst/gstdata.c:
3509         * gst/gstdata.h:
3510         * gst/gstdata_private.h:
3511         * gst/gstevent.c:
3512         * gst/gstinfo.c:
3513         * gst/gstinfo.h:
3514         * gst/gstmessage.c:
3515         * gst/gstobject.c:
3516         * gst/gstobject.h:
3517         * gst/gststructure.c:
3518         * gst/gststructure.h:
3519         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3520         * gst/gstutils.h:
3521
3522 2005-04-24  David Schleef  <ds@schleef.org>
3523
3524         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3525         make the regressions tests work.  Remove some code that is no
3526         longer true.
3527         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3528         Disable warning for pads without templates.
3529
3530 2005-04-24  David Schleef  <ds@schleef.org>
3531
3532         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3533         functions that handle filtered links.
3534         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3535         removed functions.
3536         * gst/gstutils.c: Fix/remove utility functions that handle
3537         filtered caps.
3538         * gst/gstutils.h:
3539         * gst/gstvalue.c: Add serialization/deserialization of caps
3540         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3541         requires fixing so that the filter caps notation creates
3542         a capsfilter element and sets the filter_caps property.  I
3543         think everyone probably wants to keep the shorthand notation.
3544         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3545         * docs/gst/tmpl/gstpad.sgml:
3546
3547         * gst/elements/gstelements.c: Register capsfilter element.
3548         * gst/Makefile.am: fix spacing
3549         * docs/random/ds/0.9-suggested-changes: random
3550
3551 2005-04-23  David Schleef  <ds@schleef.org>
3552
3553         * gst/elements/Makefile.am:
3554         * gst/elements/gstcapsfilter.c: New element that acts like an
3555         identity, but filters caps.  Will eventually replace filtered
3556         caps in pad linking.
3557         * gst/gstutils.c: (gst_element_create_all_pads): New function
3558         to create all the ALWAYS pads that are registered with an
3559         element class.  This functionality should eventually be
3560         merged in with GstElement initialization.
3561         * gst/gstutils.h:
3562         * testsuite/trigger/README: part of trigger test code that should
3563         have been checked in a long time ago.
3564
3565 2005-04-23  David Schleef  <ds@schleef.org>
3566
3567         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3568         needed with new versions of libtool (nobody will confirm this),
3569         and hard to carry around.
3570         * gst/autoplug/Makefile.am:
3571         * gst/base/Makefile.am:
3572         * gst/elements/Makefile.am:
3573         * gst/indexers/Makefile.am:
3574         * gst/schedulers/Makefile.am:
3575         * libs/gst/bytestream/Makefile.am:
3576         * libs/gst/control/Makefile.am:
3577         * libs/gst/dataprotocol/Makefile.am:
3578         * libs/gst/getbits/Makefile.am:
3579
3580 2005-04-21  Wim Taymans  <wim@fluendo.com>
3581
3582         * docs/design/draft-push-pull.txt:
3583         * docs/design/part-MT-refcounting.txt:
3584         * docs/design/part-TODO.txt:
3585         * docs/design/part-caps.txt:
3586         * docs/design/part-events.txt:
3587         * docs/design/part-gstbus.txt:
3588         * docs/design/part-gstpipeline.txt:
3589         * docs/design/part-messages.txt:
3590         * docs/design/part-push-pull.txt:
3591         * docs/design/part-query.txt:
3592         Some more docs.
3593
3594 2005-04-21  Wim Taymans  <wim@fluendo.com>
3595
3596         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3597         (gst_message_new), (gst_message_new_error),
3598         (gst_message_new_warning), (gst_message_new_tag),
3599         (gst_message_new_state_changed), (gst_message_new_application),
3600         (gst_message_get_structure):
3601         * gst/gstmessage.h:
3602         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3603         (gst_structure_copy_conditional):
3604         Use parent refcount in GstMessage to ensure GstStructure
3605         consistency.
3606         Cleaned up headers a bit.
3607         
3608
3609 2005-04-20  Wim Taymans  <wim@fluendo.com>
3610
3611         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3612         (gst_basesink_pad_getcaps), (gst_basesink_init),
3613         (gst_basesink_chain_unlocked):
3614         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3615         (gst_type_find_helper):
3616         * gst/elements/gsttypefindelement.c:
3617         (gst_type_find_element_have_type), (gst_type_find_element_init),
3618         (stop_typefinding), (gst_type_find_element_handle_event),
3619         (find_suggest), (gst_type_find_element_chain),
3620         (gst_type_find_element_checkgetrange),
3621         (gst_type_find_element_getrange), (do_typefind),
3622         (gst_type_find_element_activate):
3623         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3624         (gst_buffer_default_free), (gst_buffer_default_copy),
3625         (gst_buffer_set_caps):
3626         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3627         (gst_caps_replace):
3628         * gst/gstmessage.c: (gst_message_new),
3629         (gst_message_new_state_changed):
3630         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3631         (gst_pad_set_checkgetrange_function),
3632         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3633         (gst_pad_set_caps), (gst_pad_check_pull_range),
3634         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3635         * gst/gstpad.h:
3636         * gst/gsttypefind.c: (gst_type_find_register):
3637         Make gst_caps_replace() work like other _replace() functions.
3638         Use _caps_replace() where possible.
3639         Make sure _message_new() initialises its field.
3640         Add gst_static_pad_template_get_caps()
3641
3642
3643 2005-04-18  Andy Wingo  <wingo@pobox.com>
3644
3645         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3646         on the peer, not the pad. I think that was a typo. Pass an extra
3647         arg to see if random access is possible. Activate the pads as
3648         PULL_RANGE if possible.
3649
3650         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3651
3652         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3653         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3654         to PROP_....
3655
3656 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3657
3658         * docs/faq/using.xml:
3659           Add note on gstreamer-properties (#154996).
3660
3661 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3662
3663         * docs/random/bbb/optional-properties:
3664           Some analysis on optional properties.
3665
3666 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3667
3668         * docs/gst/tmpl/gstelementfactory.sgml:
3669         * gst/gstelement.h:
3670         * gst/gstelementfactory.c: (gst_element_factory_init),
3671         (gst_element_factory_cleanup), (gst_element_register),
3672         (__gst_element_factory_add_static_pad_template),
3673         (gst_element_factory_get_static_pad_templates),
3674         (gst_element_factory_can_src_caps),
3675         (gst_element_factory_can_sink_caps):
3676         * gst/registries/Makefile.am:
3677         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
3678         (gst_xml_registry_class_init), (gst_xml_registry_init),
3679         (gst_xml_registry_new), (gst_xml_registry_set_property),
3680         (gst_xml_registry_get_property), (get_time), (make_dir),
3681         (gst_xml_registry_get_perms_func),
3682         (plugin_times_older_than_recurse), (plugin_times_older_than),
3683         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
3684         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
3685         (add_to_char_array), (read_string), (read_uint), (read_enum),
3686         (load_pad_template), (load_feature), (load_plugin), (load_paths),
3687         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
3688         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
3689         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
3690         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
3691         (gst_xml_registry_rebuild):
3692         * gst/registries/gstlibxmlregistry.h:
3693         * tools/gst-compprep.c: (main):
3694         * tools/gst-inspect.c: (print_pad_templates_info):
3695         * tools/gst-xmlinspect.c: (print_element_info):
3696           Use libxml2 for registry parsing, use staticpadtemplates in
3697           elementfactories. Makes gst_init() +/- 10x faster.
3698
3699 2005-04-12  Wim Taymans  <wim@fluendo.com>
3700
3701         * gst/base/Makefile.am:
3702         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3703         (gst_basesink_pad_getcaps), (gst_basesink_init),
3704         (gst_basesink_event), (gst_basesink_change_state):
3705         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3706         (gst_basesrc_init), (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):
3713         * gst/base/gsttypefindhelper.c: (helper_find_peek),
3714         (helper_find_suggest), (gst_type_find_helper):
3715         * gst/base/gsttypefindhelper.h:
3716         * gst/elements/Makefile.am:
3717         * gst/elements/gstelements.c:
3718         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3719         (gst_fakesink_get_times), (gst_fakesink_event),
3720         (gst_fakesink_preroll), (gst_fakesink_render):
3721         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3722         (gst_fakesrc_init), (gst_fakesrc_event_handler),
3723         (gst_fakesrc_get_property), (gst_fakesrc_create),
3724         (gst_fakesrc_start), (gst_fakesrc_stop):
3725         * gst/elements/gstfakesrc.h:
3726         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
3727         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3728         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3729         (gst_filesrc_create_read), (gst_filesrc_create),
3730         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
3731         (gst_filesrc_start):
3732         * gst/elements/gsttypefindelement.c:
3733         (gst_type_find_element_have_type), (gst_type_find_element_init),
3734         (start_typefinding), (stop_typefinding), (push_buffer_store),
3735         (gst_type_find_element_handle_event),
3736         (gst_type_find_element_chain),
3737         (gst_type_find_element_checkgetrange),
3738         (gst_type_find_element_getrange), (do_typefind),
3739         (gst_type_find_element_activate),
3740         (gst_type_find_element_change_state):
3741         * gst/elements/gsttypefindelement.h:
3742         * gst/gstpipeline.c: (pipeline_bus_handler):
3743         Added typefind helper.
3744         Small preroll fix in the base sink.
3745         Disable typefind code in basesrc.
3746         Crude port of typefindelement.
3747         Fakesrc cleanups.
3748
3749
3750 2005-04-11  Wim Taymans  <wim@fluendo.com>
3751
3752         * check/gst/gstbus.c: (gstbus_suite):
3753         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
3754         * check/gstcheck.h:
3755           Fix up the timeout so that the test does not fail.
3756
3757 2005-04-06  Wim Taymans  <wim@fluendo.com>
3758
3759         * gst/base/README:
3760         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3761         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
3762         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3763         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3764         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3765         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3766         (gst_basesrc_stop), (gst_basesrc_activate),
3767         (gst_basesrc_change_state), (basesrc_find_peek),
3768         (basesrc_find_suggest), (gst_basesrc_type_find):
3769         * gst/base/gstbasesrc.h:
3770         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
3771         (gst_filesrc_class_init), (gst_filesrc_init),
3772         (gst_filesrc_finalize), (gst_filesrc_set_location),
3773         (gst_filesrc_set_property), (gst_filesrc_get_property),
3774         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3775         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3776         (gst_filesrc_create_read), (gst_filesrc_create),
3777         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
3778         * gst/elements/gstfilesrc.h:
3779         * gst/gstelement.c: (gst_element_get_state_func),
3780         (gst_element_lost_state), (gst_element_pads_activate):
3781         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3782         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3783         (gst_pad_pull_range):
3784         * gst/gstpad.h:
3785         More work on the generic source base class, implement seeking,
3786         query.
3787         Make filesrc extend the base source class.
3788         Added gst_pad_set_checkgetrange_function to GstPad.
3789
3790 2005-04-06  Andy Wingo  <wingo@pobox.com>
3791
3792         * pkgconfig/gstreamer-base.pc.in:
3793         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
3794
3795         * pkgconfig/Makefile.am:
3796         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
3797
3798 2005-04-04  Wim Taymans  <wim@fluendo.com>
3799
3800         * gst/base/Makefile.am:
3801         * gst/base/README:
3802         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3803         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3804         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3805         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
3806         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3807         (gst_basesrc_base_init), (gst_basesrc_class_init),
3808         (gst_basesrc_init), (gst_basesrc_get_formats),
3809         (gst_basesrc_get_query_types), (gst_basesrc_query),
3810         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
3811         (gst_basesrc_set_property), (gst_basesrc_get_property),
3812         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
3813         (gst_basesrc_loop), (gst_basesrc_activate),
3814         (gst_basesrc_change_state):
3815         * gst/base/gstbasesrc.h:
3816         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
3817         (gst_fakesrc_class_init), (gst_fakesrc_init),
3818         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
3819         (gst_fakesrc_get_property), (gst_fakesrc_create):
3820         * gst/elements/gstfakesrc.h:
3821         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
3822         (gst_filesrc_open_file), (gst_filesrc_loop),
3823         (gst_filesrc_activate), (filesrc_find_peek),
3824         (gst_filesrc_type_find):
3825         Made base source class, make fakesrc extend it.
3826         Add comments to basesink class.
3827         Some filesrc cleanup.
3828
3829 2005-03-31  David Schleef  <ds@schleef.org>
3830
3831         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
3832         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
3833         expected to link against libgstreamer.
3834         * gst/base/Makefile.am: link against libgstreamer
3835         * gst/elements/Makefile.am: same
3836
3837 2005-03-31  Andy Wingo  <wingo@pobox.com>
3838
3839         * tests/instantiate/Makefile.am:
3840         * tests/instantiate/caps.c: Add test to test speed of caps copy
3841         and free.
3842
3843         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
3844         GMemChunk to be fair.
3845
3846         * gst/gsttrashstack.h: Remove warning about using the fallback
3847         trash stack implementation, it's still faster than malloc.
3848
3849 2005-03-30  Andy Wingo  <wingo@pobox.com>
3850
3851         * tests/complexity.c: Add a copyright.
3852
3853 2005-03-31  Wim Taymans  <wim@fluendo.com>
3854
3855         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
3856         (gst_base_transform_class_init), (gst_base_transform_init),
3857         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
3858         (gst_base_transform_get_property),
3859         (gst_base_transform_sink_activate),
3860         (gst_base_transform_src_activate),
3861         (gst_base_transform_change_state):
3862         * gst/base/gstbasetransform.h:
3863         * gst/elements/gstidentity.c: (gst_identity_class_init),
3864         (gst_identity_event), (gst_identity_check_perfect),
3865         (gst_identity_transform), (gst_identity_start),
3866         (gst_identity_stop):
3867         Added start/stop methods to transform base class so subclasses 
3868         don't need to deal with state changes even.
3869
3870 2005-03-31  Wim Taymans  <wim@fluendo.com>
3871
3872         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
3873         (gst_event_new_discontinuous), (gst_event_discont_get_value):
3874         * gst/gstevent.h:
3875         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3876         (gst_pad_pull_range):
3877         Added rate to the discont event to prepare for variable speed
3878         and reverse playback.
3879
3880 2005-03-29  David Schleef  <ds@schleef.org>
3881
3882         * configure.ac:
3883         * testsuite/trigger/Makefile.am:
3884         * testsuite/trigger/trigger.c: A little example program to show
3885         how trigger-based elements can work.
3886
3887 2005-03-29  Wim Taymans  <wim@fluendo.com>
3888
3889         * gst/base/Makefile.am:
3890         * gst/base/README:
3891         * gst/base/gstbasesink.c: (gst_basesink_get_type),
3892         (gst_basesink_base_init), (gst_basesink_class_init),
3893         (gst_basesink_pad_getcaps), (gst_basesink_init),
3894         (gst_basesink_activate), (gst_basesink_change_state):
3895         * gst/base/gstbasesink.h:
3896         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
3897         (gst_base_transform_base_init), (gst_base_transform_finalize),
3898         (gst_base_transform_class_init), (gst_base_transform_init),
3899         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
3900         (gst_base_transform_event), (gst_base_transform_getrange),
3901         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
3902         (gst_base_transform_set_property),
3903         (gst_base_transform_get_property),
3904         (gst_base_transform_sink_activate),
3905         (gst_base_transform_src_activate),
3906         (gst_base_transform_change_state):
3907         * gst/base/gstbasetransform.h:
3908         * gst/elements/gstidentity.c: (gst_identity_finalize),
3909         (gst_identity_class_init), (gst_identity_init),
3910         (gst_identity_event), (gst_identity_check_perfect),
3911         (gst_identity_transform), (gst_identity_set_property),
3912         (gst_identity_get_property), (gst_identity_change_state):
3913         * gst/elements/gstidentity.h:
3914         * gst/gstelement.c: (gst_element_get_state_func),
3915         (gst_element_lost_state), (gst_element_pads_activate):
3916         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3917         (gst_pad_check_pull_range), (gst_pad_pull_range):
3918         * gst/gstpad.h:
3919         Simplify pad activation.
3920         Added function to check if pull_range can be performed.
3921         Error out when pulling inactive or flushing pads.
3922         Removed const from refcounted types as it does not make sense.
3923         Simplify pad templates in basesink
3924         Added base class for simple 1-to-1 transforms.
3925         Make identity subclass the base transform.
3926
3927 2005-03-29  Andy Wingo  <wingo@pobox.com>
3928
3929         * docs/libs/gstreamer-libs-overrides.txt: 
3930         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
3931         really don't understand what's going on, but like whatever. I want
3932         green buildbot!
3933
3934         * docs/gst/Makefile.am:
3935         * docs/libs/Makefile.am: Dist the overrides files.
3936
3937         * check/Makefile.am (clean-local): Remove .libs directories.
3938
3939         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
3940         elements to EXTRA_DIST, so po/ files are happy.
3941
3942         * po/POTFILES.in: Er, remove it here.
3943
3944         * po/POTFILES: Remove gstspider.c.
3945
3946         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
3947
3948         * docs/libs/gstreamer-libs-docs.sgml: 
3949         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
3950         bytestream.
3951
3952         * tests/complexity.c (main): Set the length of the preroll queue
3953         on the sinks to prevent a lockup.
3954
3955         * libs/gst/dataprotocol/Makefile.am: 
3956         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
3957         the same as the one in check/gst-libs/gdp.c.
3958
3959         * po/, docs/gst/: Commit automatic changes to docs and po files.
3960
3961         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
3962         the versioned libgstbase.
3963
3964         * check/Makefile.am: Depend on an unversioned gst-register, seems
3965         to make autoconf happier.
3966
3967         * gst/base/Makefile.am: Make libgstbase a versioned lib.
3968
3969 2005-03-28  Wim Taymans  <wim@fluendo.com>
3970
3971         * configure.ac:
3972         * docs/design/part-gstelement.txt:
3973         * docs/design/part-negotiation.txt:
3974         * docs/design/part-preroll.txt:
3975         * docs/design/part-scheduling.txt:
3976         * docs/design/part-states.txt:
3977         * gst/Makefile.am:
3978         * gst/base/Makefile.am:
3979         * gst/base/README:
3980         * gst/base/gstbasesink.c: (gst_basesink_get_template),
3981         (gst_basesink_base_init), (gst_basesink_class_init),
3982         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3983         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3984         (gst_basesink_set_pad_functions),
3985         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
3986         (gst_basesink_set_property), (gst_basesink_get_property),
3987         (gst_base_sink_get_template), (gst_base_sink_get_caps),
3988         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
3989         (gst_basesink_preroll_queue_push),
3990         (gst_basesink_preroll_queue_empty),
3991         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
3992         (gst_basesink_event), (gst_basesink_get_times),
3993         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
3994         (gst_basesink_chain_unlocked), (gst_basesink_chain),
3995         (gst_basesink_loop), (gst_basesink_activate),
3996         (gst_basesink_change_state):
3997         * gst/base/gstbasesink.h:
3998         * gst/elements/Makefile.am:
3999         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4000         (gst_fakesink_class_init), (gst_fakesink_init),
4001         (gst_fakesink_set_property), (gst_fakesink_get_property),
4002         (gst_fakesink_get_times), (gst_fakesink_event),
4003         (gst_fakesink_preroll), (gst_fakesink_render),
4004         (gst_fakesink_change_state):
4005         * gst/elements/gstfakesink.h:
4006         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4007         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
4008         * gst/gstelement.c: (gst_element_add_pad),
4009         (gst_element_get_state_func), (gst_element_abort_state),
4010         (gst_element_commit_state), (gst_element_lost_state),
4011         (gst_element_set_state), (gst_element_pads_activate):
4012         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
4013         * gst/gstpipeline.c: (gst_pipeline_send_event),
4014         (gst_pipeline_change_state):
4015         Added state change code.
4016         Added/updated docs.
4017         Added sink base class, make fakesink extend the base class.
4018         Small cleanups in GstPipeline.
4019
4020 2005-03-26  David Schleef  <ds@schleef.org>
4021
4022         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
4023         is broken and should be implemented in a different library.
4024         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
4025         * gst/gst.h: remove gstcpu.h
4026         * gst/gstcpu.c: remove
4027         * gst/gstcpu.h: remove
4028         * gst/Makefile.am.future: Remove this file.  It's ancient.
4029
4030 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4031
4032         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4033         (gst_bin_send_event):
4034           Add default event/set_manager handlers. The set_manager handler
4035           takes care that the manager is distributed over kids that were
4036           already in the bin before the manager was set. The event handler
4037           is a utility virtual function that sends the event over all sinks,
4038           so that gst_element_send_event (bin, event); has the expected
4039           behaviour.
4040         * gst/gstpad.c: (gst_pad_event_default):
4041           Re-install default event handling for discontinuities, so that
4042           seeking works without requiring hacks in applications or extra
4043           code in sinks.
4044         * gst/gstpipeline.c: (gst_pipeline_class_init),
4045         (gst_pipeline_send_event):
4046           Half hack, half utility: set a pipeline to PAUSED for seek events,
4047           since that is the only way we can guarantee a/v sync. Means that
4048           you can do gst_element_seek (pipeline, method, pos); on a pipeline
4049           and it "just works".
4050
4051 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4052
4053         * gst/gstpipeline.c: (gst_pipeline_use_clock):
4054           Lock/unlock mismatch.
4055
4056 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4057
4058         * docs/faq/gst-uninstalled:
4059           add gst-plugins-base
4060         * docs/gst/Makefile.am:
4061           don't error out until docs are fixed
4062         * docs/gst/gstreamer.types:
4063           remove thread
4064
4065 2005-03-22  Wim Taymans  <wim@fluendo.com>
4066
4067         * check/Makefile.am:
4068         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4069         * gst/gststructure.c: (gst_structure_set_valist),
4070         (gst_structure_copy_conditional):
4071         Activated more tests.
4072         Added message test.
4073         Added G_TYPE_POINTER to GstStructure.
4074         
4075
4076 2005-03-22  Wim Taymans  <wim@fluendo.com>
4077
4078         * docs/design/part-TODO.txt:
4079         * docs/design/part-events.txt:
4080         * docs/design/part-gstbin.txt:
4081         * docs/design/part-gstbus.txt:
4082         * docs/design/part-gstpipeline.txt:
4083         * docs/design/part-messages.txt:
4084         * gst/gstbus.c:
4085         * gst/gstmessage.c:
4086         Docs updates
4087
4088 2005-03-21  Wim Taymans  <wim@fluendo.com>
4089
4090         * gst/gstbus.c: (gst_bus_post):
4091         Fix copy-and-paste error.
4092
4093 2005-03-21  Wim Taymans  <wim@fluendo.com>
4094
4095         * check/Makefile.am:
4096         * gst/Makefile.am:
4097         * gst/elements/Makefile.am:
4098         * gst/elements/gstelements.c:
4099         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4100         (gst_fakesink_event), (gst_fakesink_chain):
4101         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4102         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4103         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4104         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4105         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4106         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4107         (gst_fakesrc_loop), (gst_fakesrc_activate),
4108         (gst_fakesrc_change_state):
4109         * gst/elements/gstfakesrc.h:
4110         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4111         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4112         (gst_filesrc_open_file), (gst_filesrc_loop),
4113         (gst_filesrc_activate), (gst_filesrc_change_state),
4114         (filesrc_find_peek), (filesrc_find_suggest),
4115         (gst_filesrc_type_find):
4116         * gst/elements/gstidentity.c: (gst_identity_finalize),
4117         (gst_identity_class_init), (gst_identity_init),
4118         (gst_identity_proxy_getcaps), (identity_queue_push),
4119         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4120         (gst_identity_getrange), (gst_identity_chain),
4121         (gst_identity_sink_loop), (gst_identity_src_loop),
4122         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4123         (gst_identity_set_property), (gst_identity_get_property),
4124         (gst_identity_change_state):
4125         * gst/elements/gstidentity.h:
4126         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4127         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4128         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4129         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4130         (gst_tee_sink_activate):
4131         * gst/elements/gsttee.h:
4132         * gst/gst.c: (gst_register_core_elements), (init_post):
4133         * gst/gst.h:
4134         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4135         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4136         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4137         (gst_bin_change_state):
4138         * gst/gstbin.h:
4139         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4140         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4141         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4142         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4143         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4144         (bus_watch_callback), (bus_watch_destroy),
4145         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4146         (poll_timeout), (gst_bus_poll):
4147         * gst/gstbus.h:
4148         * gst/gstcaps.h:
4149         * gst/gstdata.h:
4150         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4151         (gst_element_post_message), (gst_element_message_full),
4152         (gst_element_get_state_func), (gst_element_get_state),
4153         (gst_element_abort_state), (gst_element_commit_state),
4154         (gst_element_lost_state), (gst_element_set_state),
4155         (gst_element_pads_activate), (gst_element_change_state),
4156         (gst_element_dispose), (gst_element_set_manager_func),
4157         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4158         (gst_element_set_manager), (gst_element_get_manager),
4159         (gst_element_set_bus), (gst_element_get_bus),
4160         (gst_element_set_scheduler), (gst_element_get_scheduler):
4161         * gst/gstelement.h:
4162         * gst/gstevent.c: (gst_event_new_segment_seek),
4163         (gst_event_new_flush):
4164         * gst/gstevent.h:
4165         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4166         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4167         (gst_message_new_eos), (gst_message_new_error),
4168         (gst_message_new_warning), (gst_message_new_tag),
4169         (gst_message_new_state_changed), (gst_message_new_application),
4170         (gst_message_get_structure), (gst_message_parse_tag),
4171         (gst_message_parse_state_changed), (gst_message_parse_error),
4172         (gst_message_parse_warning):
4173         * gst/gstmessage.h:
4174         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4175         (gst_real_pad_set_property), (gst_pad_set_active),
4176         (gst_pad_is_active), (gst_pad_set_blocked_async),
4177         (gst_pad_set_blocked), (gst_pad_is_blocked),
4178         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4179         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4180         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4181         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4182         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4183         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4184         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4185         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4186         (gst_pad_set_caps), (gst_pad_configure_sink),
4187         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4188         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4189         (gst_real_pad_dispose), (gst_real_pad_finalize),
4190         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4191         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4192         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4193         * gst/gstpad.h:
4194         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4195         (pipeline_bus_handler), (gst_pipeline_change_state),
4196         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4197         * gst/gstpipeline.h:
4198         * gst/gstprobe.h:
4199         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4200         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4201         (gst_queue_link_src), (gst_queue_bufferalloc),
4202         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4203         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4204         (gst_queue_loop), (gst_queue_handle_src_event),
4205         (gst_queue_handle_src_query), (gst_queue_src_activate),
4206         (gst_queue_change_state):
4207         * gst/gstqueue.h:
4208         * gst/gstscheduler.c: (gst_scheduler_init),
4209         (gst_scheduler_dispose), (gst_scheduler_create_task),
4210         (gst_scheduler_factory_create):
4211         * gst/gstscheduler.h:
4212         * gst/gststructure.c: (gst_structure_get_type),
4213         (gst_structure_copy_conditional):
4214         * gst/gststructure.h:
4215         * gst/gsttaginterface.h:
4216         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4217         (gst_task_init), (gst_task_dispose), (gst_task_create),
4218         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4219         (gst_task_pause):
4220         * gst/gsttask.h:
4221         * gst/gstthread.c:
4222         * gst/gstthread.h:
4223         * gst/gsttypes.h:
4224         * gst/schedulers/Makefile.am:
4225         * gst/schedulers/cothreads_compat.h:
4226         * gst/schedulers/entryscheduler.c:
4227         * gst/schedulers/faircothreads.c:
4228         * gst/schedulers/faircothreads.h:
4229         * gst/schedulers/fairscheduler.c:
4230         * gst/schedulers/gstbasicscheduler.c:
4231         * gst/schedulers/gstoptimalscheduler.c:
4232         * gst/schedulers/gthread-cothreads.h:
4233         * gst/schedulers/threadscheduler.c:
4234         (gst_thread_scheduler_task_get_type),
4235         (gst_thread_scheduler_task_class_init),
4236         (gst_thread_scheduler_task_init),
4237         (gst_thread_scheduler_task_start),
4238         (gst_thread_scheduler_task_stop),
4239         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4240         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4241         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4242         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4243         (plugin_init):
4244         * libs/gst/Makefile.am:
4245         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4246         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4247         (gst_file_pad_parent_set):
4248         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4249         (gst_dp_event_from_packet):
4250         * tests/complexity.c: (main):
4251         * tests/mass_elements.c: (main):
4252         * testsuite/states/locked.c: (message_received), (main):
4253         * testsuite/states/parent.c: (main):
4254         * tools/gst-inspect.c: (print_element_flag_info),
4255         (print_implementation_info), (print_pad_info):
4256         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4257         (main):
4258         * tools/gst-md5sum.c: (event_loop), (main):
4259         * tools/gst-typefind.c: (main):
4260         * tools/gst-xmlinspect.c: (print_element_info):
4261         Next big merge.
4262         Added GstBus for mainloop integration.
4263         Added GstMessage for sending notifications on the bus.
4264         Added GstTask as an abstraction for pipeline entry points.
4265         Removed GstThread.
4266         Removed Schedulers.
4267         Simplified GstQueue for multithreaded core.
4268         Made _link threadsafe, removed old capsnego.
4269         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4270         Added pad blocking functions.
4271         Reworked scheduling functions in GstPad to prepare for
4272         scheduling updates soon.
4273         Moved events out of data stream.
4274         Simplified GstEvent types.
4275         Added return values to push/pull.
4276         Removed clocking from GstElement.
4277         Added prototypes for state change function for next merge.
4278         Removed iterate from bins and state change management.
4279         Fixed some elements, disabled others for now.
4280         Fixed -inspect and -launch.
4281         Added check for GstBus.
4282
4283 2005-03-10  Wim Taymans  <wim@fluendo.com>
4284
4285         * docs/design/part-MT-refcounting.txt:
4286         * docs/design/part-clocks.txt:
4287         * docs/design/part-gstelement.txt:
4288         * docs/design/part-gstobject.txt:
4289         * docs/design/part-standards.txt:
4290         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4291         (gst_bin_remove_func), (gst_bin_remove):
4292         * gst/gstbin.h:
4293         * gst/gstbuffer.c:
4294         * gst/gstcaps.h:
4295         * testsuite/clock/clock1.c: (main):
4296         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4297         (main):
4298         * testsuite/dlopen/loadgst.c: (do_test):
4299         * testsuite/refcounting/bin.c: (add_remove_test1),
4300         (add_remove_test2), (main):
4301         * testsuite/refcounting/element.c: (main):
4302         * testsuite/refcounting/element_pad.c: (main):
4303         * testsuite/refcounting/pad.c: (main):
4304         * tools/gst-launch.c: (sigint_handler_sighandler):
4305         * tools/gst-typefind.c: (main):
4306         Doc updates.
4307         Added doc about clock.
4308         removed gst_bin_iterate_recurse_up(), marked methods
4309         for removal.
4310         Fix more testsuites.
4311
4312 2005-03-09  Wim Taymans  <wim@fluendo.com>
4313
4314         * gst/gstpad.c: (gst_pad_get_direction),
4315         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4316         (gst_pad_collect_valist):
4317         * testsuite/bins/interface.c: (main):
4318         * testsuite/caps/audioscale.c: (test_caps):
4319         * testsuite/caps/caps.c: (test1), (test2), (test3):
4320         * testsuite/caps/deserialize.c: (main):
4321         * testsuite/caps/enumcaps.c: (main):
4322         * testsuite/caps/filtercaps.c: (main):
4323         * testsuite/caps/intersect2.c: (main):
4324         * testsuite/caps/random.c: (main):
4325         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4326         * testsuite/caps/sets.c: (check_caps):
4327         * testsuite/caps/simplify.c: (check_caps), (main):
4328         * testsuite/caps/subtract.c: (check_caps):
4329         Fix _pad_get_direction wrt ghostpads.
4330         Fix caps testsuite.
4331
4332 2005-03-09  Wim Taymans  <wim@fluendo.com>
4333
4334         * check/Makefile.am:
4335         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4336         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4337         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4338         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4339         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4340         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4341         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4342         (bin_element_is_sink), (gst_bin_iterate_sinks),
4343         (gst_bin_iterate_all_by_interface):
4344         * gst/gstbin.h:
4345         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4346         (gst_element_change_state), (gst_element_dispose),
4347         (gst_element_finalize), (gst_element_set_loop_function):
4348         * gst/gstelement.h:
4349         * gst/gstiterator.c: (find_custom_fold_func):
4350         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4351         (gst_pad_collectv), (gst_pad_collect_valist),
4352         (gst_pad_template_new):
4353         * gst/gstpipeline.c: (gst_pipeline_class_init),
4354         (gst_pipeline_dispose), (gst_pipeline_set_property),
4355         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4356         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4357         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4358         * gst/gstutils.h:
4359         * gst/schedulers/entryscheduler.c:
4360         * gst/schedulers/gstbasicscheduler.c:
4361         (gst_basic_scheduler_cothreaded_chain),
4362         (gst_basic_scheduler_chain_add_element):
4363         * testsuite/bins/interface.c: (main):
4364         Added GstBin test.
4365         Added GstSystemClock test.
4366         Implemented clock distribution code in GstBin.
4367         Implemented iterate sinks method for future use.
4368         Rearranged gstelement.h
4369         Fix GstIterator comparison bug.
4370         Moved some code to GstPipeline, mostly clocking related.
4371
4372 2005-03-09  Wim Taymans  <wim@fluendo.com>
4373
4374         * configure.ac:
4375         * gst/gst_private.h:
4376         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4377         (gst_bin_remove_func), (gst_bin_remove),
4378         (gst_bin_get_by_name_recurse_up):
4379         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4380         (gst_clock_id_compare_func), (gst_clock_id_wait),
4381         (gst_clock_id_wait_async), (gst_clock_init),
4382         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4383         * gst/gstelement.h:
4384         * gst/gstinfo.c: (_gst_debug_init):
4385         * gst/gstobject.h:
4386         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4387         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4388         * gst/gstpad.h:
4389         Bump version number, we're now 0.9.0
4390         Add future debugging category.
4391         Fix NULL _unref() in _get_by_name_recurse_up
4392         Rearrange gstpad.h.
4393         Update some docs.
4394
4395 2005-03-08  Wim Taymans  <wim@fluendo.com>
4396
4397         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4398         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4399         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4400         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4401         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4402         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4403         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4404         * gst/elements/gstidentity.c: (gst_identity_class_init):
4405         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4406         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4407         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4408         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4409         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4410         (gst_tee_link):
4411         * gst/gstelement.c: (gst_element_class_init),
4412         (gst_element_base_class_init), (gst_element_init),
4413         (gst_element_get_random_pad), (gst_element_wait_state_change),
4414         (gst_element_change_state), (gst_element_dispose),
4415         (gst_element_finalize), (gst_element_set_loop_function):
4416         * gst/gstelement.h:
4417         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4418         * gst/gstthread.c: (gst_thread_class_init),
4419         (gst_thread_release_children_locks), (gst_thread_change_state):
4420         * gst/schedulers/gstbasicscheduler.c:
4421         (gst_basic_scheduler_loopfunc_wrapper),
4422         (gst_basic_scheduler_chain_wrapper),
4423         (gst_basic_scheduler_src_wrapper),
4424         (gst_basic_scheduler_remove_element):
4425         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4426         Remove threadsafe properties. Fix elements because GObject
4427         complains when installing a property before declaring a
4428         set/get_property handler.
4429         Rearrange gstelement.h file, use STATE macros for state locks.
4430         Free mutexes in the finalize method instead of dispose.
4431
4432 2005-03-08  Wim Taymans  <wim@fluendo.com>
4433
4434         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4435         * gst/gstthread.c: (gst_thread_release_children_locks):
4436         Added parentage check.
4437         Fix build og GstThread again.
4438
4439 2005-03-08  Wim Taymans  <wim@fluendo.com>
4440
4441         * docs/design/part-MT-refcounting.txt:
4442         * docs/design/part-conventions.txt:
4443         * docs/design/part-gstobject.txt:
4444         * docs/design/part-relations.txt:
4445         * docs/design/part-standards.txt:
4446         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4447         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4448         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4449         (gst_bin_iterate_all_by_interface):
4450         * gst/gstbuffer.h:
4451         * gst/gstclock.h:
4452         * gst/gstelement.c: (gst_element_class_init),
4453         (gst_element_change_state), (gst_element_set_loop_function):
4454         * gst/gstelement.h:
4455         * gst/gstiterator.c:
4456         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4457         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4458         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4459         (gst_object_set_parent), (gst_object_unparent),
4460         (gst_object_check_uniqueness):
4461         * gst/gstobject.h:
4462         Docs updates, clean up some headers.
4463
4464 2005-03-07  Wim Taymans  <wim@fluendo.com>
4465
4466         * check/.cvsignore:
4467         * check/Makefile.am:
4468         * check/gst-libs/.cvsignore:
4469         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4470         * check/gst/.cvsignore:
4471         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4472         (START_TEST), (gstbus_suite), (main):
4473         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4474         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4475         (gst_data_suite), (main):
4476         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4477         (add_fold_func), (gstiterator_suite), (main):
4478         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4479         (thread_name_object), (thread_name_object_default),
4480         (gst_object_name_compare), (gst_object_suite), (main):
4481         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4482         (gst_pad_suite), (main):
4483         * check/gstcheck.c: (gst_check_log_message_func),
4484         (gst_check_log_critical_func), (gst_check_init):
4485         * check/gstcheck.h:
4486         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4487         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4488         Added checks.
4489
4490 2005-03-07  Wim Taymans  <wim@fluendo.com>
4491
4492         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4493         (gst_list_iterator_next), (gst_list_iterator_resync),
4494         (gst_list_iterator_free), (gst_iterator_new_list),
4495         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4496         (gst_iterator_free), (gst_iterator_push), (filter_next),
4497         (filter_resync), (filter_uninit), (filter_free),
4498         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4499         (gst_iterator_foreach), (find_custom_fold_func),
4500         (gst_iterator_find_custom):
4501         * gst/gstiterator.h:
4502         Added missing files.
4503
4504 2005-03-07  Wim Taymans  <wim@fluendo.com>
4505
4506         * Makefile.am:
4507         * configure.ac:
4508         * docs/design/part-MT-refcounting.txt:
4509         * docs/design/part-conventions.txt:
4510         * docs/design/part-gstobject.txt:
4511         * docs/design/part-relations.txt:
4512         * examples/mixer/mixer.c: (main):
4513         * examples/thread/thread.c: (eos), (main):
4514         * gst/Makefile.am:
4515         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4516         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4517         (gst_spider_plug_from_srcpad):
4518         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4519         (gst_spider_identity_change_state),
4520         (gst_spider_identity_sink_loop_type_finding):
4521         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4522         * gst/elements/gstidentity.c: (gst_identity_init):
4523         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4524         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4525         * gst/elements/gsttypefindelement.c: (free_entry):
4526         * gst/gst.c:
4527         * gst/gst.h:
4528         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4529         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4530         (gst_bin_set_index), (gst_bin_set_element_sched),
4531         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4532         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4533         (gst_bin_iterate_elements), (iterate_child_recurse),
4534         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4535         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4536         (compare_interface), (gst_bin_get_by_interface),
4537         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4538         * gst/gstbin.h:
4539         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4540         (gst_buffer_default_free), (gst_buffer_default_copy),
4541         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4542         (gst_buffer_create_sub):
4543         * gst/gstbuffer.h:
4544         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4545         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4546         (gst_caps_unref), (gst_static_caps_get),
4547         (gst_caps_remove_and_get_structure), (gst_caps_append),
4548         (gst_caps_append_structure), (gst_caps_remove_structure),
4549         (gst_caps_copy_nth), (gst_caps_set_simple),
4550         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4551         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4552         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4553         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4554         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4555         (gst_caps_structure_figure_out_union),
4556         (gst_caps_switch_structures), (gst_caps_do_simplify),
4557         (gst_caps_replace), (gst_caps_from_string),
4558         (gst_caps_copy_conditional):
4559         * gst/gstcaps.h:
4560         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4561         (_gst_clock_id_free), (gst_clock_id_unref),
4562         (gst_clock_id_compare_func), (gst_clock_id_wait),
4563         (gst_clock_id_wait_async), (gst_clock_class_init),
4564         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4565         (gst_clock_get_time), (gst_clock_set_time_adjust),
4566         (gst_clock_set_property), (gst_clock_get_property):
4567         * gst/gstclock.h:
4568         * gst/gstcompat.h:
4569         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4570         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4571         * gst/gstdata.h:
4572         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4573         (gst_element_requires_clock), (gst_element_provides_clock),
4574         (gst_element_set_clock), (gst_element_clock_wait),
4575         (gst_element_wait), (gst_element_set_time_delay),
4576         (gst_element_is_indexable), (gst_element_add_pad),
4577         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4578         (pad_compare_name), (gst_element_get_static_pad),
4579         (gst_element_request_pad), (gst_element_get_request_pad),
4580         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4581         (gst_element_class_get_pad_template_list),
4582         (gst_element_class_get_pad_template), (gst_element_error_func),
4583         (gst_element_get_random_pad), (gst_element_get_event_masks),
4584         (gst_element_send_event), (gst_element_seek),
4585         (gst_element_get_query_types), (gst_element_query),
4586         (gst_element_get_formats), (gst_element_convert),
4587         (gst_element_is_locked_state), (gst_element_set_locked_state),
4588         (gst_element_sync_state_with_parent), (gst_element_change_state),
4589         (gst_element_finalize), (gst_element_yield),
4590         (gst_element_interrupt), (gst_element_set_scheduler),
4591         (gst_element_get_scheduler), (gst_element_set_loop_function):
4592         * gst/gstelement.h:
4593         * gst/gstevent.h:
4594         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4595         (gst_format_get_by_nick), (gst_format_get_details),
4596         (gst_format_iterate_definitions):
4597         * gst/gstformat.h:
4598         * gst/gstindex.c: (gst_index_gtype_resolver):
4599         * gst/gstinfo.c:
4600         * gst/gstinfo.h:
4601         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4602         (gst_mem_chunk_free):
4603         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4604         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4605         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4606         (gst_object_dispatch_properties_changed),
4607         (gst_object_set_name_default), (gst_object_set_name),
4608         (gst_object_get_name), (gst_object_set_name_prefix),
4609         (gst_object_get_name_prefix), (gst_object_set_parent),
4610         (gst_object_get_parent), (gst_object_unparent),
4611         (gst_object_check_uniqueness), (gst_object_save_thyself),
4612         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4613         (gst_object_set_property), (gst_object_get_property),
4614         (gst_object_get_path_string):
4615         * gst/gstobject.h:
4616         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4617         (gst_real_pad_init), (gst_real_pad_get_property),
4618         (gst_pad_custom_new), (gst_pad_get_direction),
4619         (gst_pad_set_active), (gst_pad_is_active),
4620         (gst_pad_set_event_function), (gst_pad_is_linked),
4621         (gst_pad_link_free), (gst_pad_link_intersect),
4622         (gst_pad_link_fixate), (gst_pad_set_caps),
4623         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4624         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4625         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4626         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4627         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4628         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4629         (gst_pad_realize), (gst_pad_get_allowed_caps),
4630         (gst_real_pad_dispose), (gst_real_pad_finalize),
4631         (gst_pad_collectv), (gst_pad_collect_valist),
4632         (gst_pad_template_dispose), (gst_pad_template_new),
4633         (gst_pad_get_internal_links):
4634         * gst/gstpad.h:
4635         * gst/gstpipeline.c: (gst_pipeline_dispose),
4636         (gst_pipeline_change_state):
4637         * gst/gstpipeline.h:
4638         * gst/gstplugin.c:
4639         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4640         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4641         * gst/gstpluginfeature.h:
4642         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4643         * gst/gstquery.c: (_gst_query_type_initialize),
4644         (gst_query_type_register), (gst_query_type_get_by_nick),
4645         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4646         * gst/gstquery.h:
4647         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4648         * gst/gstscheduler.c: (gst_scheduler_add_element),
4649         (gst_scheduler_factory_create):
4650         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4651         (gst_structure_free), (gst_structure_set_name),
4652         (gst_structure_id_set_value), (gst_structure_set_value),
4653         (gst_structure_set_valist), (gst_structure_remove_field),
4654         (gst_structure_remove_fields),
4655         (gst_structure_remove_fields_valist),
4656         (gst_structure_remove_all_fields), (gst_structure_foreach),
4657         (gst_structure_map_in_place),
4658         (gst_caps_structure_fixate_field_nearest_int),
4659         (gst_caps_structure_fixate_field_nearest_double):
4660         * gst/gststructure.h:
4661         * gst/gstsystemclock.c: (gst_system_clock_class_init),
4662         (gst_system_clock_init), (gst_system_clock_dispose),
4663         (gst_system_clock_async_thread),
4664         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
4665         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
4666         * gst/gstsystemclock.h:
4667         * gst/gsttag.c: (gst_tag_list_add_value_internal),
4668         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
4669         * gst/gsttaginterface.c:
4670         * gst/gstthread.c: (gst_thread_dispose),
4671         (gst_thread_release_children_locks), (gst_thread_change_state),
4672         (gst_thread_main_loop):
4673         * gst/gsttrashstack.h:
4674         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
4675         * gst/gsttypes.h:
4676         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4677         (gst_element_request_pad), (gst_element_get_pad_from_template),
4678         (gst_element_request_compatible_pad),
4679         (gst_element_get_compatible_pad_filtered),
4680         (gst_element_get_compatible_pad), (gst_element_state_get_name),
4681         (gst_element_link_pads_filtered), (gst_element_link_filtered),
4682         (gst_element_link_many), (gst_element_link),
4683         (gst_element_link_pads), (gst_element_unlink_pads),
4684         (gst_element_unlink_many), (gst_element_unlink),
4685         (gst_pad_can_link_filtered), (gst_pad_can_link),
4686         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
4687         (gst_object_default_error), (gst_bin_add_many),
4688         (gst_bin_remove_many), (gst_element_populate_std_props),
4689         (gst_element_class_install_std_props), (gst_buffer_merge),
4690         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
4691         (link_fold_func), (gst_pad_proxy_setcaps):
4692         * gst/gstutils.h:
4693         * gst/gstvalue.c: (gst_value_deserialize_string):
4694         * gst/parse/grammar.y:
4695         * gst/schedulers/gstbasicscheduler.c:
4696         (gst_basic_scheduler_cothreaded_chain),
4697         (gst_basic_scheduler_chain_recursive_add),
4698         (gst_basic_scheduler_pad_link):
4699         * gst/schedulers/gstoptimalscheduler.c:
4700         (get_group_schedule_function),
4701         (gst_opt_scheduler_state_transition),
4702         (gst_opt_scheduler_add_element), (element_get_reachables_func):
4703         * libs/gst/bytestream/bytestream.c:
4704         * libs/gst/dataprotocol/dataprotocol.c:
4705         (gst_dp_header_from_buffer):
4706         * po/nb.po:
4707         * po/ru.po:
4708         * tests/threadstate/threadstate2.c: (eos):
4709         * tools/gst-compprep.c: (main):
4710         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
4711         (print_pad_info), (print_children_info):
4712         * tools/gst-launch.c: (idle_func), (main):
4713         * tools/gst-md5sum.c: (idle_func), (main):
4714         * tools/gst-xmlinspect.c: (print_element_info):
4715         First THREADED backport attempt, focusing on adding locks and
4716         making sure the API is threadsafe. Needs more work. More docs
4717         follow this week.
4718
4719 2005-02-24  Andy Wingo  <wingo@pobox.com>
4720
4721         * tests/bench-complexity.scm:
4722         * tests/complexity.gnuplot: New files, good for running complexity
4723         benchmarks.
4724
4725         * tests/Makefile.am:
4726         * tests/complexity.c: New test, sets up N elements, at each level
4727         teeing into M streams per element. Eeeenteresting.
4728
4729         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
4730         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
4731         running bench-mass_elements.scm.
4732
4733         * tests/bench-mass_elements.scm: New script, runs mass_elements
4734         for various numbers of identities, outputting the results to a
4735         file. Requires guile 1.6. Just for testing.
4736
4737 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4738
4739         * gst/schedulers/fairscheduler.c:
4740           compile with debug disabled
4741
4742 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
4743
4744         * configure.ac:
4745           hunting season on 0.9 is now OPEN
4746
4747 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
4748
4749         * docs/libs/tmpl/gstcontrol.sgml:
4750         * docs/libs/tmpl/gstdparam.sgml:
4751         * docs/libs/tmpl/gstdplinint.sgml:
4752         * docs/libs/tmpl/gstdpman.sgml:
4753         * docs/libs/tmpl/gstdpsmooth.sgml:
4754         * docs/libs/tmpl/gstunitconvert.sgml:
4755           more docs for the state of dparams
4756
4757 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4758
4759         * gst/gstelementfactory.c: (gst_element_factory_create):
4760         * gst/gstobject.c: (gst_object_init),
4761         (gst_object_set_name_default), (gst_object_set_name):
4762           name objects by default, not in gst_element_factory_create. Allows
4763           using elements created with g_object_new. (fixes #167283)
4764
4765 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4766
4767         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
4768           make the time that debugging functions print relative to when
4769           gst_init was called
4770
4771 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
4772
4773         * gst/gsttaginterface.c:
4774           Fix inline docs: tag setter vararg functions are NULL-terminated,
4775           GST_TAG_INVALID doesn't exist any more.
4776
4777 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4778
4779         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
4780         Allocate the 1 byte more memory that was forgotten!!!!!
4781         fixes memory corruption on 64bit platforms
4782
4783 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
4784
4785         * docs/pwg/building-pads.xml:
4786         * docs/pwg/intro-basics.xml:
4787           fixed a few typos, relabeled introductionary list of types
4788         * docs/random/ensonic/dparams.txt:
4789           more notes abut dparam changes
4790         * libs/gst/control/dparam.c: (gst_dparam_attach):
4791         * libs/gst/control/dparammanager.c:
4792         * libs/gst/control/dparammanager.h:
4793           - many comments and notes on dparam implementation
4794           - new dparams are were not initialized to the default value
4795             from param spec
4796
4797 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
4798
4799         submitted by: Peter Astakhov
4800
4801         * po/LINGUAS:
4802         * po/ru.po:
4803           adding Russian translation
4804
4805 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4806
4807         * configure.ac:
4808         * docs/gst/Makefile.am:
4809         * docs/libs/Makefile.am:
4810           make sure popt is added to gtk-doc flags.  Fixes #147782.
4811
4812 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
4813
4814         * docs/faq/using.xml:
4815           Fix typo in FAQ (artssink => artsdsink)
4816
4817 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4818
4819         * tools/gst-launch.1.in:
4820           Fix typo (#166699).
4821
4822 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
4823
4824         * docs/faq/using.xml:
4825           Add -v argument to fakesrc/fakesink gst-launch line,
4826           so that the promised output will actually show up.
4827
4828 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4829
4830         * gst/gstthread.c: (gst_thread_change_state):
4831           Implement state-change error handling (#166073).
4832
4833 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4834
4835         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4836           Release interrupt after handling (#166250).
4837
4838 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4839
4840         * configure.ac:
4841           back to HEAD
4842
4843 === release 0.8.9 ===
4844
4845 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4846
4847         * NEWS:
4848         * RELEASE:
4849         * configure.ac:
4850           releasing 0.8.9, "Like Eating Glass"
4851
4852 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4853
4854         submitted by: Clytie Siddall
4855
4856         * po/vi.po: Added Vietnamese translation
4857
4858 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4859
4860         patch by: Tim Philipp-Müller
4861
4862         * configure.ac:
4863         * gst/gstpad.c:
4864           unref data when probe function returns FALSE.  Fixes #166362
4865
4866 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4867
4868         * gst/gst.c: (gst_init_get_popt_table):
4869           Fix typo (#166269).
4870
4871 2005-02-04  Andy Wingo  <wingo@pobox.com>
4872
4873         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
4874         the debugging on whether the caps are compatible.
4875
4876 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4877
4878         * docs/manual/basics-elements.xml:
4879           Fix two typos.
4880
4881 2005-02-02  Wim Taymans  <wim@fluendo.com>
4882
4883         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
4884         (schedule_chain), (get_invalid_call), (chain_invalid_call),
4885         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
4886         Remove some FIXMEs after analysing and commenting why they
4887         are not issues.
4888
4889 2005-02-02  Wim Taymans  <wim@fluendo.com>
4890
4891         * gst/schedulers/gstoptimalscheduler.c:
4892         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
4893         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
4894         (get_invalid_call), (chain_invalid_call),
4895         (get_group_schedule_function), (loop_group_schedule_function),
4896         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
4897         (gst_opt_scheduler_state_transition),
4898         (gst_opt_scheduler_add_element),
4899         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
4900         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
4901         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
4902         (gst_opt_scheduler_show):
4903         Added lock to protect scheduler data structures.
4904
4905 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4906
4907         * testsuite/threads/threadi.c: (cb_data):
4908           Fix buglet in test.
4909
4910 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4911
4912         * testsuite/threads/Makefile.am:
4913         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
4914           On Wim's request, split the test in three separately-compiled
4915           tests that each test a very specific bug. Two of them still fail,
4916           will create bugs for those. threadi.c indicates why they fail.
4917
4918 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4919
4920         * gst/schedulers/gstoptimalscheduler.c:
4921         (get_group_schedule_function):
4922           Try to work with the threading mess that queue_link is.
4923
4924 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4925
4926         * gst/gstbin.c: (gst_bin_remove_func):
4927           Explicitely make an element release locks in a group when being
4928           remove from a bin.
4929         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4930           If there's no scheduler, always return immediately (similar to
4931           gst_element_interrupt).
4932
4933 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4934
4935         * gst/gstbin.c: (gst_bin_child_state_change_func):
4936           Remove a piece of code that could never be reached.
4937         * docs/gst/gstreamer-sections.txt:
4938         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
4939         (gst_pad_call_get_function):
4940         * gst/gstpad.h:
4941         * testsuite/pad/Makefile.am:
4942           Fix #150546, enable tests.
4943
4944 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4945
4946         * docs/pwg/advanced-types.xml:
4947           Fix description for buffer-frames=0.
4948         * docs/gst/tmpl/gstbin.sgml:
4949         * gst/gstbin.c: (gst_bin_child_state_change_func),
4950         (gst_bin_change_state), (gst_bin_change_state_norecurse):
4951         * gst/gstbin.h:
4952         * testsuite/threads/Makefile.am:
4953         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
4954         (cb_state), (cb_play), (main):
4955           Fix non-recursive state changes to *really* change the state
4956           of the object, and not just call parent_class->state_change.
4957           Fix a lot of lockups caused by this. Fixes #132775. Add test
4958           for the problem. Also enable test to show #142588 (fixed).
4959         * gst/gstthread.c: (gst_thread_change_state),
4960         (gst_thread_child_state_change):
4961           Don't exit the thread if we go to NULL and are inside thread
4962           context. Instead, return control to the main thread context
4963           and exit from there.
4964         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
4965           Don't unset virtual functions, since those may still be used.
4966           That's not necessarily correct, but suffices for now.
4967         * configure.ac:
4968         * testsuite/Makefile.am:
4969         * testsuite/pad/Makefile.am:
4970         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
4971         (gst_test_sink_base_init), (gst_test_sink_chain),
4972         (gst_test_sink_init), (main):
4973         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
4974         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
4975         (main):
4976         * testsuite/pad/link.c: (gst_test_element_class_init),
4977         (gst_test_element_base_init), (gst_test_src_get),
4978         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
4979         (gst_test_filter_loop), (gst_test_filter_init),
4980         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
4981         (cb_error), (main):
4982           Add tests to show #150546. Pass, but should fail (currently
4983           disabled from the testsuite).
4984         * gst/gstscheduler.c: (gst_scheduler_dispose):
4985           Dereference child schedulers on dispose (#94464).
4986         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
4987           Fix typo.
4988         * testsuite/threads/thread.c: (main):
4989           Add more debug.
4990
4991 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4992
4993         * gst/gstpad.c: (gst_pad_push):
4994           Oops, revert previous commit, broke testsuite...
4995
4996 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4997
4998         * gst/gstpad.c: (gst_pad_push):
4999           Add check that the pad on which the push is performed is not a
5000           get-based pad (#150546).
5001
5002 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5003
5004         * gst/elements/gsttypefindelement.c:
5005         (gst_type_find_element_handle_event):
5006           Fix buffer pushing if stream EOSes during typefinding.
5007
5008 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
5009
5010         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5011
5012         * gst/gstvalue.c: (gst_string_wrap):
5013           Allow NULL-strings as argument (#165365).
5014
5015 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
5016
5017         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5018
5019         * gst/schedulers/faircothreads.c:
5020         (gst_fair_scheduler_cothread_queue_show):
5021           Fix build without debug enabled.
5022
5023 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
5024
5025         * docs/gst/gstreamer-sections.txt:
5026         * docs/libs/gstreamer-libs-docs.sgml:
5027         * docs/libs/gstreamer-libs-sections.txt:
5028         * docs/libs/tmpl/gstcontrol.sgml:
5029         * docs/libs/tmpl/gstdparam.sgml:
5030         * docs/libs/tmpl/gstdplinint.sgml:
5031         * docs/libs/tmpl/gstdpman.sgml:
5032         * docs/libs/tmpl/gstdpsmooth.sgml:
5033         * docs/libs/tmpl/gstputbits.sgml:
5034         * docs/libs/tmpl/gstunitconvert.sgml:
5035         * libs/gst/control/dparam.c:
5036         * libs/gst/control/dparam.h:
5037         * libs/gst/control/dparammanager.c:
5038         (gst_dpman_add_required_dparam_callback),
5039         (gst_dpman_add_required_dparam_direct),
5040         (gst_dpman_add_required_dparam_array),
5041         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
5042         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
5043         (gst_dpman_get_manager)
5044           restructured DParam docs
5045
5046 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
5047
5048         * gst-element-check.m4:
5049           Only check for gst-inspect if we haven't already
5050           found it in previous element check runs
5051
5052 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
5053
5054         * docs/gst/Makefile.am:
5055         * docs/libs/Makefile.am:
5056           fixed install rules to treat style.css as optional
5057
5058 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5059
5060         * docs/gst/Makefile.am:
5061         * docs/libs/Makefile.am:
5062           install style.css along with docs
5063         * docs/gst/tmpl/gstbin.sgml:
5064         * docs/gst/tmpl/gstclock.sgml:
5065         * docs/gst/tmpl/gstdata.sgml:
5066         * docs/gst/tmpl/gstelement.sgml:
5067         * gst/gstbin.h:
5068         * gst/gstelement.c: (gst_element_class_init):
5069         * gst/gstelement.h:
5070           fixing incomplete docs
5071
5072 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5073
5074         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5075           Don't unref seek event twice when fflush() fails
5076           
5077 2005-01-22  David Schleef  <ds@schleef.org>
5078
5079         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5080
5081 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5082
5083         * docs/gst/Makefile.am:
5084         * docs/libs/Makefile.am:
5085           added params for deprecation guards
5086         * gst/gst.c:
5087         * gst/gst.h:
5088         * gst/gsterror.c: (_gst_resource_errors_init),
5089         (_gst_stream_errors_init):
5090         * gst/gsterror.h:
5091           documented some more enums
5092
5093 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5094         * gst/autoplug/gstspideridentity.c:
5095         Cosmetic fix - spider_find_peek should be static
5096         * gst/parse/parse.l:
5097         Applying fix for #164261
5098
5099 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5100
5101         * docs/gst/gstreamer-sections.txt:
5102         * docs/gst/tmpl/gstplugin.sgml:
5103         * docs/libs/gstreamer-libs-sections.txt:
5104         * docs/libs/tmpl/gstcontrol.sgml:
5105         * gst/gstbuffer.h:
5106         * gst/gsttag.h:
5107         * gst/gstvalue.c:
5108           added docs for the TAG defines
5109
5110 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5111
5112         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5113           Only unref entry if there is an entry.
5114
5115 2005-01-17  Wim Taymans  <wim@fluendo.com>
5116
5117         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5118         (remove_from_group), (schedule_group), (normalize_group),
5119         (gst_opt_scheduler_iterate):
5120         Also ref/unref decoupled elements before iterating the
5121         group since they are not added to the list of elements.
5122
5123 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5124
5125         * docs/manual/highlevel-components.xml:
5126           Add subtitle/streamselection as new features to playbin.
5127
5128 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5129
5130         * docs/manual/manual.xml:
5131           Re-enable dataaccess docs (oops).
5132
5133 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5134
5135         * docs/pwg/advanced-types.xml:
5136         * docs/random/mimetypes:
5137           Add documentation on libsndfile types (#163309), by Steve Baker
5138           <steve@stevebaker.org>.
5139         * gst/gstelement.c: (gst_element_release_request_pad):
5140           If an element has no explicit function, just remove the pad.
5141
5142 2005-01-17  Luca Ognibene  <luogni@tin.it>
5143
5144         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5145
5146         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5147           Fix memleak (#163801).
5148
5149 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5150
5151         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5152           I think this is actually more correct...
5153
5154 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5155
5156         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5157           Another workaround for memory access while destroyed in callback.
5158           Please, someone with refcount knowledge, have a look at this.
5159
5160 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5161
5162         * docs/faq/faq.xml:
5163         * docs/faq/legal.xml:
5164           move the legal Q&A here
5165
5166 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5167
5168         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5169         (gst_tee_request_new_pad):
5170           Fix negotiation.
5171
5172 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5173
5174         * docs/random/omega/caps2:
5175         * testsuite/caps/caps_strings:
5176           replace framerate aproximations by their real value
5177           (24000/1001, 30000/1001, 60000/1001)
5178           Partially fixes bug #164049
5179
5180 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5181
5182         * docs/gst/Makefile.am:
5183           don't fail on the stupid GstPoptOption
5184
5185 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5186
5187         * gst/gstpad.h:
5188         * gst/gstprobe.c:
5189           allow probes to work on ghost pads by realizing the pad
5190           probe debugging
5191
5192 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5193
5194         * docs/gst/gstreamer-sections.txt:
5195         * docs/gst/tmpl/gstpad.sgml:
5196         * gst/gstpad.c: (gst_pad_set_active_recursive):
5197         * gst/gstpad.h:
5198           Add gst_pad_set_active_recursive().
5199
5200 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5201
5202         * docs/random/release:
5203           updates
5204         * gst/gst_private.h:
5205         * gst/gstinfo.c:
5206         * gst/gstobject.c:
5207           move deep_notify logging to a new category
5208         * gst/gstprobe.c:
5209         * gst/gstprobe.h:
5210           add stuff so bindings can wrap probes
5211
5212 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5213
5214         * gst/gstplugin.c: (gst_plugin_load):
5215           Fix plugin loading if plugin/lib was already loaded. Fixes
5216           #163383
5217
5218 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5219
5220         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5221
5222         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5223           Protect plugin loading by a mutex so it's threadsafe. Fixes
5224           #163234.
5225
5226 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5227
5228         * gst/gstevent.c: (_gst_event_copy):
5229           Reference source object when copying events, since it'll be
5230           dereferenced on event dereferencing as well.
5231
5232 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5233
5234         * docs/gst/gstreamer-sections.txt:
5235         * docs/gst/tmpl/gstevent.sgml:
5236         * gst/gstevent.c: (gst_event_new_filler_stamped),
5237         (gst_event_filler_get_duration):
5238         * gst/gstevent.h:
5239           Add two new functions for filler events (which are used to
5240           synchronize streams if one of them is not having any data
5241           for a while) without interrupting the actual data-stream.
5242           Basically a no-op.
5243         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5244         (gst_queue_link_sink), (gst_queue_link_src),
5245         (gst_queue_change_state):
5246           Allow for renegotiation while filled. Required for stream
5247           switching while playing.
5248
5249 2005-01-08  Benjamin Otte  <otte@gnome.org>
5250
5251         * gst/gstelement.c: (gst_element_link_many):
5252           fix up g_return_if_fail's
5253         * po/LINGUAS:
5254         * po/de.po:
5255           add German translation, that was somehow not included
5256
5257 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5258
5259         * docs/random/mimetypes:
5260           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5261           do not add them to riff-lib as they are not common
5262
5263 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5264
5265         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5266           Check for existence of probe after performing the probe before
5267           re-accessing it to prevent segfaults caused by removal of the
5268           probe in the callback.
5269
5270 2005-01-05  David Schleef  <ds@schleef.org>
5271
5272         * testsuite/registry/Makefile.am:
5273         * testsuite/registry/gst-print-formats.c:
5274         (print_pad_templates_info), (print_element_list),
5275         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5276         (g_list_uniqify), (get_pad_templates_info),
5277         (get_element_mime_list), (print_mime_list), (main): A little
5278         program that looks through the registry to find elements of
5279         a given type.  Not particularly interesting as a test, except
5280         that there's no other test covering the same area.
5281
5282 2005-01-05  David Schleef  <ds@schleef.org>
5283
5284         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5285         (fault_handler_sigaction), (fault_spin),
5286         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5287         in signal.h-type signal handlers by not calling forbidden functions,
5288         including gst_element_set_state().
5289
5290 2005-01-05  David Schleef  <ds@schleef.org>
5291
5292         * gst/gstvalue.h: Mark _gst_reserved[] as private
5293
5294 2005-01-05  David Schleef  <ds@schleef.org>
5295
5296         * gst/gstvalue.c: Fix doc build problem.
5297
5298 2005-01-05  David Schleef  <ds@schleef.org>
5299
5300         * gst/gstvalue.c: Add some documentation
5301
5302 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5303
5304         * docs/README:
5305           another shell oneliner for empty return value docs
5306         * gst/gstcaps.c:
5307         * gst/gstvalue.c:
5308         * libs/gst/control/dparam.c:
5309           more doc fixes (parameters and return values)
5310
5311 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5312
5313         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5314
5315         * gst/gstregistry.h:
5316         * gst/registries/gstxmlregistry.c:
5317           Fix macro's for Mingw (fixes #162276).
5318
5319 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5320
5321         * docs/README:
5322           quick shell oneliner to find undocumented members
5323         * docs/gst/tmpl/gstplugin.sgml:
5324         * docs/gst/tmpl/gstscheduler.sgml:
5325         * docs/gst/tmpl/gstthread.sgml:
5326           more enumtypes cleanup
5327         * gst/gsterror.h:
5328           activated documentation comments, now someone needs to document
5329           the enums :(
5330
5331 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5332
5333         * docs/manual/manual.xml:
5334           Add dataaccess part (doh!).
5335
5336 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5337
5338         * docs/manual/advanced-autoplugging.xml:
5339           Fix typo (intiate -> initiate).
5340
5341 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5342
5343         * docs/random/bbb/streamselection:
5344           Add some notes on how to handle multi-subtitle/-audio streams.
5345
5346 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5347
5348         * docs/gst/gstreamer-docs.sgml:
5349         * docs/gst/gstreamer-sections.txt:
5350         * docs/gst/tmpl/gstenumtypes.sgml:
5351         * docs/gst/tmpl/gsterror.sgml:
5352         * docs/gst/tmpl/gstevent.sgml:
5353         * docs/gst/tmpl/gstpad.sgml:
5354         * docs/gst/tmpl/gstpadtemplate.sgml:
5355         * docs/gst/tmpl/gstthread.sgml:
5356           removed gstenumtypes section from docs and put all the enums into
5357           their sections
5358
5359 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5360
5361         * gst/gstplugin.c:
5362           document gst_library_load a bit more (riff special case + return
5363           value if already loaded)
5364         * testsuite/bytestream/filepadsink.c:
5365           plugin name is 'gstbytestream', not 'bytestream'
5366
5367 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5368
5369         * docs/random/bbb/subtitles:
5370           Add some first mind rumblings on proper subtitle support.
5371
5372 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5373
5374         * po/ca.po:
5375         * po/sv.po:
5376           updated translations
5377
5378 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5379
5380         * docs/manual/advanced-dataaccess.xml:
5381           Add section on how to use fakesrc/fakesink/identity in your
5382           application, plus section on how to embed plugins. Also mention
5383           probes.
5384         * docs/manual/appendix-checklist.xml:
5385         * docs/manual/appendix-debugging.xml:
5386         * docs/manual/appendix-gnome.xml:
5387         * docs/manual/appendix-integration.xml:
5388           Debug -> checklist, GNOME -> integration, add sections on Linux,
5389           KDE integration and add other things useful for application
5390           development.
5391         * docs/manual/manual.xml:
5392           Remove some fixmes, update some file pointers.
5393         * docs/pwg/appendix-checklist.xml:
5394           Fix typo.
5395         * docs/pwg/building-boiler.xml:
5396           Remove ugly header and add commented fixme.
5397         * docs/pwg/pwg.xml:
5398           Add fixme.
5399         * examples/manual/Makefile.am:
5400           Add example for added docs.
5401
5402 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5403
5404         * configure.ac:
5405           back to HEAD
5406
5407 === release 0.8.8 ===
5408
5409 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5410
5411         * NEWS:
5412         * RELEASE:
5413         * configure.ac:
5414           Releasing 0.8.8, "I'll Take Care Of You"
5415
5416 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5417
5418         * configure.ac:
5419           second prerelease
5420
5421 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5422
5423         patch by: Wim Taymans
5424
5425         * gst/gstbin.c:
5426           Fix for #159852 - make iterate emission threadsafe
5427
5428 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5429
5430         * docs/faq/cvs.xml:
5431           notes about new fdo account request
5432
5433 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5434
5435         * docs/gst/gstreamer-docs.sgml:
5436         * docs/gst/tmpl/gstenumtypes.sgml:
5437         * docs/gst/tmpl/gstplugin.sgml:
5438         * docs/libs/gstreamer-libs-docs.sgml:
5439           Added missing short docs. Added ids for navigation.
5440
5441 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5442
5443         * docs/manual/advanced-autoplugging.xml:
5444         * docs/manual/advanced-schedulers.xml:
5445         * docs/manual/advanced-threads.xml:
5446           Rewrites. Remove cothreads, go a bit into opt specifically,
5447           document threads and their gotchas, and do some technical stuff
5448           on autoplugging plus add some working examples. Fixes #157395.
5449         * examples/manual/Makefile.am:
5450           Add typefind/autoplugger example (one that actually works).
5451           Remove queue example since it's a duplicate of the thread one.
5452
5453 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5454
5455         * gst/gstvalue.c: (gst_value_deserialize_string):
5456           use deprecated g_value_set_string_take_ownership to keep compatible
5457           with glib 2.2
5458
5459 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5460
5461         * gst/gstvalue.c: (gst_value_deserialize_string):
5462           revert last patch, only dom a g_utf8_validate now before accepting
5463           the string - caps parsing strips " from strings so we can't rely on
5464           them
5465         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5466           disable a test that tested the above and comment it
5467
5468 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5469
5470         Patch reviewed by David Schleef  <ds@schleef.org>
5471
5472         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5473         bug #153882)
5474         * win32/gstenumtypes.h: same
5475
5476 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5477
5478         * gst/gstpad.c: (gst_pad_query):
5479           Do query on realized pad, similar to how convert/send_event handle
5480           this. Also makes sense, since this pad belongs to the function to
5481           which this query will be sent. Fixes #158163.
5482
5483 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5484
5485         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5486
5487 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5488
5489         * docs/faq/general.xml: fix pipeline to actually work
5490
5491 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5492
5493         * gst/gstvalue.c: (gst_value_deserialize_string):
5494           check that a simple string that gets deserialized does not contain
5495           invalid characters
5496         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5497           remove a test that tested a wring behaviour
5498
5499 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5500
5501         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5502
5503         * docs/manual/intro-motivation.xml:
5504           Fix typos.
5505
5506 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5507
5508         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5509
5510         * docs/gst/tmpl/gstprobe.sgml:
5511           Fix documentation of probe callback - it is supposed to return
5512           FALSE, not TRUE, to remove data from the stream (#159087).
5513
5514 2004-12-16  Daniel Gazard  <dany42@free.fr>
5515
5516         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5517
5518         * gst/gstelementfactory.c: (gst_element_factory_create):
5519           Fix compile failure if compiling without libxml2 support (#149936).
5520
5521 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5522
5523         * docs/manual/advanced-autoplugging.xml:
5524         * docs/manual/highlevel-components.xml:
5525           Move spider from autoplugging to components. Autoplugging is for
5526           internals, not for solutions. ;-).
5527
5528 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5529
5530         * docs/random/ds/0.9-suggested-changes:
5531           Make note on device/location/uri property names.
5532
5533 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5534
5535         * docs/manual/advanced-autoplugging.xml:
5536         * docs/manual/advanced-clocks.xml:
5537         * docs/manual/advanced-interfaces.xml:
5538         * docs/manual/advanced-metadata.xml:
5539         * docs/manual/advanced-position.xml:
5540         * docs/manual/advanced-schedulers.xml:
5541         * docs/manual/advanced-threads.xml:
5542         * docs/manual/appendix-gnome.xml:
5543         * docs/manual/appendix-programs.xml:
5544         * docs/manual/appendix-quotes.xml:
5545         * docs/manual/autoplugging.xml:
5546         * docs/manual/basics-bins.xml:
5547         * docs/manual/basics-data.xml:
5548         * docs/manual/basics-elements.xml:
5549         * docs/manual/basics-helloworld.xml:
5550         * docs/manual/basics-init.xml:
5551         * docs/manual/basics-pads.xml:
5552         * docs/manual/basics-plugins.xml:
5553         * docs/manual/bins-api.xml:
5554         * docs/manual/bins.xml:
5555         * docs/manual/buffers-api.xml:
5556         * docs/manual/buffers.xml:
5557         * docs/manual/clocks.xml:
5558         * docs/manual/components.xml:
5559         * docs/manual/cothreads.xml:
5560         * docs/manual/debugging.xml:
5561         * docs/manual/dparams-app.xml:
5562         * docs/manual/dynamic.xml:
5563         * docs/manual/elements-api.xml:
5564         * docs/manual/elements.xml:
5565         * docs/manual/factories.xml:
5566         * docs/manual/gnome.xml:
5567         * docs/manual/goals.xml:
5568         * docs/manual/helloworld.xml:
5569         * docs/manual/helloworld2.xml:
5570         * docs/manual/highlevel-components.xml:
5571         * docs/manual/highlevel-xml.xml:
5572         * docs/manual/init-api.xml:
5573         * docs/manual/intro-basics.xml:
5574         * docs/manual/intro-motivation.xml:
5575         * docs/manual/intro-preface.xml:
5576         * docs/manual/intro.xml:
5577         * docs/manual/links-api.xml:
5578         * docs/manual/links.xml:
5579         * docs/manual/manual.xml:
5580         * docs/manual/motivation.xml:
5581         * docs/manual/pads-api.xml:
5582         * docs/manual/pads.xml:
5583         * docs/manual/plugins-api.xml:
5584         * docs/manual/plugins.xml:
5585         * docs/manual/programs.xml:
5586         * docs/manual/queues.xml:
5587         * docs/manual/quotes.xml:
5588         * docs/manual/schedulers.xml:
5589         * docs/manual/states-api.xml:
5590         * docs/manual/states.xml:
5591         * docs/manual/threads.xml:
5592         * docs/manual/typedetection.xml:
5593         * docs/manual/win32.xml:
5594         * docs/manual/xml.xml:
5595           Try 2. This time, include a short preface as a "general
5596           introduction", also add code blocks around all code samples
5597           so they get compiled. We still need a way to tell readers
5598           the filename of the code sample. In some cases, don't show
5599           all code in the documentation, but do include it in the generated
5600           code. This allows for focussing on specific bits in the docs,
5601           while still having a full test application available.
5602         * examples/manual/Makefile.am:
5603           Fix up examples for new ADM. Add several of the new examples that
5604           were either added or were missing from the build system.
5605         * examples/manual/extract.pl:
5606           Allow nameless blocks.
5607
5608 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5609
5610         * docs/manual/elements-api.xml:
5611         * docs/manual/helloworld.xml:
5612         * examples/manual/extract.pl:
5613           fix last example.  Add example of adding code blocks that are not
5614           shown in docbook output.
5615
5616 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5617
5618         * docs/manual/dynamic.xml:
5619         * docs/manual/elements-api.xml:
5620         * docs/manual/gnome.xml:
5621         * docs/manual/helloworld2.xml:
5622         * docs/manual/init-api.xml:
5623         * docs/manual/queues.xml:
5624         * docs/manual/threads.xml:
5625         * docs/manual/xml.xml:
5626         * examples/manual/extract.pl:
5627           Make it possible to extract example code from separate blocks.
5628           Should make Ronald happy.
5629
5630 2004-12-15  Wim Taymans  <wim@fluendo.com>
5631
5632         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5633         (remove_from_group), (group_elements_set_visited),
5634         (normalize_group), (gst_opt_scheduler_iterate):
5635         Fix bug where a flag was not updated on a decoupled entry point 
5636         because we were just checking the group element list and decoupled
5637         elements are not in that list..
5638
5639 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5640
5641         * docs/manual/advanced-autoplugging.xml:
5642         * docs/manual/advanced-clocks.xml:
5643         * docs/manual/advanced-dparams.xml:
5644         * docs/manual/advanced-interfaces.xml:
5645         * docs/manual/advanced-metadata.xml:
5646         * docs/manual/advanced-position.xml:
5647         * docs/manual/advanced-schedulers.xml:
5648         * docs/manual/advanced-threads.xml:
5649         * docs/manual/appendix-debugging.xml:
5650         * docs/manual/appendix-gnome.xml:
5651         * docs/manual/appendix-programs.xml:
5652         * docs/manual/appendix-quotes.xml:
5653         * docs/manual/appendix-win32.xml:
5654         * docs/manual/autoplugging.xml:
5655         * docs/manual/basics-bins.xml:
5656         * docs/manual/basics-data.xml:
5657         * docs/manual/basics-elements.xml:
5658         * docs/manual/basics-helloworld.xml:
5659         * docs/manual/basics-init.xml:
5660         * docs/manual/basics-pads.xml:
5661         * docs/manual/basics-plugins.xml:
5662         * docs/manual/bins-api.xml:
5663         * docs/manual/bins.xml:
5664         * docs/manual/buffers-api.xml:
5665         * docs/manual/buffers.xml:
5666         * docs/manual/clocks.xml:
5667         * docs/manual/components.xml:
5668         * docs/manual/cothreads.xml:
5669         * docs/manual/debugging.xml:
5670         * docs/manual/dparams-app.xml:
5671         * docs/manual/dynamic.xml:
5672         * docs/manual/elements-api.xml:
5673         * docs/manual/elements.xml:
5674         * docs/manual/factories.xml:
5675         * docs/manual/gnome.xml:
5676         * docs/manual/goals.xml:
5677         * docs/manual/helloworld.xml:
5678         * docs/manual/helloworld2.xml:
5679         * docs/manual/highlevel-components.xml:
5680         * docs/manual/highlevel-xml.xml:
5681         * docs/manual/init-api.xml:
5682         * docs/manual/intro-motivation.xml:
5683         * docs/manual/intro-preface.xml:
5684         * docs/manual/intro.xml:
5685         * docs/manual/links-api.xml:
5686         * docs/manual/links.xml:
5687         * docs/manual/manual.xml:
5688         * docs/manual/motivation.xml:
5689         * docs/manual/pads-api.xml:
5690         * docs/manual/pads.xml:
5691         * docs/manual/plugins-api.xml:
5692         * docs/manual/plugins.xml:
5693         * docs/manual/programs.xml:
5694         * docs/manual/queues.xml:
5695         * docs/manual/quotes.xml:
5696         * docs/manual/schedulers.xml:
5697         * docs/manual/states-api.xml:
5698         * docs/manual/states.xml:
5699         * docs/manual/threads.xml:
5700         * docs/manual/typedetection.xml:
5701         * docs/manual/win32.xml:
5702         * docs/manual/xml.xml:
5703           First try at rewriting the ADM. Needs lotsamore work, but some
5704           parts might already be somewhat useful.
5705         * docs/pwg/advanced-interfaces.xml:
5706           Remove properties interface, it never actually existed (except for
5707           on my HD...).
5708
5709 2004-12-13  David Schleef  <ds@schleef.org>
5710
5711         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
5712         be NULL (bug #160220).
5713
5714 2004-12-13  David Schleef  <ds@schleef.org>
5715
5716         * configure.ac: remove all mmx stuff, because it's not used.
5717         * docs/random/ds/0.9-suggested-changes: additional notes
5718         * include/Makefile.am: we don't use these anymore
5719         * include/mmx.h: remove
5720         * include/sse.h: remove
5721
5722 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5723
5724         * docs/random/mimetypes:
5725           Add FOURCC code for h264 codec (VSSH)
5726           Add alternate FOURCC codes for h263 related codecs
5727
5728 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
5729
5730         * docs/manual/programs.xml:
5731           Added more gst-launch examples.
5732
5733 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5734
5735         * gst/gstqueue.c: (gst_queue_handle_src_query):
5736           Check for availability again.
5737
5738 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5739
5740         * gst/gstcaps.c: (gst_caps_compare_structures):
5741           Simple caps go first. This has the nice side-effect of fixing an
5742           obscure warning.
5743
5744 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5745
5746         * gst/gstversion.h.in:
5747           Protect header.
5748
5749 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5750
5751         * gst/schedulers/gstoptimalscheduler.c:
5752         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
5753         (gst_opt_scheduler_get_wrapper):
5754           When we're recursing into a chain run, only run the directly
5755           related group, not all queued ones. This will fix a possible
5756           deadlock in chains with more than two groups.
5757
5758 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5759
5760         * autogen.sh:
5761           remove patch if autopoint fails
5762
5763 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5764
5765         * docs/gst/gstreamer-sections.txt:
5766           Document Thomas' addition, fix build, make Luis the sheriff happy.
5767
5768 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5769
5770         * gst/gstplugin.c:
5771         * gst/gstplugin.h:
5772           add accessor for version field
5773
5774 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5775
5776         submitted by: Luca Ferretti <elle.uca@infinito.it>
5777
5778         * po/LINGUAS:
5779         * po/it.po:
5780           New tranlation added: Italian
5781
5782 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5783
5784         * gst/gstpad.c: (gst_pad_is_negotiated),
5785         (gst_pad_get_negotiated_caps):
5786           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
5787           it doesn't actually check the contents), so be sure to hand it
5788           a RealPad else we'll crash.
5789
5790 2004-12-03  Wim Taymans  <wim@fluendo.com>
5791
5792         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5793         (gst_queue_link), (gst_queue_handle_src_query):
5794         Reverted to 1.110 until this makes the testsuite and various
5795         apps work.
5796
5797 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
5798
5799         * docs/upload.mak: fix included CVS conflict strings
5800
5801 2004-12-01  William Jon McCann  <mccann@jhu.edu>
5802
5803         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5804
5805         * gst/gstelement.c: (gst_element_error_full):
5806           Use g_error_new_literal because error text may have
5807           percentage signs in it. Fixes #160019.
5808
5809 2004-12-01  Benjamin Otte  <otte@gnome.org>
5810
5811         * gst/elements/gstbufferstore.c:
5812         (gst_buffer_store_add_buffer_func):
5813           don't try to make subbuffers bigger than they can be. (fixes
5814           #159970)
5815
5816 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5817
5818         * docs/gst/gstreamer-sections.txt:
5819         * docs/gst/tmpl/gstvalue.sgml:
5820           Add new function to docs to fix build.
5821
5822 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5823
5824         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
5825         * gst/gstpad.c: (_gst_pad_default_fixate_value),
5826         (_gst_pad_default_fixate_foreach):
5827         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
5828         * gst/gstvalue.h:
5829           Deprecate _type_is_fixed, use _value_is_fixed instead, since
5830           in some cases (arrays), the fixedness depends on the content.
5831         * gst/gstqueue.c: (gst_queue_handle_src_query):
5832           Check for availability before doing something.
5833
5834 2004-11-29  Wim Taymans  <wim@fluendo.com>
5835
5836         * testsuite/threads/Makefile.am:
5837         * testsuite/threads/signals.c: (gst_test_get_type),
5838         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
5839         (gst_test_set_property), (gst_test_get_property),
5840         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
5841         (gst_test_do_prop), (run_thread), (main):
5842         Added a bunch of testcases that show threadsafety bugs in glib.
5843
5844 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
5845
5846         * docs/manual/programs.xml:
5847           Added a first batch of gst-launch examples, as provided by Ronald
5848           and others from the devel-mlist
5849
5850 2004-11-28  Benjamin Otte  <otte@gnome.org>
5851
5852         * gst/gstelement.c: (gst_element_negotiate_pads):
5853           simplify
5854         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
5855         (gst_value_serialize_string), (gst_value_deserialize_string):
5856           add unwrapping of previously wrapped strings. Fix bug in wrapping
5857           while at it.
5858         * testsuite/caps/value_serialize.c: (test1),
5859         (test_string_serialization), (test_string_deserialization), (main):
5860           add tests for string (de)serialization
5861
5862 2004-11-26  Wim Taymans  <wim@fluendo.com>
5863
5864         * testsuite/threads/159566.c: (object_deep_notify), (main):
5865         * testsuite/threads/Makefile.am:
5866         Added testsuite to show bug #159566
5867
5868 2004-11-25  Wim Taymans  <wim@fluendo.com>
5869
5870         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
5871         (gst_thread_child_state_change), (gst_thread_main_loop):
5872         Ref the thread object in the GThread mainloop. Break out of the
5873         thread mainloop if it holds the last ref. This properly exits
5874         the threads when disposing the thread from its own context. It
5875         also avoids possible deadlocks in the dispose function.
5876
5877 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
5878
5879         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
5880         it is necessary to wait.
5881
5882 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5883
5884         * docs/pwg/building-boiler.xml:
5885           Make description somewhat clearer.
5886
5887 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5888
5889         * docs/upload.mak:
5890           Apparently docs changed location on FDO's server.
5891
5892 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5893
5894         * docs/pwg/appendix-checklist.xml:
5895           Add some random notes on things to check when writing an element.
5896           This list can be extended as people see fit.
5897
5898 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
5899
5900         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
5901         (gst_queue_link_src): Allow for renegotiating the caps of the sink
5902         pad. The queue will now wait until it is empty and forward the new
5903         caps to the source.
5904         * gst/gstbin.c (gst_bin_set_element_sched)
5905         (gst_bin_unset_element_sched): Make sure that all elements and
5906         links are registered and unregistered with the scheduler exactly
5907         once. This elaborates on a fix by Benjamin Otte, but
5908         guarantees that decoupled elements are also registered.
5909
5910 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5911
5912         * docs/manual/quotes.xml:
5913           add a quote
5914         * configure.ac:
5915         * gst/gst.c:
5916         * gst/gstinfo.c:
5917           add LIBDIR and move init message higher up so it's at the start
5918
5919 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5920
5921         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
5922         * gstreamer.spec.in: add fair
5923
5924 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5925
5926         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5927         * gst/elements/gstidentity.c: (gst_identity_class_init):
5928           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
5929           <teuf@gnome.org> (#157263).
5930         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
5931         (gst_type_find_handle_src_query):
5932           Subtract size of internally stored data from position queries.
5933
5934 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
5935
5936         * gst/schedulers/fairscheduler.c:
5937         * gst/schedulers/faircothreads.c:
5938         * gst/schedulers/faircothreads.h:
5939         New cothread based scheduler: Fair scheduler.
5940         * gst/schedulers/gthread-cothreads.h: 
5941         Add the standard #if around the whole file.
5942         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
5943         compilation of the functions defined in this file. This is
5944         necessary to be able to use this file as a normal header.
5945         * gst/schedulers/Makefile.am: Add compiling support for fair
5946         scheduler.
5947         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
5948         scheduler cothreads layer from documentation generation.
5949
5950 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5951
5952         * gst/autoplug/gstspideridentity.c:
5953         (gst_spider_identity_sink_loop_type_finding):
5954           Don't crash if that function is not implemented.
5955
5956 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5957
5958         * docs/pwg/advanced-types.xml:
5959           Another typo.
5960
5961 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5962
5963         * docs/pwg/intro-preface.xml:
5964           Hm, ok, so the brackets weren't really useful...
5965         * docs/pwg/other-ntoone.xml:
5966           Fix embarassing typo.
5967
5968 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5969
5970         * docs/pwg/intro-preface.xml:
5971           Rewrite preface.
5972
5973 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5974
5975         * docs/pwg/advanced-scheduling.xml:
5976         * docs/pwg/advanced-tagging.xml:
5977         * docs/pwg/advanced-types.xml:
5978         * docs/pwg/building-boiler.xml:
5979         * docs/pwg/building-chainfn.xml:
5980         * docs/pwg/building-signals.xml:
5981         * docs/pwg/building-state.xml:
5982         * docs/pwg/building-testapp.xml:
5983         * docs/pwg/intro-basics.xml:
5984         * docs/pwg/other-manager.xml:
5985         * docs/pwg/other-source.xml:
5986           Typo fixes.
5987         * docs/pwg/other-manager.xml:
5988           Add some first content. No example code yet.
5989         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5990           Remove double newlines.
5991
5992 2004-11-04  Wim Taymans  <wim@fluendo.com>
5993
5994         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5995         (remove_from_group), (normalize_group), (group_migrate_connected),
5996         (gst_opt_scheduler_iterate):
5997         * testsuite/schedulers/.cvsignore:
5998         * testsuite/schedulers/Makefile.am:
5999         * testsuite/schedulers/queue_link.c: (main):
6000         Added testcase for scheduler segfault.
6001         Fix scheduler segfault when removing a decoupled
6002         entry point as the last element from a group.
6003
6004 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6005
6006         * gst/gstmarshal.list: add missing marshaller, fixes build
6007
6008 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6009
6010         * docs/random/signal: added notes about using BOXED for GstBuffer
6011         signal marshallers, not POINTER
6012
6013 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6014
6015         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6016         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
6017         POINTER=>BOXED changes to marshal GstBuffers
6018
6019 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6020
6021         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
6022         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
6023
6024 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
6025
6026         * docs/gst/gstreamer-sections.txt:
6027         * docs/gst/tmpl/gstcaps.sgml:
6028         * docs/gst/tmpl/gsterror.sgml:
6029         * docs/gst/tmpl/gstinfo.sgml:
6030         * docs/gst/tmpl/gstmacros.sgml:
6031         * docs/gst/tmpl/gstutils.sgml:
6032         * docs/random/ensonic/interfaces.txt:
6033         * gst/gstinfo.h:
6034           added some more docs, removed two obsolete defines
6035
6036 2004-11-02  Kjartan Maraas <as at gnome.org>
6037
6038         reviewed by: Wim Taymans, Ronald Bultje.
6039
6040         * gst/cothreads.c: (cothread_create):
6041         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6042         (gst_bin_child_state_change_func):
6043         * gst/gstbuffer.c: (gst_buffer_span):
6044         * gst/gstelement.c: (gst_element_get_index),
6045         (gst_element_get_event_masks), (gst_element_get_query_types),
6046         (gst_element_get_formats):
6047         * gst/gsterror.c: (_gst_core_errors_init),
6048         (_gst_library_errors_init), (_gst_resource_errors_init),
6049         (_gst_stream_errors_init):
6050         * gst/gstobject.c: (gst_object_default_deep_notify):
6051         * gst/gstpad.c: (gst_pad_get_event_masks),
6052         (gst_pad_get_internal_links_default):
6053         * gst/gstplugin.c: (gst_plugin_register_func),
6054         (gst_plugin_get_module):
6055         * gst/gststructure.c: (gst_structure_get_string),
6056         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6057         (gst_structure_to_abbr):
6058         * gst/gstutils.c: (gst_print_element_args):
6059         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6060         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6061         Aplied part of patch #157127: Cleanup of issues reported by 
6062         sparse.
6063         Also do not try to use cothreads when there is no cothread
6064         context yet.
6065
6066 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6067
6068         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6069         (gst_opt_scheduler_iterate):
6070         Applied patch #154061. Running a pipeline in which an element 
6071         calls GST_ELEMENT_ERROR in the chain function, the opt 
6072         scheduler doesn't unref the chain so it never gets freed.
6073
6074 2004-11-02  Wim Taymans  <wim@fluendo.com>
6075
6076         * gst/gststructure.c: (gst_structure_get_abbrs),
6077         (gst_structure_from_abbr), (gst_structure_to_abbr):
6078         Remove that ugly if-then thing in the code that converts
6079         between strings and types.
6080
6081 2004-11-02  Wim Taymans  <wim@fluendo.com>
6082
6083         * gst/gstscheduler.c: (gst_scheduler_add_element),
6084         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6085         Aplied clock distribution patch, this should fix bug
6086         #148787.
6087
6088 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6089
6090         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6091
6092         * po/LINGUAS:
6093         * po/nb.po:
6094           Added Norwegian Bokmaal translation
6095
6096 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6097
6098         * tools/gst-inspect.c: (print_signal_info):
6099           print signal arguments as pointers if they are
6100
6101 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6102
6103         * docs/pwg/building-boiler.xml:
6104           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6105
6106 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6107
6108         * gst/parse/parse.l:
6109         * testsuite/parse/parse1.c: (main):
6110         Since parse can do 'element name=a:b' make 'a:b.' work as
6111         well. 
6112         Added testcase to verify fix.
6113
6114 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6115
6116         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6117         Use the realpad when printing the direction.
6118         Add extra \n when printing extensions of typefind factories.
6119
6120 2004-10-13  David Schleef  <ds@schleef.org>
6121
6122         * examples/manual/Makefile.am: $< isn't portable in Makefile
6123         rules.
6124
6125 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6126
6127         * docs/gst/tmpl/gstobject.sgml:
6128         * docs/gst/tmpl/gstplugin.sgml:
6129         * docs/gst/tmpl/gstpluginfeature.sgml:
6130         * docs/gst/tmpl/gstregistry.sgml:
6131         * docs/gst/tmpl/gstversion.sgml:
6132         * gst/gstbin.c:
6133           more api documentation
6134         * gst/gstplugin.c: (gst_plugin_register_func),
6135         (gst_plugin_check_file), (gst_plugin_load_file):
6136           better error signaling and logging
6137
6138 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6139
6140         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6141           Subtract current queue contents from position queries.
6142
6143 2004-10-11  Johan Dahlin  <johan@gnome.org>
6144
6145         * gst/gsturi.c (gst_uri_get_location): unescape string
6146         (gst_uri_construct): escape string.
6147
6148 2004-10-11  Benjamin Otte  <otte@gnome.org>
6149
6150         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6151         (gst_pad_try_set_caps_nonfixed):
6152           allow renegotiation of unconnected pads (as inside spider). Simply
6153           return OK if unconnected - mimic try_set_caps there.
6154
6155 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6156
6157         * gst/gstbin.c: (gst_bin_sync_children_state):
6158           Add missing break.
6159
6160 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6161
6162         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6163         Set element to EOS before sending EOS event
6164
6165 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6166
6167         * gst/elements/gsttypefindelement.c:
6168         (gst_type_find_element_handle_event):
6169         Handle EOS events when doing the transition from
6170         typefind to data passing. This should fix the
6171         infinite loops in short files.
6172
6173 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6174
6175         * gst/gstthread.c: (gst_thread_change_state),
6176         (gst_thread_child_state_change):
6177         Make sure no iteration happens while performing
6178         the state change as it could mess up the internal
6179         consistency of the thread state.
6180
6181 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6182
6183         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6184         (gst_thread_change_state), (gst_thread_child_state_change):
6185         Do not try to grab the iterate lock in the state change method
6186         when we are in the same thread as the iterate or else we
6187         could deadlock. Some other cleanups.
6188
6189 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6190
6191         * configure.ac:
6192           bump nano to cvs
6193
6194 === release 0.8.7 ===
6195
6196 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6197
6198         * configure.ac:
6199         * NEWS:
6200         * RELEASE:
6201         * configure.ac:
6202           releasing 0.8.7, "A Cruise"
6203
6204 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6205
6206         * docs/random/mimetypes:
6207         Add an entry for Sony ATRAC3 audio format with mime-type
6208         used by rmdemux et riff-read
6209
6210 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6211
6212         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6213         Push the buffer store instead of clearing it in case that
6214         the stream is not seekable.
6215
6216 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6217
6218         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6219         (gst_thread_main_loop):
6220         Lock the iteration and the state change so that automatic
6221         negotiation and fixation does not happen at the same time
6222         as the in stream negotiation.
6223
6224 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6225
6226         * configure.ac:
6227           bump nano to cvs
6228
6229 === release 0.8.6 ===
6230
6231 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6232
6233         * configure.ac:
6234         * NEWS:
6235         * RELEASE:
6236         * configure.ac:
6237           releasing 0.8.6, "Narc"
6238
6239 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6240
6241         * configure.ac:
6242           prerel bump
6243
6244 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6245
6246         patch by: Steve Lhomme
6247
6248         * gst/elements/gstfakesrc.c:
6249         * gst/elements/gstidentity.c:
6250         * gst/gstthread.c:
6251           Fix for #153881
6252
6253 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6254
6255         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6256         Fix threadsafety of the crc checking function.
6257
6258 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6259
6260         patch by: Ronald Bultje
6261
6262         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6263         (gst_type_find_element_handle_event),
6264         (gst_type_find_element_chain):
6265         * gst/elements/gsttypefindelement.h:
6266          #153657.
6267          Filter out discont event from seekable sources when typefind
6268          asks them to seek.  Fixes typefind with demuxers for
6269          avi, asf and matroska.
6270
6271 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6272
6273         * docs/gst/gstreamer-sections.txt:
6274         * gst/gstcaps.c:
6275         * gst/gstcaps.h:
6276         * gst/gstpad.c:
6277           Revert preferred caps: (#147789)
6278
6279 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6280
6281         * win32/dirent.c:
6282           fix a memory leak
6283
6284 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6285
6286         * configure.ac:
6287           bump for prerelease
6288
6289 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6290
6291         * docs/Makefile.am:
6292         * docs/manual/elements-api.xml:
6293           restructure so that common stuff is shown first
6294         * docs/manual/init-api.xml:
6295           convert to examples
6296         * docs/manual/manual.xml:
6297         * docs/manuals.mak:
6298         * docs/url.entities:
6299           link to API on the website, possibly override later in build
6300         * examples/manual/.cvsignore:
6301           ignore more
6302         * examples/manual/Makefile.am:
6303           add more examples
6304         * examples/manual/extract.pl:
6305           error out on failure
6306
6307 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6308
6309         * docs/gst/tmpl/gstthread.sgml:
6310         * docs/manual/init-api.xml:
6311         * examples/manual/Makefile.am:
6312           convert two code bits to examples
6313
6314 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6315
6316         * gst/gstelement.c: (gst_element_change_state):
6317           Well, actually, I was about to remove this insane assert when
6318           I noticed Wim already did that. A warning is nice so we can
6319           fix actual ugs (using --g-fatal-warnings and backtraces), so
6320           I added that instead.
6321
6322 2004-09-06  Wim Taymans  <wim@fluendo.com>
6323
6324         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6325         (gst_element_threadsafe_properties_post_run),
6326         (gst_element_set_state), (gst_element_change_state):
6327         Added extra refcounting around various places. 
6328
6329 2004-09-06  Wim Taymans  <wim@fluendo.com>
6330
6331         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6332         Fix debug info.
6333
6334 2004-09-06  Wim Taymans  <wim@fluendo.com>
6335
6336         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6337         (remove_from_group):
6338         Some more debug info.
6339
6340 2004-09-03  Wim Taymans  <wim@fluendo.com>
6341
6342         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6343         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6344         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6345         (gst_fakesrc_get), (gst_fakesrc_change_state):
6346         * gst/elements/gstfakesrc.h:
6347         * gst/elements/gstidentity.c: (gst_identity_class_init),
6348         (gst_identity_init), (gst_identity_chain),
6349         (gst_identity_set_property), (gst_identity_get_property),
6350         (gst_identity_change_state):
6351         * gst/elements/gstidentity.h:
6352         Added datarate properties to limit the datarate.
6353
6354 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6355
6356         * gst/autoplug/gstspider.c: (plugin_init):
6357           don't set a rank. We don't want to autoplug by inserting spiders.
6358
6359 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6360
6361         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6362         (gst_spider_identity_plug):
6363           add a template for spider's sink
6364         * gst/gst.c: (gst_register_core_elements):
6365           queue's rank should be NULL, we don't want spider to add it.
6366
6367 2004-08-18  David Schleef  <ds@schleef.org>
6368
6369         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6370         * docs/libs/Makefile.am: same
6371         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6372         * docs/random/ds/0.9-planning: random additions
6373         * docs/random/ds/0.9-suggested-changes: same
6374         * gst/gstxml.h: remove vestigal GstXMLNs definition
6375
6376         Preferred caps: (#147789)
6377         * docs/gst/gstreamer-sections.txt: Add symbols
6378         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6379         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6380         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6381         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6382         (gst_caps_get_preferred), (gst_caps_set_preferred),
6383         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6384         (gst_caps_use_preferred): Handle caps preferences
6385         * gst/gstcaps.h: Add caps preferences
6386         * gst/gstpad.c: (gst_pad_link_get_preferred),
6387         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6388         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6389         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6390         negotiation.
6391
6392 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6393
6394         * gst/autoplug/gstspideridentity.c:
6395         (gst_spider_identity_request_new_pad):
6396         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6397         (gst_aggregator_init):
6398         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6399         (gst_fakesink_init):
6400         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6401         (gst_fakesrc_init):
6402         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6403         (gst_fdsink_init):
6404         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6405         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6406         (gst_filesink_init):
6407         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6408         (gst_filesrc_init):
6409         * gst/elements/gstidentity.c: (gst_identity_base_init),
6410         (gst_identity_init):
6411         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6412         (gst_multifilesrc_init):
6413         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6414         (gst_pipefilter_init):
6415         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6416         (gst_statistics_init):
6417         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6418         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6419           s/gst_pad_new/&_from_template/
6420           register pad templates in the base_init function
6421           add static pad template definitions
6422
6423 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6424
6425         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6426         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6427         * testsuite/refcounting/pad.c: (main):
6428         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6429           s/gst_pad_new/&_from_template/
6430           prepare deprecation of gst_pad_new
6431
6432 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6433
6434         patch by: Luca Ognibene <skaboy81@virgilio.it>
6435
6436         * gst/gstcaps.c:
6437         * gst/gstelement.c:
6438         * gst/gstpad.c:
6439         * gst/gstxml.c:
6440           fix memleaks.  Fixes #150001
6441
6442 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6443
6444         * docs/random/ds/0.9-suggested-changes:
6445           add notes - mostly about pad templates
6446
6447 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6448
6449         * win32/GStreamer.vcproj:
6450           temporary locale files are .gmo not .mo
6451
6452 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6453
6454         * configure.ac: bump nano to cvs
6455
6456 === release 0.8.5 ===
6457
6458 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6459
6460         * configure.ac:
6461           releasing 0.8.5, "Stuttgart"
6462         * NEWS:
6463         * RELEASE:
6464         * configure.ac:
6465         * docs/random/release:
6466           updates for release
6467
6468 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6469
6470         patch by: Wim Taymans (wim@fluendo.com)
6471
6472         * gst/gstbuffer.c:
6473         * gst/gstindex.h:
6474         * libs/gst/dataprotocol/dataprotocol.c:
6475           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6476
6477 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6478
6479         * Makefile.am:
6480         * win32/MANIFEST:
6481           add win32 dir to the build.  Fixes #149981.
6482
6483 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6484
6485         * configure.ac:
6486           bump libtool versioning
6487         * gst/gststructure.c:
6488           mark function as static
6489         * po/af.po:
6490         * po/az.po:
6491         * po/ca.po:
6492         * po/cs.po:
6493         * po/en_GB.po:
6494         * po/fr.po:
6495         * po/nl.po:
6496         * po/sq.po:
6497         * po/sr.po:
6498         * po/sv.po:
6499         * po/tr.po:
6500         * po/uk.po:
6501           translations update
6502         * win32/README.txt:
6503           trademark protection
6504
6505 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6506
6507         * configure.ac:
6508           fix GST_ORIGIN
6509           set GST_PACKAGE to source, and distinguish between release and other
6510         * tools/gst-inspect.c:
6511           print out plugin an element factory is part of so we see this info
6512
6513 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6514
6515         * docs/gst/gstreamer-sections.txt:
6516         * docs/gst/tmpl/gstbuffer.sgml:
6517         * docs/gst/tmpl/gstschedulerfactory.sgml:
6518           reorder docs a little, make GstBuffer's more sensible.
6519         * gst/gstbuffer.h:
6520           API: added GST_BUFFER_FLAG_DELTA_UNIT
6521         * gst/gstscheduler.c:
6522           comment API addition
6523
6524 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6525
6526         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6527           work with non-regular files that can be mmapped (like /dev/zero)
6528         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6529           get rid of typefinds that require a seek when we can't seek instead
6530           of trying them over and over again
6531         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6532           return non-zero failure value when the pipeline was interrupted or
6533           an error occurred
6534
6535 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6536
6537         * win32/config.h:
6538         * win32/GStreamer.vcproj:
6539           compile and install the locales
6540
6541 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6542
6543         * gst/gstvalue.c:
6544           fix a possible memory leak under Windows
6545
6546 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6547
6548         * win32/GStreamer.vcproj:
6549           fix a memory leak that occured under Windows
6550         * win32/gstreamer.def:
6551           add gst_scheduler_register
6552
6553 2004-08-11  Benjamin Otte  <otte@gnome.org>
6554
6555         * docs/gst/gstreamer-sections.txt:
6556         * gst/gstscheduler.c: (gst_scheduler_register):
6557         * gst/gstscheduler.h:
6558           API:
6559           add gst_scheduler_register shortcut similar to gst_element_register
6560         * gst/schedulers/entryscheduler.c: (plugin_init):
6561         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6562         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6563           use it
6564
6565 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6566
6567         * gst/gstvalue.h:
6568           fix a memory leak that occured under Windows
6569
6570 2004-08-10  Colin Walters  <walters@redhat.com>
6571
6572         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6573         Don't use O_EXCL to open temporary registry.  It will prevent
6574         registry creation if a temporary one already exists, which
6575         is unnecessary.
6576
6577 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6578
6579         * docs/gst/gstreamer-sections.txt:
6580         * docs/gst/tmpl/gstvalue.sgml:
6581           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6582
6583 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6584
6585         * win32/gstbytestream.vcproj:
6586         * win32/gstelements.vcproj:
6587         * win32/gstgetbits.vcproj:
6588         * win32/gst-inspect.vcproj:
6589         * win32/gst-launch.vcproj:
6590         * win32/gstoptimalscheduler.vcproj:
6591         * win32/GStreamer.vcproj:
6592         * win32/gst-register.vcproj:
6593         * win32/gstspider.vcproj:
6594           update the include and lib dirs to fit standard libraries as
6595           described in the Win32 manual
6596
6597 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6598
6599         * win32/config.h:
6600         * win32/gstversion.h:
6601           enable NLS again, push the version number for the coming 0.8.5 release
6602
6603 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6604
6605         * gst/gstvalue.h:
6606           export gst_type_XXX for windows DLLs
6607
6608 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6609
6610         * docs/faq/gst-uninstalled:
6611           fix PKG_CONFIG_PATH and PYTHONPATH
6612         * gst/schedulers/Makefile.am:
6613           cleanup
6614         * libs/gst/bytestream/bytestream.c:
6615           remove newline
6616         * po/LINGUAS:
6617         * po/sq.po:
6618           adding Albanian translation (Laurent Dhima)
6619         * po/cs.po:
6620           updated
6621
6622 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6623
6624         * po/ca.po:
6625         * po/sv.po:
6626           updated translations
6627
6628 2004-08-04  Benjamin Otte  <otte@gnome.org>
6629
6630         * tests/mass_elements.c: (main):
6631           allow specifying src and sink element explicitly, so I can test
6632           videotestsrc instead of fakesrc
6633
6634 2004-08-04  Benjamin Otte  <otte@gnome.org>
6635
6636         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6637         (gst_structure_id_empty_new), (gst_structure_empty_new),
6638         (gst_structure_copy):
6639           add gst_structure_id_empty_new_with_size to allow preallocating
6640           value array sizes. Use this in gst_structure_copy to get rid of
6641           reallocs.
6642           don't do quark=>string=>quark when copying structures
6643
6644 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6645
6646         * docs/manual/win32.xml:
6647         * win32/README.txt:
6648           update documentation with the clean version of dependencies
6649
6650 2004-08-03  Benjamin Otte  <otte@gnome.org>
6651
6652         * gst/schedulers/entryscheduler.c:
6653         (gst_entry_scheduler_remove_element):
6654           fix for GST_DISABLE_DEBUG
6655         * tools/gst-launch.c: (print_tag):
6656           fixes for G_DISABLE_ASSERT
6657
6658 2004-08-03  Benjamin Otte  <otte@gnome.org>
6659
6660         * gst/gst.c: (gst_register_core_elements):
6661           fix for G_DISABLE_ASSERT
6662         * gst/gstinfo.c: (__gst_in_valgrind):
6663           add for GST_DISABLE_DEBUG
6664
6665 2004-08-03  Benjamin Otte  <otte@gnome.org>
6666
6667         * gst/parse/parse.l:
6668           fix for G_DISABLE_ASSERT
6669
6670 2004-08-03  Wim Taymans  <wim@fluendo.com>
6671
6672         * gst/gstbin.c: (gst_bin_get_type),
6673         (gst_bin_child_state_change_func):
6674         * gst/gstthread.c: (gst_thread_change_state):
6675         Backported some debug logging from a reverted patch
6676         Don't try to destroy the thread twice. Added some more
6677         debugging in GstThread. Unlock and signal even if we
6678         are in the thread context.
6679
6680 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6681
6682         * po/uk.po:
6683           updated translation
6684
6685 2004-07-30  David Schleef  <ds@schleef.org>
6686
6687         * gst/gstatomic_impl.h: Enable atomic code for x86_64
6688
6689 2004-07-29  David Schleef  <ds@schleef.org>
6690
6691         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
6692         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
6693
6694 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6695
6696         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6697         (gst_bin_add_func), (gst_bin_remove_func),
6698         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
6699         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
6700         (gst_bin_change_state_norecurse), (gst_bin_dispose),
6701         (gst_bin_sync_children_state):
6702         * gst/gstbin.h:
6703         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
6704         (gst_thread_change_state):
6705         * testsuite/states/Makefile.am:
6706           revert state change patches as agreed so we can rework them
6707           gradually
6708
6709 2004-07-29  Benjamin Otte  <otte@gnome.org>
6710
6711         * libs/gst/control/Makefile.am:
6712           link to libgstreamer (fixes Debian bug 262019, see
6713           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
6714
6715 2004-07-29  Wim Taymans  <wim@fluendo.com>
6716
6717         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6718         (check_from_fraction_convert), (transform_test), (main):
6719         Make the test less pedantic about float roundoff errors.
6720
6721 2004-07-29  Benjamin Otte  <otte@gnome.org>
6722
6723         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
6724         (gst_filesrc_srcpad_event):
6725           make seek events to before start/after end of file not fail, but
6726           seek to start/end instead
6727         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
6728           add more output
6729
6730 2004-07-29  Benjamin Otte  <otte@gnome.org>
6731
6732         * gst/gstpad.c: (gst_pad_set_explicit_caps):
6733           check that caps are fixed
6734         * gst/gstpad.c: (gst_pad_template_new):
6735           don't try to simplify caps, costs too much time on gst_init
6736         * gst/gstplugin.c: (gst_plugin_add_feature):
6737           G_ERROR if features are added twice
6738         * gst/gsttypefind.c: (gst_type_find_register):
6739         * gst/gstelementfactory.c: (gst_element_register):
6740           don't add features twice
6741         * docs/random/ds/0.9-suggested-changes:
6742           add note about possible gst_init optimization
6743
6744 2004-07-28  David Schleef  <ds@schleef.org>
6745
6746         * testsuite/elements/Makefile.am:
6747         * testsuite/elements/struct_i386.h:
6748         * testsuite/elements/struct_size.c: (main):  A little test
6749         to keep distcheck from working if someone changes a structure
6750         size accidentally.
6751
6752 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6753
6754         * docs/libs/Makefile.am:
6755         * docs/libs/gstreamer-libs-docs.sgml:
6756         * docs/libs/gstreamer-libs-sections.txt:
6757         * docs/libs/tmpl/gstbytestream.sgml:
6758         * docs/libs/tmpl/gstcontrol.sgml:
6759         * docs/libs/tmpl/gstdataprotocol.sgml:
6760         * docs/libs/tmpl/gstgetbits.sgml:
6761         * libs/gst/bytestream/Makefile.am:
6762         * libs/gst/bytestream/bytestream.c:
6763         * libs/gst/bytestream/bytestream.h:
6764         * libs/gst/control/Makefile.am:
6765         * libs/gst/dataprotocol/Makefile.am:
6766         * libs/gst/getbits/Makefile.am:
6767         * libs/gst/getbits/getbits.h:
6768           various doc and style fixes, adding bytestream to libs docs.
6769
6770 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6771
6772         * docs/gst/gstreamer-docs.sgml:
6773         * docs/libs/Makefile.am:
6774         * docs/libs/gstreamer-libs-docs.sgml:
6775         * docs/libs/gstreamer-libs-sections.txt:
6776         * libs/gst/control/dparam.c:
6777           more doc fixes.  gst-libs docs now build the same way as gst.
6778
6779 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6780
6781         * configure.ac:
6782         * testsuite/Makefile.am:
6783         * testsuite/bins/Makefile.am:
6784         * testsuite/caps/Makefile.am:
6785         * testsuite/cleanup/Makefile.am:
6786         * testsuite/clock/Makefile.am:
6787         * testsuite/debug/Makefile.am:
6788         * testsuite/dlopen/Makefile.am:
6789         * testsuite/dynparams/Makefile.am:
6790         * testsuite/elements/.cvsignore:
6791         * testsuite/elements/Makefile.am:
6792         * testsuite/enumcaps/Makefile.am:
6793         * testsuite/enumcaps/enumcaps.c:
6794         * testsuite/ghostpads/Makefile.am:
6795         * testsuite/indexers/Makefile.am:
6796         * testsuite/negotiation/Makefile.am:
6797         * testsuite/parse/Makefile.am:
6798         * testsuite/plugin/Makefile.am:
6799         * testsuite/refcounting/Makefile.am:
6800         * testsuite/schedulers/.cvsignore:
6801         * testsuite/states/Makefile.am:
6802         * testsuite/tags/Makefile.am:
6803         * testsuite/threads/Makefile.am:
6804           fold enumcaps into caps dir
6805           clean up Makefile.am's for testsuite
6806
6807 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6808
6809         * docs/gst/Makefile.am:
6810         * docs/libs/Makefile.am:
6811           clean up docs build.  Fixes needless rebuilding of template files.
6812
6813 2004-07-28  Wim Taymans  <wim@fluendo.com>
6814
6815         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
6816         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
6817         Make sure that a bin state change tries to keep the children
6818         in sync. 
6819         Added debug logging to the thread.
6820
6821 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6822
6823         * win32/GStreamer.vcproj:
6824         * win32/gstreamer.def:
6825           more exports for the plugins
6826
6827 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6828
6829         * win32/gstgetbits.vcproj:
6830         * win32/gstgetbits.def:
6831         * win32/msvc71.sln:
6832           add support for the getbits plugin
6833
6834 2004-07-27  Wim Taymans  <wim@fluendo.com>
6835
6836         * gst/gstvalue.c: (gst_value_transform_double_fraction),
6837         (gst_value_transform_fraction_double), (_gst_value_initialize):
6838         * testsuite/caps/Makefile.am:
6839         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6840         (check_from_fraction_convert), (transform_test), (main):
6841         Added transform functions between double and fraction.
6842         Added testcase to verify transforms
6843
6844 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6845
6846         * win32/GStreamer.vcproj:
6847           rename GStreamer-0.8.lib to libgstreamer.lib
6848
6849 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6850
6851         * win32/gstelements.vcproj:
6852         * win32/gstoptimalscheduler.vcproj:
6853           fixes for the Release build
6854
6855 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6856
6857         * win32/config.h:
6858           update the version number
6859
6860 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6861
6862         * win32/GStreamer.vcproj:
6863           add gstinterface to the build
6864
6865 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6866
6867         * win32/gstreamer.def:
6868           add many definitions needed by plugins,
6869           GST_CAT_DEFAULT only available in the Debug build ?
6870
6871 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6872
6873         * gst/gstelement.c: (gst_element_set_eos_recursive):
6874           various whitespace fixes.
6875           doc fix, fixes #148497
6876
6877 2004-07-25  Benjamin Otte  <otte@gnome.org>
6878
6879         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
6880           don't delay links on the sink elements, it causes unnegotiated
6881           links.
6882         * gst/elements/gsttypefindelement.c:
6883         (gst_type_find_element_base_init):
6884           add our padtemplates, we indeed do have some.
6885         * gst/elements/gsttypefindelement.c:
6886         (gst_type_find_element_handle_event),
6887         (gst_type_find_element_chain):
6888           don't push data when typefinding failed.
6889         * gst/gstpad.c: (gst_pad_link_fixate):
6890           check that no fixate function returns empty caps.
6891         * gst/gstpad.c: (gst_pad_push):
6892           check that the link is negotiated before data gets pushed.
6893         * tools/gst-register.c: (main):
6894           don't assert (fixes #148283)
6895
6896 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6897
6898         * docs/gst/gstreamer-sections.txt:
6899         * docs/gst/tmpl/gstconfig.sgml:
6900           add GST_PLUGIN_EXPORT definition
6901
6902 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6903
6904         * gst/gstplugin.h:
6905         * gst/gstconfig.h.in:
6906         * win32/gstconfig.h:
6907         * win32/gstelements.def:
6908         * win32/gstelements.vcproj:
6909         * win32/gstoptimalscheduler.def:
6910         * win32/gstoptimalscheduler.vcproj:
6911         * win32/gstspider.def:
6912         * win32/gstspider.vcproj:
6913           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
6914
6915 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6916
6917         * docs/gst/gstreamer-sections.txt:
6918           remove GST_CAT_DEFAULT because the type has changed
6919
6920 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6921
6922         * win32/gstbytestream.vcproj:
6923         * win32/gstelements.vcproj:
6924         * win32/gst-inspect.vcproj:
6925         * win32/gst-launch.vcproj:
6926         * win32/gstoptimalscheduler.vcproj:
6927         * win32/GStreamer.vcproj:
6928         * win32/gst-register.vcproj:
6929         * win32/gstspider.vcproj:
6930         * win32/msvc71.sln:
6931           Copy the files where needed after building, The testsuite will be
6932           built separately
6933
6934 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6935
6936         * win32/config.h:
6937         * win32/README.txt:
6938         * docs/manual/win32.xml:
6939         Fixed the plugin and GStreamer location
6940
6941 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6942
6943         * win32/gstreamer.def:
6944         More exports for the plugins
6945
6946 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6947
6948         * gst/gstinfo.h:
6949         Marc was right, we need to export literally GST_CAT_DEFAULT
6950
6951 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6952
6953         * win32/config.h:
6954         NLS crashes in gettext, disabled until this is solved
6955
6956 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6957
6958         * win32/gst-inspect.vcproj:
6959         * win32/gst-launch.vcproj:
6960         Should use NLS when available
6961
6962 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6963
6964         * gst/registries/gstxmlregistry.c:
6965         removing the file doesn't seem to be a good idea on Linux
6966
6967 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6968
6969         * gst/registries/gstxmlregistry.c:
6970         Remove the registry before renaming the tempfile (needed for Windows)
6971
6972 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6973
6974         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
6975         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
6976         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
6977         * gst/elements/gstmultifilesrc.h:
6978         Added newmedia property so it generates newmedia events between each
6979         file when property is set, as well as fixed eos handling
6980
6981 2004-07-22  David Schleef  <ds@schleef.org>
6982
6983         * gst/gststructure.c: (gst_structure_id_empty_new),
6984         (gst_structure_empty_new):  Set type field correctly.
6985         * gst/gststructure.h: Check type field correctly.
6986         * testsuite/caps/Makefile.am:
6987         * testsuite/caps/structure.c: (test1), (main): Add a very small
6988         test for structures.
6989
6990 2004-07-22  David Schleef  <ds@schleef.org>
6991
6992         * docs/random/ds/0.9-suggested-changes: more comments
6993         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
6994
6995 2004-07-22  Benjamin Otte  <otte@gnome.org>
6996
6997         * gst/gstelementfactory.c: (gst_element_register):
6998           set the factory in the class struct, so gst_element_get_factory
6999           actually works
7000         * gst/parse/grammar.y:
7001           set element to playing when it gets unlocked as we can't rely on the
7002           bin state - all elements in the bin state might still be locked in
7003           NULL)
7004
7005 2004-07-22  Benjamin Otte  <otte@gnome.org>
7006
7007         * gst/gstelement.c: (gst_element_set_state_func):
7008           make this a static function
7009
7010 2004-07-22  Wim Taymans  <wim@fluendo.com>
7011
7012         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7013         (gst_opt_scheduler_pad_link):
7014         fix 147894-2 and the group_link problem.
7015
7016 2004-07-22  Wim Taymans  <wim@fluendo.com>
7017
7018         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7019         (handoff_identity), (main):
7020         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7021         (handoff_identity), (main):
7022         * testsuite/schedulers/Makefile.am:
7023         * testsuite/schedulers/group_link.c: (main):
7024         Show bug in scheduler when linking chain and loop based element 
7025         where the chain based element was not yet in a group.
7026
7027 2004-07-21  Benjamin Otte  <otte@gnome.org>
7028
7029         * gst/.cvsignore:
7030         * gst/autoplug/.cvsignore:
7031         * gst/elements/.cvsignore:
7032         * gst/indexers/.cvsignore:
7033         * libs/gst/bytestream/.cvsignore:
7034         * libs/gst/control/.cvsignore:
7035         * libs/gst/getbits/.cvsignore:
7036         * testsuite/states/.cvsignore:
7037         * testsuite/threads/.cvsignore:
7038           keep this up to date, since I seem to be the only one who cares
7039           about not missing files on commits (editor's note: no you don't,
7040           but feel free to change them at the time you add stuff instead
7041           of later on)
7042
7043 2004-07-21  Benjamin Otte  <otte@gnome.org>
7044
7045         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7046         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
7047         (gst_bin_child_state_change_func), (set_kid_state_func),
7048         (gst_bin_set_state), (gst_bin_change_state_norecurse):
7049           make state changes work correctly and reentrant (so removing
7050           elements from bins during state changes of bins doesn't cause
7051           segfaults or even wrong states)
7052           add debugging category and debugging output to print children states
7053         * gst/gstbin.c: (gst_bin_dispose): 
7054           add some assertion checks
7055         * gst/gstbin.h:
7056         * gst/gstbin.c: (gst_bin_sync_children_state):
7057           deprecate this function - it just does gst_bin_set_state (bin,
7058           GST_STATE (bin)) 
7059         * testsuite/threads/queue.c: (main):
7060           don't use gst_bin_sync_children_state anymore
7061         * testsuite/states/Makefile.am:
7062         * testsuite/states/bin.c:
7063           test that the state changes of bins work as expected
7064         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7065           some adjustments to change states correctly, too
7066         * gst/gstthread.c: (gst_thread_change_state):
7067           don't enable/disable "threadsafe" properties, they're unused and
7068           cause random segfaults
7069         * testsuite/threads/Makefile.am:
7070           the queue check randomly passes now, ignore it
7071
7072 2004-07-21  Benjamin Otte  <otte@gnome.org>
7073
7074         * gst/gstpad.c:
7075           check if data is NULL before outputting debug info. (fixes #145100)
7076
7077 2004-07-21  Benjamin Otte  <otte@gnome.org>
7078
7079         * gst/schedulers/entryscheduler.c:
7080         (gst_entry_scheduler_loop_wrapper),
7081         (gst_entry_scheduler_chain_wrapper),
7082         (gst_entry_scheduler_get_wrapper):
7083           reset the state when the cothread starts, so we don't get assertion
7084           failures on restarting of cothreads
7085
7086 2004-07-20  Benjamin Otte  <otte@gnome.org>
7087
7088         * gst/gstelement.c: (gst_element_link_pads_filtered):
7089           use correct sinkpad, if only sinkpad is specified, but not srcpad
7090           (fixes #147889)
7091         * gst/gstelement.c: (gst_element_set_state_func),
7092         (gst_element_change_state): ref/unref the element, signal handlers
7093         could get rid of the element otherwise
7094
7095 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7096
7097         * docs/random/ds/0.9-suggested-changes:
7098           Make note about renaming fixed-list to array.
7099         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7100         (_gst_value_initialize):
7101           Add array intersections.
7102         * testsuite/caps/intersect2.c: (main):
7103           Add test for array intersections.
7104
7105 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7106
7107         * configure.ac: back to cvs
7108
7109 === release 0.8.4 ===
7110
7111 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7112
7113         * configure.ac:
7114           releasing 0.8.4, "Paella"
7115           bump libtool versioning
7116
7117 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7118
7119         * po/LINGUAS:
7120         * po/ca.po:
7121           adding Catalan translation (Jordi Mallach)
7122
7123 2004-07-20  Wim Taymans  <wim@fluendo.com>
7124
7125         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7126         (handoff_identity), (main):
7127         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7128         (handoff_identity), (main):
7129         * testsuite/schedulers/Makefile.am:
7130         Added failing testcase for variant of #147894
7131
7132 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7133
7134         patch by: David Moore
7135
7136         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7137         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7138         (group_migrate_connected):
7139         * testsuite/schedulers/Makefile.am:
7140           fix for #142813 (Deadlock in optimal scheduler)
7141
7142 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7143
7144         patch by: Wim Taymans
7145
7146         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7147         (gst_opt_scheduler_schedule_run_queue),
7148         (gst_opt_scheduler_get_wrapper), (get_group),
7149         (group_migrate_connected):
7150         * testsuite/schedulers/Makefile.am:
7151           fix for #147819 (Add some checks in the opt scheduler)
7152
7153 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7154
7155         patch by: Benjamin Otte
7156
7157         * gst/gstelementfactory.c: (__gst_element_details_set):
7158           fix for #147929: running gst-register in non-utf8 locale can cause
7159           invalid registry
7160
7161 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7162
7163         patch by: Wim Taymans
7164
7165         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7166         (group_has_element), (element_get_reachables_func),
7167         (group_migrate_connected):
7168           fix for #147894 (opt scheduler decoupled elements mismanagement)
7169         * testsuite/schedulers/Makefile.am:
7170           testsuite app now passes
7171
7172 2004-07-19  Wim Taymans  <wim@fluendo.com>
7173
7174         * testsuite/schedulers/147819.c: (handoff_identity1),
7175         (handoff_identity2), (main):
7176         * testsuite/schedulers/Makefile.am:
7177         Added testcase for bug 147819
7178
7179 2004-07-19  Wim Taymans  <wim@fluendo.com>
7180
7181         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7182         (handoff_identity), (main):
7183         * testsuite/schedulers/Makefile.am:
7184         Added testcase for bug 147894
7185
7186 2004-07-16  Wim Taymans  <wim@fluendo.com>
7187
7188         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7189         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7190         * testsuite/schedulers/Makefile.am:
7191         Added testsuite for bug 142183 in its two incarnations. Refcount
7192         is not increased for scheduled elements and threadsafe properties
7193         mutexes are not properly unlocked.
7194
7195 2004-07-16  Wim Taymans  <wim@fluendo.com>
7196
7197         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7198         (create_chain), (destroy_chain), (create_group), (destroy_group),
7199         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7200         (group_dec_link), (gst_opt_scheduler_pad_link),
7201         (group_inc_links_for_element), (group_migrate_connected):
7202         Call group_inc_link with the proper src->sink ordering -- 
7203         break this, and we break sort_chain. patch from wingo for bug
7204         147713.
7205         Partially revert patch 1.89. When adding a loop based element to 
7206         the scheduler, the links to other groups are automatically followed
7207         and incremented. This should not happen because the bin will call
7208         pad_link explicitly for those connection, resulting in them counted 
7209         twice. Results in assertion failure on pipeline cleanup.
7210
7211 2004-07-16  Wim Taymans  <wim@fluendo.com>
7212
7213         * testsuite/schedulers/143777-2.c: (main):
7214         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7215         (main):
7216         * testsuite/schedulers/Makefile.am:
7217         Added cleanup code to testcase 143777-2.
7218         Added testcase to show bug 147713, does not really show the
7219         deadlock as I can't figure out how to trigger it, but it does
7220         demonstrate bad ordering in the scheduler.
7221
7222 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7223
7224         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7225           change strndup to g_strndup.  Fixes #147707
7226
7227 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7228
7229         * po/af.po:
7230         * po/az.po:
7231         * po/cs.po:
7232         * po/en_GB.po:
7233         * po/fr.po:
7234         * po/nl.po:
7235         * po/sr.po:
7236         * po/sv.po:
7237         * po/tr.po:
7238         * po/uk.po:
7239           updated translations
7240
7241 2004-07-16  Benjamin Otte  <otte@gnome.org>
7242
7243         * gst/gstvalue.c: (gst_greatest_common_divisor):
7244           use ints and return ints, fractions only use ints, too, so this
7245           avoids accidently casting multiplications to unsigned
7246         (gst_value_lcopy_fraction): it's ints, not uint32
7247         (gst_value_set_fraction): disallow minint, multiplying and negation
7248           are broken with it
7249         (gst_value_fraction_multiply): fix to make large numbers work and get
7250         rid of the assumption that the multiplication of two ints fits an
7251         int64 - dunno if that's true for all systems
7252         * testsuite/caps/Makefile.am:
7253         * testsuite/caps/fraction-multiply-and-zero.c:
7254         (check_multiplication), (check_equal), (zero_test), (main):
7255           add tests for all the stuff above
7256         * testsuite/caps/value_compare.c: (test1):
7257           fix comment
7258         * tests/.cvsignore:
7259         * testsuite/caps/.cvsignore:
7260         * testsuite/debug/.cvsignore:
7261         * testsuite/dlopen/.cvsignore:
7262         * testsuite/states/.cvsignore:
7263           get up to date
7264
7265 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7266
7267         * docs/manual/bins-api.xml:
7268         * docs/manual/factories.xml:
7269         * docs/manual/helloworld.xml:
7270         * docs/manual/links-api.xml: 
7271           fixes for out of date info, incorrect info and grammar
7272
7273 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7274
7275         * docs/manual/pads.xml:
7276         * docs/manual/pads-api.xml: grammar fix
7277
7278 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7279
7280         * docs/manual/pads-api.xml: typo + grammar fix
7281
7282 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7283
7284         * docs/gst/gstreamer-sections.txt:
7285           add new symbols
7286         * docs/gst/tmpl/gstelement.sgml:
7287         * docs/gst/tmpl/gstpad.sgml:
7288         * docs/gst/tmpl/gsttypes.sgml:
7289         * docs/gst/tmpl/gstvalue.sgml:
7290           update docs
7291         * gst/gststructure.c: (gst_structure_set_valist),
7292         (gst_structure_from_abbr), (gst_structure_to_abbr):
7293         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7294         (gst_greatest_common_divisor), (gst_value_init_fraction),
7295         (gst_value_copy_fraction), (gst_value_collect_fraction),
7296         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7297         (gst_value_get_fraction_numerator),
7298         (gst_value_get_fraction_denominator),
7299         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7300         (gst_value_deserialize_fraction),
7301         (gst_value_transform_fraction_string),
7302         (gst_value_transform_string_fraction),
7303         (gst_value_compare_fraction), (_gst_value_initialize):
7304         * gst/gstvalue.h:
7305           adding GstFraction GValue type, get/set, and multiply
7306         * testsuite/caps/Makefile.am:
7307         * testsuite/caps/fraction.c: (test), (main):
7308         * testsuite/caps/string-conversions.c: (main):
7309         * testsuite/caps/value_compare.c: (test1), (main):
7310           add regression tests for GstFraction
7311
7312 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7313         
7314         * docs/manual/init-api.xml: Grammar fix
7315
7316 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7317
7318         * docs/manual/states.xml: Fix inconsistent information
7319
7320 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7321
7322         * gst/gstelement.c: (gst_element_set_state):
7323         * gst/gstpad.c: (gst_pad_try_set_caps):
7324         * gst/gststructure.c:
7325         * gst/gstthread.c: (gst_thread_child_state_change):
7326         * gst/gstvalue.c: (gst_value_compare_double):
7327         * gst/gstvalue.h:
7328         * testsuite/parse/parse1.c: (main):
7329           debugging additions and style cleanups
7330
7331 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7332
7333         * docs/manual/states.xml: Grammar fix
7334
7335 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7336
7337         * docs/manual/pads.xml: Grammar fix
7338
7339 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7340
7341         * docs/manual/elements.xml: Fixed image reference
7342
7343 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7344
7345         * docs/manual/goals.xml: Grammar fix
7346
7347 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7348
7349         * docs/manual/motivation.xml:
7350         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7351
7352 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7353
7354         * docs/manual/motivation.xml: Fix spelling
7355
7356 2004-07-15  Benjamin Otte  <otte@gnome.org>
7357
7358         * gst/gstelement.h: 
7359           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7360           strings.
7361         * gst/gstelement.c (gst_element_class_init):
7362           GError's are boxed, not objects
7363         * gst/gstmarshal.list:
7364           update list for the fixed error signal
7365
7366 2004-07-14  Andy Wingo  <wingo@pobox.com>
7367
7368         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7369         there all along, but the function wasn't. (guile-gstreamer's build
7370         system uses the address of the function -- I wasn't actually
7371         trying to use this.)
7372
7373 2004-07-14  Andy Wingo  <wingo@pobox.com>
7374
7375         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7376         as gst_pad_proxy_pad_link) just link to every other pad when they
7377         are called. In the case where the graph has cycles, this will mean
7378         that a call to try_set_caps will recurse. Allow this recursion
7379         and return OK, while we wait for the first try_set_caps to give a
7380         proper return value.
7381         (gst_pad_link_call_link_functions): Since this function is the
7382         only one to set the NEGOTIATING flag on a pad, if the flag is set
7383         it means that the link functions have indirectly recursed. If this
7384         happens, error out to avoid infinite recursion and an eventual
7385         SEGV.
7386         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7387         (gst_pad_proxy_getcaps): Intersect the result with the template
7388         caps to ensure that the return value is valid.
7389
7390 2004-07-14  Andy Wingo  <wingo@pobox.com>
7391
7392         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7393         one refcount, the calling function is the owner of the buffer.
7394
7395 2004-07-14  Wim Taymans  <wim@fluendo.com>
7396
7397         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7398         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7399         Fix stupid warning when an element is to be migrated but
7400         is already migrated.
7401
7402 2004-07-14  Wim Taymans  <wim@fluendo.com>
7403
7404         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7405         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7406         Make sure that a single non-loop-based element does not 
7407         end up in a group. This fixes the testsuite again.
7408
7409 2004-07-14  Wim Taymans  <wim@fluendo.com>
7410
7411         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7412         (add_to_group), (merge_groups), (schedule_group),
7413         (gst_opt_scheduler_get_wrapper), (group_elements),
7414         (group_dec_link), (gst_opt_scheduler_pad_link),
7415         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7416         (gst_opt_scheduler_iterate):
7417         move isolated groups to a new chain.
7418         Emit a warning instead of segfaulting in some error cases.
7419         Fix a bug where the link count between groups was not calculated 
7420         correctly. Fixes #144510.
7421
7422 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7423         * gst/elements/gstfilesrc.c:
7424           Binary files support under Windows now OK
7425       
7426 2004-07-13  Benjamin Otte  <otte@gnome.org>
7427
7428           compatibility fixes for Solaris 8/gcc 2.95
7429         * configure.ac:
7430           include libintl libs in LDFLAGS
7431         * gstvalue.c (gst_value_deserialize_buffer):
7432           cast isxdigit stuff to int to silence compiler warning
7433
7434 2004-07-12  Benjamin Otte  <otte@gnome.org>
7435
7436         * gst/gsttypes.h:
7437           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7438           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7439           just causes support madness
7440         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7441           make it work without this
7442         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7443         (gst_file_index_commit):
7444           glib IO channels don't want binary mode
7445         * testsuite/bytestream/filepadsink.c: (main):
7446         * testsuite/bytestream/test1.c: (read_param_file):
7447           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7448
7449 2004-07-12  Benjamin Otte  <otte@gnome.org>
7450
7451         * gst/gstelement.c: (gst_element_class_init),
7452         (gst_element_set_state), (gst_element_set_state_func):
7453           virutalize gst_element_set_state, use set_state member in class
7454           struct that was already added in 0.7 for this.
7455         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7456         (gst_bin_change_state):
7457           make gst_bin_foreach works similar to other foreach functions, plug
7458           memleaks in it. Make functions using it work with the new approach.
7459           Document gst_bin_foreach, so it can be exported if we want to
7460         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7461           use virtualized set_state to make set_state on bins set the state of
7462           all its children.
7463
7464 2004-07-12  Benjamin Otte  <otte@gnome.org>
7465
7466         * configure.ac:
7467           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7468           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7469         * gst/gstpad.c: (gst_pad_alloc_buffer):
7470           allow buffer_alloc functions to return NULL and allocate a normal
7471           buffer in that case
7472
7473 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7474         * gst/elements/gstfilesink.c:
7475         * gst/elements/gstfilesrc.c:
7476         * gst/indexers/gstfileindex.c:
7477         * gst/gsttypes.h:
7478         * testsuite/bytestream/filepadsink.c:
7479         * testsuite/bytestream/test1.c:
7480           Handle binary files under Windows
7481
7482 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7483         * docs/manual/win32.xml:
7484         * win32/config.h:
7485         * win32/gst-register.vcproj:
7486         * win32/gstreamer.def:
7487           Update to another gettext public build
7488
7489 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7490         * gst/gstplugin.c:
7491           Fix an impossible C syntax
7492         * win32/config.h:
7493           Disable i18n under Windows for the moment
7494         * win32/gst-register.vcproj:
7495           Use this configuration
7496
7497 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7498         * docs/manual/quotes.xml:
7499           Keep the quotes file alive
7500         * docs/random/ds/0.9-suggested-changes:
7501           Add the suggestion of including a 'rowstride' as part of video
7502           format caps
7503
7504 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7505
7506         * gst/gstelement.c: (gst_element_set_state),
7507         (gst_element_change_state):
7508           d'oh.  Set PENDING state correctly before forcing bin to change.
7509         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7510         (gst_structure_parse_fixed_list):
7511         * gst/schedulers/gstoptimalscheduler.c:
7512         (gst_opt_scheduler_state_transition):
7513         * testsuite/states/parent.c: (main):
7514           remove comment now that it's fixed.
7515
7516 2004-07-11  Benjamin Otte  <otte@gnome.org>
7517
7518         * gst/gstclock.h:
7519           GST_SECOND shouldn't cause a conversion to unsigned.
7520         * testsuite/clock/.cvsignore:
7521         * testsuite/clock/Makefile.am:
7522         * testsuite/clock/signedness.c: (main):
7523           make sure it never will again
7524
7525 2004-07-11  Andy Wingo  <wingo@pobox.com>
7526
7527         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7528         whose state is higher than the bin state, raise the bin state to
7529         ensure that bin state := highest child state.
7530         
7531 2004-07-11  Andy Wingo  <wingo@pobox.com>
7532
7533         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7534         procedure on the children of a bin. Assumes that the procedure can
7535         change the set of children.
7536         (set_kid_state_func): New static function.
7537         (gst_bin_change_state): Use gst_bin_foreach to call
7538         set_kid_state_func. Fixes a bug: if a child had a state-change
7539         handler that removes it from the bin, there would be a segfault.
7540         Hopefully it should also work in the case where the state-change
7541         handler on one child adds or removes other children. In any case,
7542         fixes should go to gst_bin_foreach.
7543
7544 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7545
7546         * gst/gstelement.c: (gst_element_set_state):
7547           compatibility fix for latest plugins release.  Change loop back
7548           to while {}
7549
7550 2004-07-09  Wim Taymans  <wim@fluendo.com>
7551
7552         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7553         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7554         (gst_thread_main_loop):
7555         Since remove is virtual in GstBin we must not assume the 
7556         elements GList to have anothing useful.
7557         Add some more logging to GstThread and be a bit more paranoid
7558         when resetting the scheduler.
7559         Set the state of the bin to NULL before removing the children.
7560
7561 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7562
7563         * testsuite/threads/Makefile.am:
7564         * testsuite/threads/threadg.c:
7565           added test to check if problem when removing all elements from a
7566           GstThread before setting GstThread state to NULL
7567
7568 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7569
7570         * docs/gst/tmpl/gstelement.sgml:
7571         * docs/gst/tmpl/gsttypes.sgml:
7572         * gst/gstbin.c: (gst_bin_change_state):
7573         * gst/gstelement.c: (gst_element_set_state),
7574         (gst_element_change_state):
7575           rework so that for bins we try to set the state on all children
7576           as well even if the bin is in the correct state already.
7577           change while to do so at least one iteration is done.
7578           For regular elements, we fall back to the previous behaviour for
7579           now since we first need a new plugins release.
7580         * testsuite/states/parent.c: (main):
7581           test for this case
7582           Fixes #123774
7583
7584 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7585
7586         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7587         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7588         (gst_queue_release_locks), (gst_queue_change_state),
7589         (gst_queue_set_property):
7590           add proper lock debugging.  Change dispose to finalize, since
7591           we're freeing mutexes and other stuff which should happen only once.
7592
7593 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7594
7595         * docs/gst/tmpl/gstelement.sgml:
7596         * docs/gst/tmpl/gstplugin.sgml:
7597         * docs/gst/tmpl/gsttypes.sgml:
7598         * docs/pwg/building-state.xml:
7599         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7600         * gst/gstelement.c: (gst_element_change_state):
7601         * gst/gstthread.c: (gst_thread_change_state):
7602           catch wrong state changes in element base class.
7603
7604 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7605
7606         * gst/gstinfo.h:
7607           clean up layout a little.
7608
7609 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7610
7611         * configure.ac:
7612         * testsuite/Makefile.am:
7613         * testsuite/states/Makefile.am:
7614         * testsuite/states/parent.c: (main):
7615           re-enable states testsuite dir.  Add test for state changes and
7616           parent behaviour
7617
7618 2004-07-09  Wim Taymans  <wim@fluendo.com>
7619
7620         * gst/schedulers/gstoptimalscheduler.c:
7621         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7622         (element_get_reachables_func), (element_get_reachables),
7623         (debug_element), (rechain_group), (group_migrate_connected),
7624         (gst_opt_scheduler_pad_unlink):
7625         Do not try to migrate decoupled elements to a new group since
7626         they are not added to groups.
7627
7628 2004-07-08  Benjamin Otte  <otte@gnome.org>
7629
7630         * gst/gstelement.c: (gst_element_error_func):
7631           make reentrant (= allow removing elements in error handler)
7632
7633 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7634
7635         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7636         (gst_pad_send_event), (gst_pad_call_chain_function):
7637           events sent to elements below PAUSED cannot be handled, so
7638           don't try to
7639
7640 2004-07-08  Wim Taymans  <wim@fluendo.com>
7641
7642         * gst/schedulers/gstoptimalscheduler.c:
7643         (chain_recursively_migrate_group), (create_group),
7644         (schedule_group), (gst_opt_scheduler_pad_link),
7645         (group_elements_set_visited), (element_get_reachables_func),
7646         (element_get_reachables), (group_can_reach_group), (debug_element),
7647         (rechain_group), (group_migrate_connected),
7648         (gst_opt_scheduler_pad_unlink):
7649         * testsuite/schedulers/Makefile.am:
7650         Implemented group splitting and rechaining.
7651         Fixes 143777 and 143777-2 in the testsuite.
7652
7653 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7654
7655         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7656           extra debugging
7657         * gst/gstevent.h:
7658         * gst/gstinfo.c: (gst_debug_log_default):
7659           print time nicely.  add thread pointer until someone figures out
7660           a completely portable way of getting at thread id's.
7661         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
7662         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
7663         (gst_pad_call_chain_function):
7664           extra debugging
7665         * gst/schedulers/gstoptimalscheduler.c:
7666         (get_group_schedule_function), (loop_group_schedule_function),
7667         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
7668         (pad_clear_queued), (gst_opt_scheduler_iterate):
7669           rename BUFPEN and friends to DATAPEN since that's what they are.
7670
7671 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7672
7673         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7674         * gst/gstbuffer.h:
7675         * gst/gstpad.c:
7676           cleanups and debugging
7677
7678 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7679
7680         * configure.ac:
7681         * gst/gstvalue.c: (gst_value_compare_enum),
7682         (gst_value_serialize_enum), (gst_value_deserialize_enum),
7683         (gst_value_can_compare), (gst_value_compare):
7684         * testsuite/Makefile.am:
7685         * testsuite/enumcaps/Makefile.am:
7686         * testsuite/enumcaps/enumcaps.c:
7687           Fix enum serialization, deserialization, comparison in caps, add
7688           a test to ensure that this continues working in the future.
7689
7690 2004-07-06  David Schleef  <ds@schleef.org>
7691
7692         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7693         Fix memleak.
7694
7695 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7696
7697         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
7698         * gst/gstplugin.h:
7699         * gst/registries/gstxmlregistry.c:
7700         (plugin_times_older_than_recurse), (plugin_times_older_than),
7701         (gst_xml_registry_parse_padtemplate):
7702           only rebuild registry when actual plugins have a newer time than
7703           the registry.  Fixes #145520
7704
7705 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7706
7707         * docs/manual/manual.xml:
7708         * docs/manual/win32.xml:
7709           add chapter on win32 building.  fixes #142422
7710
7711 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7712
7713         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
7714
7715         * gst/autoplug/gstspider.c: (gst_spider_init),
7716         (gst_spider_dispose):
7717           fix spider memleaks.  fixes #137863
7718
7719 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7720
7721         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
7722
7723         * gst/schedulers/gstoptimalscheduler.c:
7724         (gst_opt_scheduler_pad_unlink):
7725           fix SIGBUS error, fixes #145338
7726
7727 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7728
7729         * gst/gstobject.c: (gst_object_replace):
7730         * gst/gstscheduler.c: (gst_scheduler_get_clock):
7731         * gst/gstsystemclock.c: (gst_system_clock_obtain):
7732           clean up clock lifecycle.  Fixes #109831
7733
7734 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7735
7736         * po/LINGUAS:
7737         * po/cs.po:
7738           added Czech translation (Miloslav Trmac)
7739
7740 2004-07-04  David Schleef  <ds@schleef.org>
7741
7742         * tools/Makefile.am:
7743         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
7744
7745 2004-07-04  David Schleef  <ds@schleef.org>
7746
7747         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
7748
7749 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7750
7751         * gst/gstbin.c: (gst_bin_restore_thyself):
7752           chain to parent restore so the bins get restored correctly
7753           in the editor
7754
7755 2004-07-03  David Schleef  <ds@schleef.org>
7756
7757         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7758         Actually do something in these functions, like before the big
7759         caps change.  (bug #145137)
7760
7761 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7762
7763         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
7764         (gst_element_get_compatible_pad_filtered):
7765         * gst/gstthread.c: (gst_thread_main_loop):
7766           more debugging
7767
7768 2004-07-02  David Schleef  <ds@schleef.org>
7769
7770         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
7771         * gst/gstobject.h:
7772         * gst/gstparse.h:
7773         * gst/gsttrace.h:
7774         * gst/gstxml.h:
7775
7776 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7777
7778         * gst/gstpad.c: (gst_pad_check_schedulers),
7779         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7780         (gst_pad_link_prepare):
7781           revert until testsuite is fixed
7782
7783 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7784
7785         * testsuite/Makefile.am:
7786         * testsuite/caps/filtercaps.c: (main):
7787         * testsuite/clock/clock1.c: (main):
7788         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
7789           fix some more tests
7790
7791 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7792
7793         * testsuite/cleanup/cleanup1.c: (create_pipeline):
7794         * testsuite/cleanup/cleanup2.c: (create_pipeline):
7795         * testsuite/cleanup/cleanup4.c: (main):
7796           fix testsuite
7797
7798 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7799
7800         * libs/gst/control/control.c:
7801         * libs/gst/control/dparam.c:
7802         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
7803         * libs/gst/control/dparammanager.c:
7804         * libs/gst/control/dparammanager.h:
7805         * testsuite/dynparams/Makefile.am:
7806         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
7807         (gst_dptest_change_state), (gst_dptest_chain), (main):
7808           fix testcase for dparams
7809           add debugging category
7810
7811 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7812
7813         * testsuite/Rules:
7814           change path
7815
7816 2004-07-02  Benjamin Otte  <otte@gnome.org>
7817
7818         * tests/.cvsignore:
7819         * tests/Makefile.am:
7820         * tests/mass_elements.c: (gst_get_current_time), (main):
7821           add simple benchmark to test various speeds of fakesrc ! identity !
7822           identity ! ... ! fakesink.
7823           Usage: mass_elements [num_identities] [num_buffers]
7824           If not specified they default to 1000.
7825
7826 2004-07-02  Benjamin Otte  <otte@gnome.org>
7827
7828         * gst/gstpad.c: (gst_pad_check_schedulers),
7829         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7830         (gst_pad_link_prepare):
7831           check that pads that get linked belong to the same manager. The old
7832           code allowed linking elements before putting them into bins, so it
7833           worked to link them and then put them in different threads, which
7834           lead to weird behaviour.
7835           Since this effectively disallows linking elements before putting
7836           them in a bin, some applications might not work after this and error
7837           out. If these applications are too critical, we might need to revert
7838           that patch. Please test this before the next release...
7839
7840 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7841
7842         * gst/gstpad.c: (gst_pad_get_caps):
7843           throw an error if the getcaps function does not return a subset of
7844           the template caps.
7845         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
7846           make disconts without position info an error in debugging
7847         * tests/spidey_bench.c: (handoff), (main):
7848           don't count first try when averaging
7849
7850 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7851
7852         * gst/gstplugin.c: (gst_plugin_load_file):
7853           figure out problem with dynamic test
7854
7855 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7856
7857         * docs/gst/Makefile.am:
7858           fix docs build
7859
7860 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7861
7862         * po/POTFILES.in:
7863         * po/af.po:
7864         * po/az.po:
7865         * po/en_GB.po:
7866         * po/fr.po:
7867         * po/nl.po:
7868         * po/sr.po:
7869         * po/sv.po:
7870         * po/tr.po:
7871         * po/uk.po:
7872         * tools/gst-register.c: (plugin_added_func), (main):
7873           i18n-ize -register, fix plural
7874
7875 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7876
7877         * gst/elements/gstidentity.c: (gst_identity_class_init),
7878         (gst_identity_init), (gst_identity_chain),
7879         (gst_identity_set_property), (gst_identity_get_property):
7880         * gst/elements/gstidentity.h:
7881           check for perfect stream
7882
7883 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7884
7885         * gst/elements/gstidentity.c: (gst_identity_chain):
7886           print offset_end
7887
7888 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7889
7890         * docs/gst/Makefile.am:
7891         * docs/gst/gstreamer-docs.sgml:
7892           doc fixes
7893
7894 2004-06-24  David Schleef  <ds@schleef.org>
7895
7896         * autogen.sh:  Remove call to env, since the buildbot isn't
7897         broken anymore.
7898
7899 2004-06-24  Wim Taymans  <wim@fluendo.com>
7900
7901         * gst/elements/Makefile.am:
7902         * gst/elements/gstelements.c:
7903         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
7904         (gst_multifdsink_class_init), (gst_multifdsink_init),
7905         (gst_multifdsink_add), (gst_multifdsink_remove),
7906         (gst_multifdsink_clear), (gst_multifdsink_chain),
7907         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
7908         * gst/elements/gstmultifdsink.h:
7909         Added an element that writes to multiple filedescriptors at once.
7910
7911 2004-06-24  Benjamin Otte  <otte@gnome.org>
7912
7913         * gst/parse/grammar.y:
7914           don't try to link elements before they have been added to bins
7915
7916 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7917
7918         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
7919         (gst_file_pad_get_length):
7920         * libs/gst/bytestream/filepad.h:
7921           add 2 new functions
7922
7923 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7924
7925         * docs/gst/gstreamer-sections.txt:
7926         remove from docs, the define that Benjamin removed from gstelement.h
7927
7928 2004-06-22  Benjamin Otte  <otte@gnome.org>
7929
7930         * gst/gstelement.h:
7931           remove define that referenced a nonexisting GstElement struct member
7932
7933 2004-06-20  Benjamin Otte  <otte@gnome.org>
7934
7935         * gst/gstdata.c: (gst_data_is_writable):
7936           whoops, return values were wrong, so writable data was marked as
7937           non-writable and vice versa. (fixes #143953, spotted by Francis
7938           Labonte)
7939           Shows how rarely we need to copy data ;)
7940
7941 2004-06-20  Benjamin Otte  <otte@gnome.org>
7942
7943         * testsuite/schedulers/.cvsignore:
7944         * testsuite/schedulers/Makefile.am:
7945         * testsuite/schedulers/143777-2.c: (main):
7946           add test for opt breakage in bug #143777
7947
7948 2004-06-20  Benjamin Otte  <otte@gnome.org>
7949
7950         * gst/gstpad.c: (gst_pad_call_chain_function):
7951           check for if we were unlinked while inside the chainfunction (fixes
7952           entrygthread having issues with #143777)
7953         * testsuite/schedulers/143777.c: (main):
7954         * testsuite/schedulers/Makefile.am:
7955           add a test for that fix
7956
7957 2004-06-20  Benjamin Otte  <otte@gnome.org>
7958
7959         * gst/gstvalue.c: (gst_value_set_int_range):
7960           test that start is smaller then end
7961         * libs/gst/bytestream/Makefile.am:
7962         * libs/gst/bytestream/filepad.c: 
7963         * libs/gst/bytestream/filepad.h:
7964           add GstFilePad - a pad that behaves like a FILE*
7965         * testsuite/bytestream/.cvsignore:
7966         * testsuite/bytestream/Makefile.am:
7967         * testsuite/bytestream/filepadsink.c: 
7968           test for the GstFilePad
7969
7970 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7971
7972         * gst/elements/gstidentity.c: (gst_identity_class_init),
7973         (gst_identity_init), (gst_identity_set_clock),
7974         (gst_identity_chain), (gst_identity_set_property),
7975         (gst_identity_get_property):
7976         * gst/elements/gstidentity.h:
7977         * gst/gstclock.c: (gst_clock_id_wait):
7978           add a "sync" property to sync to the clock
7979
7980 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7981
7982         * gst/gstelementfactory.c: (gst_element_factory_create):
7983           make the freakin "elementfactory bla has no type" message more
7984           useful. So we actually can do something when someone shows up
7985           complaining about it.
7986
7987 2004-06-15  Johan Dahlin  <johan@gnome.org>
7988
7989         * tools/gst-inspect.c (main): Fallback to plugin if no element is
7990         found. This matches the old behavior better. Thanks to Thomas for
7991         pointing out.
7992
7993 2004-06-14  David Schleef  <ds@schleef.org>
7994
7995         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
7996         -fomit-frame-pointer.  Appears to generate correct code in
7997         other cases as well.
7998
7999 2004-06-14  Johan Dahlin  <johan@gnome.org>
8000
8001         * tools/gst-inspect.c (main): Add two new command line options: -a
8002         to print all elements and -n to print the name on each line. Also
8003         fix some error reporting.
8004         (main): Simplify, remove -n and always print names if -a is specified
8005
8006 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
8007
8008         * win32/gstconfig.h:
8009         * win32/GSTreamer.vcproj:
8010         * win32/Makefile:
8011         * gst/gstconfig.h.in:
8012         * gst/gst.h:
8013         * gst/gstbin.h:
8014         * gst/gstelement.h:
8015         * gst/gstevent.h:
8016         * gst/gstobject.h:
8017         * gst/gstpad.h:
8018         * docs/gst/gstreamer-sections.txt:
8019         * docs/gst/tmpl/gstconfig.sgml:
8020           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
8021
8022 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8023         * docs/gst/gstreamer-sections.txt:
8024         * docs/gst/tmpl/gstconfig.sgml:
8025         Add the GSTREAMER_EXPORT macro to the docs
8026
8027 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8028
8029         * tools/gst-compprep.c: (handle_xmlerror), (main):
8030         Add a check for the version that introduced SetStructuredError to fix
8031         the build on FC1
8032
8033 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8034
8035         * win32/msvc71.sln:
8036         * win32/testsuite/:
8037           prepare to compile the testsuite with MSVC
8038
8039 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8040
8041         * docs/manual/win32.xml:
8042           attempt to transform the Win32 README into an XML doc
8043
8044 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8045
8046         * gst/gst.c:
8047         * gst/gstbin.*:
8048         * gst/config.h.in:
8049         * gst/gstelement.*:
8050         * gst/gstevent.h:
8051         * gst/gstobject.*:
8052         * gst/gstpad.h:
8053         * tools/gst-register.c:
8054         * win32/gstreamer.def:
8055           extern symbols are now exported for the Windows DLL
8056
8057 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8058
8059         * gst/gstinfo.h:
8060           fix a problem to enable/disable DEBUG under MSVC
8061
8062 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8063
8064         * win32/:
8065           enable more debug code in DEBUG build
8066
8067 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8068
8069         * win32/config.h:
8070         * gst/gst-i18n-app.h:
8071           enable NLS under Windows
8072
8073 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8074         * tools/gst-compprep.c: (handle_xmlerror), (main):
8075           Make an error that baffled me a bit clearer
8076
8077 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8078
8079         * gst/gstqueue.c:
8080           don't use g_queue_get_length () because it's 2.4, use ->length
8081
8082 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8083
8084         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8085
8086         * tools/gst-inspect.c: (print_signal_info):
8087           don't free random data twice. (fixes #144185)
8088
8089 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8090
8091         * gst/gstqueue.c:
8092         * gst/gstqueue.h:
8093           fix removing from the wrong queue on event timeout
8094           fix disposing of the event queue by casting correctly
8095           add mutexes for handling the event queue
8096           someone was sleeping when fixing queue last time around :)
8097
8098 2004-06-10  Johan Dahlin  <johan@gnome.org>
8099
8100         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8101         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8102
8103 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8104
8105         * docs/random/gdp:
8106         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8107         * libs/gst/dataprotocol/dataprotocol.c:
8108         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8109         (gst_dp_buffer_from_header):
8110         * libs/gst/dataprotocol/dataprotocol.h:
8111         * libs/gst/dataprotocol/dp-private.h:
8112           rev version to 0.1, add buffer flags and copy them
8113
8114 2004-06-09  Johan Dahlin  <johan@gnome.org>
8115
8116         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8117         the flags from the buffer we're copying.
8118
8119 2004-06-09  Wim Taymans  <wim@fluendo.com>
8120
8121         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8122         * gst/elements/gstidentity.c: (gst_identity_init),
8123         (gst_identity_chain):
8124         Print more buffer info in fakesink.
8125         Make identity output similar to fakesink.
8126
8127 2004-06-07  Daniel Gazard  <dany42@free.fr>
8128
8129         reviewed by Benjamin Otte  <otte@gnome.org>
8130
8131         * configure.ac:
8132           fix cross compiling not working. (fixes #143741)
8133
8134 2004-06-07  Benjamin Otte  <otte@gnome.org>
8135
8136         * gst/gstelement.c: (gst_element_set_time_delay):
8137           add failure check
8138         * gst/gstinfo.h:
8139           put brackets around macro arguments of GST_TIME_ARGS, add note to
8140           move it to correct header in 0.9
8141
8142 2004-06-07  Benjamin Otte  <otte@gnome.org>
8143
8144         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8145         (gst_file_index_load), (_file_index_id_save_entries),
8146         (gst_file_index_commit), (gst_file_index_add_association),
8147         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8148         (gst_file_index_plugin_init):
8149           make debugging use a default category
8150
8151 2004-06-06  David Moore  <dcm@acm.org>
8152
8153         reviewed by Benjamin Otte  <otte@gnome.org>
8154
8155         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8156         (gst_fdsrc_change_state):
8157           reset offset counter when going READY => PAUSED. (fixes #142903)
8158
8159 2004-06-06  ed@catmur.co.uk
8160
8161         reviewed by Benjamin Otte  <otte@gnome.org>
8162
8163         * gst/registries/gstxmlregistry.c:
8164         (gst_xml_registry_rebuild_recurse):
8165           don't rely on g_dir_open to figure out if a file is a directory, use
8166           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8167           directories. (fixes #142850)
8168
8169 2004-06-06  Benjamin Otte  <otte@gnome.org>
8170
8171         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8172           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8173         * libs/gst/bytestream/adapter.c:
8174         * libs/gst/bytestream/adapter.h:
8175           fix copyright in header and typo in debugging category name
8176
8177 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8178
8179         * configure.ac:
8180           bump nano to cvs
8181
8182 === release 0.8.3 ===
8183
8184 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8185
8186         * configure.ac:
8187           update libtool versioning
8188           do a new release
8189         * docs/gst/tmpl/gstelement.sgml:
8190         * docs/gst/tmpl/gsttypes.sgml:
8191         * gst/gstinfo.c: (_gst_debug_init):
8192           put back GST_CAT_DATAFLOW to fix API breakage
8193
8194 2004-06-04  David Schleef  <ds@schleef.org>
8195
8196         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8197
8198 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8199
8200         * configure.ac:
8201           bump nano to cvs
8202
8203 === release 0.8.2 ===
8204
8205 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8206
8207         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8208           check GST_DEBUG environment variable which is parsed the same way
8209           as --gst-debug=
8210
8211 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8212
8213         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8214                             gstmd5sink.c gstshaper.c gsttee.c
8215                             gsttypefindelement.c
8216         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8217
8218           - removing trailing commas at end of enums
8219             it is correct C99 code but C90 compilers would complain
8220             (AIX, Forte, ...)
8221             ('should' fix #143290, at least partially)
8222
8223 2004-05-27  Wim Taymans  <wim@fluendo.com>
8224
8225         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8226         (chain_group_set_enabled), (create_group), (add_to_group),
8227         (merge_groups), (setup_group_scheduler), (group_elements),
8228         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8229         Don't try to follow the pad connections with other groups
8230         when a loop based element is added to the scheduler because
8231         the bin will inform the scheduler about the pad links a little
8232         later.
8233
8234 2004-05-27  Wim Taymans  <wim@fluendo.com>
8235
8236         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8237         (remove_from_chain), (chain_group_set_enabled),
8238         (setup_group_scheduler), (group_element_set_enabled),
8239         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8240         (gst_opt_scheduler_show):
8241         Elements without a group can do a state change as well, just wait
8242         with the setup of the scheduling function when it is added to a
8243         chain.
8244
8245 2004-05-27  Wim Taymans  <wim@fluendo.com>
8246
8247         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8248         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8249         (merge_groups), (setup_group_scheduler),
8250         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8251         (gst_opt_scheduler_show):
8252         Fixes to maintain internal consistency of the scheduler data
8253         structures. 
8254          - adding an enabled group to a chain should increment the
8255            number of enabled elements in that chain.
8256          - removing an enabled group from a chain could disable the
8257            chain.
8258          - removing a disabled group from a chain could enable the
8259            chain.
8260          - add g_assert when internal inconsistency is detected.
8261          - adding an element to a group could increase the number of
8262            links this group has with other groups.
8263          - merging two groups also merges the chains.
8264          - also show group links in the _show method.
8265            
8266
8267 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8268
8269         * gst/gstcaps.c: (gst_caps_structure_simplify):
8270           don't print error messages when there is no error
8271         * gst/gstvalue.c: (gst_value_compare_int_range):
8272           compare the second value, too
8273         * testsuite/caps/Makefile.am:
8274         * testsuite/caps/random.c: (assert_on_error), (main):
8275           add tests to make sure the two things above are checked for
8276
8277 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8278
8279         * configure.ac:
8280         * libs/gst/dataprotocol/Makefile.am:
8281         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8282         * libs/gst/dataprotocol/dataprotocol.h:
8283           wrap header in GST_ENABLE_NEW.  make code use it
8284
8285 2004-05-23  Johan Dahlin  <johan@gnome.org>
8286
8287         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8288         so verbose and print GstElement signal names all the time.
8289
8290 2004-05-22  David Schleef  <ds@schleef.org>
8291
8292         * gst/registries/gstxmlregistry.c:
8293         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8294         (bug #142957)
8295
8296 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8297
8298         * configure.ac:
8299           scrub cflags for glib2 so gcc doesn't complain when glib is in
8300           /usr/local
8301
8302 2004-05-21  Johan Dahlin  <johan@gnome.org>
8303
8304         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8305         __GNUC__, patch from Brian Cameron, fixes bug #142804
8306
8307 2004-05-20  David Schleef  <ds@schleef.org>
8308
8309         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8310         comparison code.  (bug #142819)
8311
8312 2004-05-20  Wim Taymans  <wim@fluendo.com>
8313
8314         * gst/gstbuffer.c: (gst_buffer_default_copy):
8315         * gst/gstbuffer.h:
8316         Added Comment to a flag.
8317         copy relevant flags in _buffer_copy.
8318
8319 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8320
8321         reviewed by: Wim Taymans <wim at fluendo dot com>
8322
8323         * gst/gstbuffer.h:
8324           add GST_BUFFER_IN_CAPS buffer flag
8325         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8326         (gst_structure_parse_any_list), (gst_structure_parse_list),
8327         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8328         * gst/gstvalue.c: (gst_value_serialize_any_list),
8329         (gst_value_transform_any_list_string),
8330         (gst_value_list_prepend_value), (gst_value_list_append_value),
8331         (gst_value_list_get_size), (gst_value_list_get_value),
8332         (gst_value_transform_list_string),
8333         (gst_value_transform_fixed_list_string),
8334         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8335         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8336         (_gst_value_initialize):
8337         * gst/gstvalue.h:
8338           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8339           < , > as a format.
8340         * testsuite/caps/string-conversions.c: (main):
8341           add regression tests for < >
8342
8343 2004-05-20  Johan Dahlin  <johan@gnome.org>
8344
8345         * docs/gst/Makefile.am (all-local): Re-add
8346
8347 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8348
8349         * docs/gst/Makefile.am:
8350         * docs/gst/gstreamer-docs.sgml:
8351         * docs/libs/Makefile.am:
8352         * docs/libs/gstreamer-libs-docs.sgml:
8353           fix distcheck issues
8354
8355 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8356
8357         * libs/gst/dataprotocol/Makefile.am:
8358           add to autotest
8359
8360 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8361
8362         * libs/gst/dataprotocol/Makefile.am:
8363         * libs/gst/dataprotocol/dataprotocol.c:
8364         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8365         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8366         * libs/gst/dataprotocol/dp-private.h:
8367           use GST macros to read/write fixed length ints
8368           add some more asserts
8369
8370 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8371
8372         * docs/libs/gstreamer-libs-docs.sgml:
8373         * docs/libs/gstreamer-libs-sections.txt:
8374           remove idct and putbits
8375         * configure.ac:
8376         * docs/libs/tmpl/gstdataprotocol.sgml:
8377         * libs/gst/Makefile.am:
8378         * libs/gst/dataprotocol/Makefile.am:
8379         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8380         (buffer_test), (caps_test), (event_test), (main):
8381         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8382         (gst_dp_dump_byte_array), (gst_dp_init),
8383         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8384         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8385         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8386         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8387         (gst_dp_validate_header), (gst_dp_validate_payload),
8388         (gst_dp_validate_packet), (plugin_init):
8389         * libs/gst/dataprotocol/dataprotocol.h:
8390         * libs/gst/dataprotocol/dp-private.h:
8391           add dataprotocol
8392
8393 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8394
8395         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8396           fix int variable deserialization and add a helper so we can actually
8397           debug this.
8398
8399 2004-05-18  David Schleef  <ds@schleef.org>
8400
8401         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8402           argv[0].  Calling yourself is probably not the best way to
8403           construct a test like this, btw.
8404
8405 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8406
8407         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8408           don't claim to be more intelligent than a scheduler when the
8409           scheduler claims the pipeline is stopped
8410         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8411         (safe_cothread_destroy),
8412         (gst_entry_scheduler_remove_all_cothreads),
8413         (gst_entry_scheduler_reset), (_remove_cothread),
8414         (gst_entry_scheduler_state_transition):
8415           hold off cothread destruction if we're not in main cothread
8416         * configure.ac:
8417         * testsuite/Makefile.am:
8418           add new test dir
8419         * testsuite/schedulers/.cvsignore:
8420         * testsuite/schedulers/Makefile.am:
8421           add tests
8422         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8423           check relinking and adding/removing elements from a running pipeline
8424         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8425           check unlinking in a running pipeline
8426         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8427           check unreffing a running pipeline
8428         * testsuite/schedulers/useless_iteration.c: (main):
8429           check iterating a pipeline that contains running threads works
8430
8431 2004-05-18  David Schleef  <ds@schleef.org>
8432
8433         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8434           is false.
8435
8436 2004-05-18  Wim Taymans  <wim@fluendo.com>
8437
8438         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8439         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8440         Fixed an error introduced with patch for 1.63. When setting
8441         a get based element as the entry point in a group, make sure
8442         to mark the group as GET based.
8443
8444 2004-05-18  Wim Taymans  <wim@fluendo.com>
8445
8446         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8447         (setup_group_scheduler), (loop_group_schedule_function),
8448         (gst_opt_scheduler_pad_link):
8449         Added some more debug info and fixed a bug where the group
8450         type was set to LOOP but it was in fact unknown.
8451
8452 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8453
8454         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8455           make resetting scheduler work twice in a row
8456
8457 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8458
8459         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8460         (CREATE_USERIALIZATION), (_gst_value_initialize),
8461         (gst_value_compare_float), (gst_value_serialize_float),
8462         (gst_value_deserialize_float), (gst_value_compare_enum),
8463         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8464           add serialization and comparison functions for long, int64, enum and
8465           float values
8466         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8467           use best serialization function in type hierarchy instead of only a
8468           matching one. This is required for enums to work.
8469         * gst/parse/grammar.y:
8470           use gst_caps_deserialize
8471         * testsuite/parse/Makefile.am:
8472           parse1 now works
8473         * testsuite/parse/parse1.c: (main):
8474           remove aggregator check, aggregator is broken, this test works now
8475           but fails because of bug #138012
8476         * testsuite/parse/parse2.c: (main):
8477           s/xvideosink/xvimagesink - this test looks a lot like we should
8478           disable it
8479
8480 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8481
8482         * gst/gstelement.c: (gst_element_class_init):
8483           whoops, store the signal id correctly
8484         * gst/schedulers/gstbasicscheduler.c:
8485         (gst_basic_scheduler_chain_wrapper):
8486           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8487           chain function isn't linked
8488
8489 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8490         * configure.ac:
8491         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8492         support until we decide where the flags should be used
8493         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8494         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8495         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8496         Output refused caps in the debug info
8497
8498 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8499
8500         * gst/elements/gstidentity.c: (gst_identity_chain):
8501           add duration debug
8502         * gst/gstinfo.c: (gst_debug_log_default):
8503           add timestamp
8504
8505 2004-05-13  Benjamin Otte  <otte@gnome.org>
8506
8507         * gst/gstpipeline.c: (gst_pipeline_dispose),
8508         (gst_pipeline_change_state):
8509           call gst_scheduler_reset on dispose (fixes #141416)
8510
8511 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8512
8513         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8514           compute mapsize correctly
8515         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8516           use correct datatypes when calling a varargs function
8517         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8518           push a DISCONT event as first thing
8519         * gst/gst_private.h:
8520         * gst/gstinfo.c: (_gst_debug_init):
8521           remove GST_DATAFLOW debugging category
8522         * gst/gstbin.c: (gst_bin_iterate):
8523           use GST_SCHEDULING category
8524         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8525         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8526         (gst_pad_call_get_function):
8527           add GST_DATAFLOW to easily track flow of buffers or events.
8528         * gst/gstqueue.c: (gst_queue_get_type),
8529         (gst_queue_handle_pending_events), (gst_queue_chain),
8530         (gst_queue_get), (gst_queue_handle_src_event):
8531           use own static debugging category GST_DATAFLOW for dataflow,
8532           use DEBUG category for showing which path events go, use LOG
8533           category for buffers.
8534
8535 2004-05-10  David Schleef  <ds@schleef.org>
8536
8537         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8538
8539 2004-05-10  David Schleef  <ds@schleef.org>
8540
8541         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8542         symbols, because otherwise we don't know what they are.  Thanks,
8543         the GStreamer team.
8544         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8545
8546 2004-05-10  David Schleef  <ds@schleef.org>
8547
8548         (from Steve Lhomme)
8549         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8550         are deleted.  Fix.
8551         * win32/Makefile.inspect:
8552         * win32/Makefile.launch:
8553         * win32/Makefile.register:
8554
8555 2004-05-10  David Schleef  <ds@schleef.org>
8556
8557         * gst/gstinfo.h: Add missing inline function.
8558         * gst/gsttrace.c: add include
8559         * gst/parse/grammar.y: remove unused code
8560         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8561         more portable.
8562         * tools/gst-register.c: wrap unistd.h
8563         
8564         More additions/fixes from Steve for the MSVC build.
8565         * win32/GStreamer.vcproj:
8566         * win32/Makefile:
8567         * win32/Makefile.inspect:
8568         * win32/Makefile.launch:
8569         * win32/Makefile.register:
8570         * win32/README.txt:
8571         * win32/gst-inspect.vcproj:
8572         * win32/gst-launch.vcproj:
8573         * win32/gst-register.vcproj:
8574         * win32/gstbytestream.def:
8575         * win32/gstbytestream.vcproj:
8576         * win32/gstconfig.h:
8577         * win32/gstelements.def:
8578         * win32/gstelements.vcproj:
8579         * win32/gstenumtypes.c:
8580         * win32/gstenumtypes.h:
8581         * win32/gstoptimalscheduler.def:
8582         * win32/gstoptimalscheduler.vcproj:
8583         * win32/gstreamer.def:
8584         * win32/gstspider.def:
8585         * win32/gstspider.vcproj:
8586         * win32/gstversion.h:
8587         * win32/msvc71.sln:
8588
8589 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8590
8591         * gst/gstelement.c: (gst_element_class_init),
8592         (gst_element_no_more_pads):
8593         * gst/gstelement.h:
8594           add gst_element_no_more_pads and the "no-more-pads" signal
8595
8596 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8597
8598         * gst/gstregistry.c: (gst_registry_add_plugin):
8599           refuse to add plugins when a plugin with same name is already
8600           registered. Fixes a bunch of "How to remove plugins?" issues.
8601           May lead to other problems though, let's test
8602
8603 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8604
8605         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8606         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8607         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8608
8609 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8610
8611         * tests/Makefile.am: fix am16 issue
8612
8613 2004-05-09  Benjamin Otte  <otte@gnome.org>
8614
8615         * libs/gst/bytestream/Makefile.am:
8616           we should indeed add .c files to makefiles or they won't be built
8617           (d'oh)
8618
8619 2004-05-08  Benjamin Otte  <otte@gnome.org>
8620
8621         * gst/gstpad.c: (gst_pad_proxy_fixate):
8622           really reduce the set of caps
8623
8624 2004-05-08  Benjamin Otte  <otte@gnome.org>
8625
8626         * tests/Makefile.am:
8627         * tests/spidey_bench.c: (handoff), (main):
8628           add benchmark to test how long spider needs to create a pipeline
8629
8630 2004-05-08  Benjamin Otte  <otte@gnome.org>
8631
8632         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8633           mark links as unengaged when unnegotiating instead of deactivating.
8634           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8635
8636 2004-05-08  Benjamin Otte  <otte@gnome.org>
8637
8638         * docs/manual/helloworld.xml:
8639           s/audiosink/osssink (patch by Patrick Guimond)
8640
8641 2004-05-07  David Schleef  <ds@schleef.org>
8642
8643         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8644         since it contains important stuff.
8645
8646 2004-05-07  David Schleef  <ds@schleef.org>
8647
8648         * testsuite/caps/caps.c: (test3), (main): A check for appending
8649         ANY caps.
8650
8651 2004-05-07  David Schleef  <ds@schleef.org>
8652
8653         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8654         which may contain commas.  Fixes detection of -Wa,-mregnames
8655
8656 2004-05-06  David Schleef  <ds@schleef.org>
8657
8658         Changes to handle compilers that don't have variadic macro
8659         support.  In particular, glib headers define some inlines
8660         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
8661         builds.
8662         * gst/Makefile.am:
8663         * gst/cothreads.c:
8664         * gst/elements/gstfdsink.c:
8665         * gst/elements/gstfdsrc.c:
8666         * gst/elements/gstfilesink.c:
8667         * gst/elements/gstfilesrc.c:
8668         * gst/gst_private.h:
8669         * gst/gstatomic.c:
8670         * gst/gstcaps.c: (gst_caps_append):
8671         * gst/gstcpu.c: (gst_cpuid_i386):
8672         * gst/gstelement.c:
8673         * gst/gsterror.c:
8674         * gst/gstfilter.c:
8675         * gst/gstinfo.h:
8676         * gst/gstprobe.c:
8677         * gst/gstquery.c:
8678         * gst/gstregistry.c:
8679         * gst/gststructure.c:
8680         * gst/gsttaginterface.c:
8681         * gst/gsttrace.c: (gst_trace_new):
8682         * gst/gsttrashstack.c:
8683         * gst/gsturi.c:
8684         * gst/gstvalue.c:
8685         * gst/parse/grammar.y:
8686         * gst/parse/parse.l:
8687         * tools/gst-inspect.c: (main):
8688         * tools/gst-launch.c: (main):
8689         * tools/gst-xmlinspect.c: (PUT_STRING):
8690
8691 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8692
8693         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8694         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8695         * gst/elements/gstfilesrc.h:
8696           send NEW_MEDIA events correctly
8697         * gst/elements/gsttypefindelement.c: (start_typefinding),
8698         (gst_type_find_element_handle_event):
8699           restart typefinding when we get a NEW_MEDIA event
8700         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
8701         (gst_bin_dispose):
8702           don't die when someone removes elements in callbacks
8703         * gst/gstelement.c: (gst_element_change_state):
8704           improve debugging
8705         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
8706           we need a NEW_MEDIA event to engage a link
8707         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
8708           don't g_print debugging stuff
8709         * testsuite/caps/simplify.c: (check_caps):
8710
8711 2004-05-04  Benjamin Otte  <otte@gnome.org>
8712
8713         * gst/parse/grammar.y:
8714           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
8715
8716 2004-05-04  Benjamin Otte  <otte@gnome.org>
8717
8718         * testsuite/caps/renegotiate.c: (main):
8719           improve output in error case
8720
8721 2004-05-04  Benjamin Otte  <otte@gnome.org>
8722
8723         * gst/parse/grammar.y:
8724           fix assert to not trigger when there's no error argument
8725         * gst/parse/parse.l:
8726           fix definition of caps to allow more than two structures
8727         * testsuite/caps/Makefile.am:
8728         * testsuite/caps/renegotiate.c: (main):
8729           it's sinesrc and works in that case
8730
8731 2004-05-04  Wim Taymans  <wim@fluendo.com>
8732
8733         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8734         (group_dec_link), (gst_opt_scheduler_pad_unlink):
8735         when removing an element from a group, we always need to
8736         decrement the link count that this group had with other 
8737         groups through the element.
8738         added an extra assert to catch inconsistencies when decrementing
8739         the link count.
8740
8741 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8742
8743         * configure.ac:
8744         * docs/gst/Makefile.am:
8745         * docs/gst/gstreamer-sections.txt:
8746         * docs/gst/tmpl/gstcompat.sgml:
8747         * examples/appreader/Makefile.am:
8748         * examples/cutter/Makefile.am:
8749         * examples/events/Makefile.am:
8750         * examples/helloworld/Makefile.am:
8751         * examples/helloworld2/Makefile.am:
8752         * examples/launch/Makefile.am:
8753         * examples/manual/Makefile.am:
8754         * examples/mixer/Makefile.am:
8755         * examples/pingpong/Makefile.am:
8756         * examples/plugins/Makefile.am:
8757         * examples/queue/Makefile.am:
8758         * examples/queue2/Makefile.am:
8759         * examples/queue3/Makefile.am:
8760         * examples/queue4/Makefile.am:
8761         * examples/retag/Makefile.am:
8762         * examples/thread/Makefile.am:
8763         * examples/typefind/Makefile.am:
8764         * examples/xml/Makefile.am:
8765         * gst/Makefile.am:
8766         * gst/autoplug/Makefile.am:
8767         * gst/elements/Makefile.am:
8768         * gst/gstcompat.h:
8769         * gst/indexers/Makefile.am:
8770         * gst/parse/Makefile.am:
8771         * gst/registries/Makefile.am:
8772         * gst/schedulers/Makefile.am:
8773         * libs/gst/bytestream/Makefile.am:
8774         * libs/gst/control/Makefile.am:
8775         * libs/gst/getbits/Makefile.am:
8776         * po/af.po:
8777         * po/az.po:
8778         * po/en_GB.po:
8779         * po/fr.po:
8780         * po/nl.po:
8781         * po/sr.po:
8782         * po/sv.po:
8783         * po/tr.po:
8784         * po/uk.po:
8785         * tests/Makefile.am:
8786         * tests/bufspeed/Makefile.am:
8787         * tests/instantiate/Makefile.am:
8788         * tests/memchunk/Makefile.am:
8789         * tests/muxing/Makefile.am:
8790         * tests/negotiation/Makefile.am:
8791         * tests/probes/Makefile.am:
8792         * tests/sched/Makefile.am:
8793         * tests/seeking/Makefile.am:
8794         * tests/threadstate/Makefile.am:
8795         * testsuite/caps/Makefile.am:
8796         * testsuite/cleanup/Makefile.am:
8797         * testsuite/dlopen/Makefile.am:
8798         * testsuite/dynparams/Makefile.am:
8799         * testsuite/plugin/Makefile.am:
8800         * testsuite/states/Makefile.am:
8801         * tools/Makefile.am:
8802           reorganize compile/link flags to be consistent
8803           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
8804
8805 2004-05-04  David Schleef  <ds@schleef.org>
8806
8807         The "once more, with feeling" check-in.
8808         * testsuite/caps/Makefile.am: dist caps_strings
8809         * testsuite/caps/renegotiate.c: (main): This test triggers a
8810           segfault in the core.  Marking as failing.
8811
8812 2004-05-03  David Schleef  <ds@schleef.org>
8813
8814         * testsuite/caps/deserialize.c: (main): Fix problems noticed
8815           by the build bots.
8816         * testsuite/caps/renegotiate.c: (main): Same.
8817
8818 2004-05-03  David Schleef  <ds@schleef.org>
8819
8820         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
8821
8822 2004-05-03  David Schleef  <ds@schleef.org>
8823
8824         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
8825           variable to find our source file.
8826
8827 2004-05-03  David Schleef  <ds@schleef.org>
8828
8829         * configure.ac:  Link plugins with libgstreamer and dependent
8830           libraries
8831         * testsuite/caps/Makefile.am:
8832         * testsuite/caps/caps_strings:
8833         * testsuite/caps/deserialize.c: (main): Add a little test to slog
8834           through a file of caps strings and test each one
8835
8836 2004-05-04  Benjamin Otte  <otte@gnome.org>
8837
8838         * libs/gst/bytestream/Makefile.am:
8839         * libs/gst/bytestream/adapter.c: 
8840         * libs/gst/bytestream/adapter.h:
8841           add GstAdapter, similar to bytestream, but doesn't require ugly event
8842           handling or uglier loopbased elements
8843
8844 2004-05-03  David Schleef  <ds@schleef.org>
8845
8846         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
8847         * testsuite/caps/erathostenes.c:
8848         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
8849
8850 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8851
8852         * docs/pwg/pwg.xml:
8853           remove hardcoded stylesheet path (duh)
8854         * docs/random/release:
8855         * docs/gst/gstreamer-sections.txt:
8856         * gst/Makefile.am:
8857         * gst/gst.h:
8858         * gst/gst_private.h:
8859         * gst/gstcaps.c:
8860         * gst/gstevent.c:
8861         * gst/gstformat.c:
8862         * gst/gstinfo.c:
8863         * gst/gstinfo.h:
8864         * gst/gstinterface.c:
8865         * gst/gstmemchunk.c:
8866         * gst/gstprobe.c:
8867         * gst/gstquery.c:
8868         * gst/gstregistry.c:
8869         * gst/gstregistrypool.c:
8870         * gst/gststructure.c:
8871         * gst/gsttaginterface.c:
8872         * gst/gstthread.c:
8873         * gst/gsttrace.c:
8874         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
8875         * gst/gsturi.c:
8876         * gst/gstvalue.c:
8877           deprecate gst_info; remove gstlog.h
8878    
8879
8880 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8881
8882         * Makefile.am:
8883         * po/en_GB.po:
8884         * po/sv.po:
8885         * po/uk.po:
8886           updated translations
8887
8888 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8889
8890         * gst/gstbin.c: (gst_bin_dispose):
8891           better debugging
8892
8893 2004-05-03  Johan Dahlin  <johan@gnome.org>
8894
8895         * gst/schedulers/gstoptimalscheduler.c
8896         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
8897         really is a GstElement. Avoids critical when running gst-launch -v
8898         and a oggdemux/decoding pipeline.
8899
8900 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8901
8902         * docs/gst/tmpl/gstpipeline.sgml :
8903         * docs/manual/elements-api.xml :
8904                 doc fix by Patrick Guimond (Protector) from devel ML
8905                 reviewed by ronald
8906
8907 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8908
8909         * docs/gst/Makefile.am :
8910         * docs/libs/Makefile.am :
8911                 apply a patch from Arwed v. Merkatz so that gtk-doc
8912                 generated docs install (same for .devhelp file)
8913                 (fixes part 1 of #138836)
8914
8915 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8916
8917         * docs/faq/dependencies.xml: typo
8918         * docs/faq/getting.xml :
8919             - fix download URL for new gstreamer site
8920             - hide sf.net download page as latest version aren't there
8921             - fix apt URLs
8922             - fill "get via CVS" paragraph (link to dev page on the site)
8923         * docs/faq/general.xml:
8924             hide status tables as they no more exists
8925             change case on plugins license file to reflect reality
8926         * docs/faq/troubleshooting.xml:
8927             remove the wiki question/answer as there is no more wiki
8928
8929 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8930
8931         * gst/gsterror.h:
8932           include the headers needed for declarations used in this header
8933
8934 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8935
8936         * docs/random/uraeus/gstreamer_and_midi.txt :
8937           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
8938           (fixes #132288)
8939
8940 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
8941
8942         reviewed by Benjamin Otte  <otte@gnome.org>
8943
8944         * gst/schedulers/gthread-cothreads.h:
8945           free allocated data for main cothread, too when destroying context
8946           (fixes #141417)
8947
8948 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8949
8950         * docs/manual/goals.xml : remove duplicated paragraph at end 
8951         of doc page (fixes #141448)
8952
8953 2004-04-29  David Schleef  <ds@schleef.org>
8954
8955         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
8956         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
8957
8958 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8959
8960         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8961           fix property
8962         * gst/gstcaps.c:
8963           fix doc string
8964         * po/POTFILES.in:
8965           rename typefind source file
8966
8967 2004-04-28  David Schleef  <ds@schleef.org>
8968
8969         Several new files from Steve Lhomme's MSVC patch (bug #141317):
8970         * win32/GStreamer.vcproj:
8971         * win32/Makefile:
8972         * win32/config.h:
8973         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
8974         (_trewinddir), (_ttelldir), (_tseekdir):
8975         * win32/dirent.h:
8976         * win32/gst-inspect.vcproj:
8977         * win32/gst-launch.vcproj:
8978         * win32/gst-register.vcproj:
8979         * win32/gstbytestream.vcproj:
8980         * win32/gstelements.vcproj:
8981         * win32/gstoptimalscheduler.vcproj:
8982         * win32/gstspider.vcproj:
8983         * win32/gtchar.h:
8984         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
8985         * win32/mman.h:
8986         * win32/mman.inl:
8987         * win32/msvc71.sln:
8988
8989 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8990
8991         * gst/gst.c: (init_post):
8992         * gst/gstinfo.c:
8993           remove useless _gst_progname stuff
8994         * tools/gst-inspect.c: (print_field), (print_caps):
8995           improve caps output
8996
8997 2004-04-28  David Schleef  <ds@schleef.org>
8998
8999         Disable parsing of a lot of files that aren't part of the
9000         exported API.  Move corresponding template files to old/,
9001         waiting for removal when they don't contain anything
9002         interesting.
9003         * docs/gst/Makefile.am:
9004         * docs/gst/gstreamer-sections.txt:
9005         * docs/gst/tmpl/cothreads.sgml:
9006         * docs/gst/tmpl/cothreads_compat.sgml:
9007         * docs/gst/tmpl/gettext.sgml:
9008         * docs/gst/tmpl/gobject2gtk.sgml:
9009         * docs/gst/tmpl/grammar.tab.sgml:
9010         * docs/gst/tmpl/gst-i18n-app.sgml:
9011         * docs/gst/tmpl/gst-i18n-lib.sgml:
9012         * docs/gst/tmpl/gst_private.sgml:
9013         * docs/gst/tmpl/gstaggregator.sgml:
9014         * docs/gst/tmpl/gstarch.sgml:
9015         * docs/gst/tmpl/gstatomic_impl.sgml:
9016         * docs/gst/tmpl/gstbufferstore.sgml:
9017         * docs/gst/tmpl/gstdata_private.sgml:
9018         * docs/gst/tmpl/gstdisksink.sgml:
9019         * docs/gst/tmpl/gstdisksrc.sgml:
9020         * docs/gst/tmpl/gstelementfactory.sgml:
9021         * docs/gst/tmpl/gstextratypes.sgml:
9022         * docs/gst/tmpl/gstfakesink.sgml:
9023         * docs/gst/tmpl/gstfakesrc.sgml:
9024         * docs/gst/tmpl/gstfdsink.sgml:
9025         * docs/gst/tmpl/gstfdsrc.sgml:
9026         * docs/gst/tmpl/gstfilesink.sgml:
9027         * docs/gst/tmpl/gstfilesrc.sgml:
9028         * docs/gst/tmpl/gsthttpsrc.sgml:
9029         * docs/gst/tmpl/gstidentity.sgml:
9030         * docs/gst/tmpl/gstindexfactory.sgml:
9031         * docs/gst/tmpl/gstmarshal.sgml:
9032         * docs/gst/tmpl/gstmd5sink.sgml:
9033         * docs/gst/tmpl/gstmultidisksrc.sgml:
9034         * docs/gst/tmpl/gstmultifilesrc.sgml:
9035         * docs/gst/tmpl/gstpadtemplate.sgml:
9036         * docs/gst/tmpl/gstpipefilter.sgml:
9037         * docs/gst/tmpl/gstschedulerfactory.sgml:
9038         * docs/gst/tmpl/gstsearchfuncs.sgml:
9039         * docs/gst/tmpl/gstshaper.sgml:
9040         * docs/gst/tmpl/gstspider.sgml:
9041         * docs/gst/tmpl/gstspideridentity.sgml:
9042         * docs/gst/tmpl/gststatistics.sgml:
9043         * docs/gst/tmpl/gsttee.sgml:
9044         * docs/gst/tmpl/gsttimecache.sgml:
9045         * docs/gst/tmpl/gsttypefind.sgml:
9046         * docs/gst/tmpl/gsttypefindfactory.sgml:
9047         * docs/gst/tmpl/gstxmlregistry.sgml:
9048         * docs/gst/tmpl/gthread-cothreads.sgml:
9049         * docs/gst/tmpl/old/cothreads.sgml:
9050         * docs/gst/tmpl/old/cothreads_compat.sgml:
9051         * docs/gst/tmpl/old/gettext.sgml:
9052         * docs/gst/tmpl/old/gobject2gtk.sgml:
9053         * docs/gst/tmpl/old/grammar.tab.sgml:
9054         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9055         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9056         * docs/gst/tmpl/old/gst_private.sgml:
9057         * docs/gst/tmpl/old/gstaggregator.sgml:
9058         * docs/gst/tmpl/old/gstarch.sgml:
9059         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9060         * docs/gst/tmpl/old/gstbufferstore.sgml:
9061         * docs/gst/tmpl/old/gstdata_private.sgml:
9062         * docs/gst/tmpl/old/gstdisksink.sgml:
9063         * docs/gst/tmpl/old/gstdisksrc.sgml:
9064         * docs/gst/tmpl/old/gstelementfactory.sgml:
9065         * docs/gst/tmpl/old/gstextratypes.sgml:
9066         * docs/gst/tmpl/old/gstfakesink.sgml:
9067         * docs/gst/tmpl/old/gstfakesrc.sgml:
9068         * docs/gst/tmpl/old/gstfdsink.sgml:
9069         * docs/gst/tmpl/old/gstfdsrc.sgml:
9070         * docs/gst/tmpl/old/gstfilesink.sgml:
9071         * docs/gst/tmpl/old/gstfilesrc.sgml:
9072         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9073         * docs/gst/tmpl/old/gstidentity.sgml:
9074         * docs/gst/tmpl/old/gstindexfactory.sgml:
9075         * docs/gst/tmpl/old/gstmarshal.sgml:
9076         * docs/gst/tmpl/old/gstmd5sink.sgml:
9077         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9078         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9079         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9080         * docs/gst/tmpl/old/gstpipefilter.sgml:
9081         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9082         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9083         * docs/gst/tmpl/old/gstshaper.sgml:
9084         * docs/gst/tmpl/old/gstspider.sgml:
9085         * docs/gst/tmpl/old/gstspideridentity.sgml:
9086         * docs/gst/tmpl/old/gststatistics.sgml:
9087         * docs/gst/tmpl/old/gsttee.sgml:
9088         * docs/gst/tmpl/old/gsttimecache.sgml:
9089         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9090         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9091         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9092         * docs/gst/tmpl/old/types.sgml:
9093         * docs/gst/tmpl/types.sgml:
9094
9095         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9096         gtkdoc-scan doesn't like files with the same name in different
9097         directories.
9098         * gst/elements/Makefile.am:
9099         * gst/elements/gstelements.c:
9100         * gst/elements/gsttypefind.c: 
9101         * gst/elements/gsttypefind.h:
9102         * gst/elements/gsttypefindelement.c:
9103         * gst/elements/gsttypefindelement.h:
9104
9105 2004-04-28  David Schleef  <ds@schleef.org>
9106
9107         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9108         patch (bug #141317):
9109         * gst/gst-i18n-lib.h: Allow disabling gettext.
9110         * gst/gstatomic_impl.h: disable warning when it's dumb.
9111         * gst/gstclock.c: fix include
9112         * gst/gstcompat.h: fix variadic macro
9113         * gst/gstinfo.c: fix include
9114         * gst/gstmacros.h: add defines for inlines on MSVC
9115         * gst/gstplugin.c: fix includes
9116         * gst/gstregistry.c: fix includes
9117         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9118         * gst/gstsystemclock.c: fix include
9119         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9120         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9121         * gst/registries/gstxmlregistry.c:
9122         (gst_xml_registry_parse_element_factory): fix use of non-portable
9123         functions
9124         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9125         * libs/gst/control/dparammanager.h: same
9126
9127 2004-04-28  David Schleef  <ds@schleef.org>
9128
9129         Move a bunch of unused files to old/ with names that are
9130         not case-insensitive-unique.  These files still contain some
9131         useful information that needs to be merged into gstbin.sgml,
9132         etc., so they shouldn't be deleted yet.
9133         * docs/gst/tmpl/GstBin.sgml:
9134         * docs/gst/tmpl/GstBuffer.sgml:
9135         * docs/gst/tmpl/GstCaps.sgml:
9136         * docs/gst/tmpl/GstClock.sgml:
9137         * docs/gst/tmpl/GstCompat.sgml:
9138         * docs/gst/tmpl/GstData.sgml:
9139         * docs/gst/tmpl/GstElement.sgml:
9140         * docs/gst/tmpl/GstEvent.sgml:
9141         * docs/gst/tmpl/GstIndex.sgml:
9142         * docs/gst/tmpl/GstStructure.sgml:
9143         * docs/gst/tmpl/GstTag.sgml:
9144         * docs/gst/tmpl/old/GstBin.sgml:
9145         * docs/gst/tmpl/old/GstBuffer.sgml:
9146         * docs/gst/tmpl/old/GstCaps.sgml:
9147         * docs/gst/tmpl/old/GstClock.sgml:
9148         * docs/gst/tmpl/old/GstCompat.sgml:
9149         * docs/gst/tmpl/old/GstData.sgml:
9150         * docs/gst/tmpl/old/GstElement.sgml:
9151         * docs/gst/tmpl/old/GstEvent.sgml:
9152         * docs/gst/tmpl/old/GstIndex.sgml:
9153         * docs/gst/tmpl/old/GstStructure.sgml:
9154         * docs/gst/tmpl/old/GstTag.sgml:
9155
9156 2004-04-28  David Schleef  <ds@schleef.org>
9157
9158         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9159         (gst_caps_append), (gst_caps_append_structure),
9160         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9161         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9162         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9163         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9164         (gst_caps_intersect), (gst_caps_normalize),
9165         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9166         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9167         * gst/gstcaps.h: use GST_IS_CAPS().
9168
9169 2004-04-26  David Schleef  <ds@schleef.org>
9170
9171         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9172         assembly.  gcc doesn't handle it correctly. (bug #141083)
9173         * gst/gsttrashstack.h: same
9174
9175 2004-04-25  Benjamin Otte  <otte@gnome.org>
9176
9177         * gst/gstelement.c: (gst_element_change_state):
9178           fix assertion to do an int comparison
9179
9180 2004-04-25  Benjamin Otte  <otte@gnome.org>
9181
9182         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9183           better debugging output on error
9184
9185 2004-04-25  Benjamin Otte  <otte@gnome.org>
9186
9187         * gst/gstcaps.c: (gst_caps_subtract):
9188           fix memleak
9189
9190 2004-04-23  Benjamin Otte  <otte@gnome.org>
9191
9192         * gst/gstvalue.c: (gst_value_compare_buffer),
9193         (_gst_value_initialize):
9194           add comparison function for buffers
9195
9196 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9197
9198         * docs/pwg/pwg.xml:
9199           Just found out that this so-called "ima-wav" format is really
9200           just "dvi adpcm" (according to the MS WAV documentation). So
9201           renaming it. We didn't use it yet anyway.
9202
9203 2004-04-23  Benjamin Otte  <otte@gnome.org>
9204
9205         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9206           call gst_caps_is_subset
9207
9208 2004-04-23  Benjamin Otte  <otte@gnome.org>
9209
9210         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9211         (gst_caps_is_subset):
9212           add documentation
9213
9214 2004-04-23  Benjamin Otte  <otte@gnome.org>
9215           
9216         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9217         (gst_caps_structure_subtract), (gst_caps_subtract),
9218         (gst_caps_structure_figure_out_union),
9219         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9220           fix simplifying and subtracting not working correctly with optional
9221           properties
9222           solve assorted problems that make it now simplify ebven more
9223         * docs/gst/tmpl/gstcaps.sgml:
9224         * gst/gstcaps.h:
9225           make gst_caps_do_simplify return a bool to indicate if it simplified
9226         * testsuite/caps/simplify.c: (main):
9227           add more checks. The tests is quite a bit useless right now because
9228           the core is heavily simplifying itself.
9229         * testsuite/caps/caps.h:
9230           fix caps to contain all optional properties
9231
9232 2004-04-22  Benjamin Otte  <otte@gnome.org>
9233
9234         * docs/gst/tmpl/gstcaps.sgml:
9235         * docs/gst/tmpl/gstfilesrc.sgml:
9236         * docs/gst/tmpl/gststructure.sgml:
9237         * docs/gst/tmpl/gstvalue.sgml:
9238           update for recent API changes
9239         * gst/gstcaps.c: (gst_caps_do_simplify):
9240           fix to stop trying with a freed structure
9241         * gst/gstpad.c: (gst_pad_link_fixate):
9242           simplify caps
9243         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9244           remove C++ comment
9245         * gst/gstpad.h:
9246           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9247         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9248         (gst_structure_to_string):
9249           keep the correct type when using lists of ranges
9250         * gst/gstvalue.c: (gst_value_list_prepend_value),
9251         (gst_value_list_append_value):
9252           copy the value before adding to the list (d'oh)
9253         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9254         (gst_value_subtract_int_range_int_range):
9255           handle overflows correctly
9256         * gst/gstvalue.c: (gst_value_subtract_from_list):
9257           fix memleak
9258         * testsuite/caps/caps.h:
9259           add a caps that caused segfaults
9260
9261 2004-04-22  Benjamin Otte  <otte@gnome.org>
9262
9263         * testsuite/refcounting/pad.c: (main):
9264           fix test
9265
9266 2004-04-22  Benjamin Otte  <otte@gnome.org>
9267
9268         * gst/gstcaps.c: (gst_caps_subtract):
9269           allow subtracting ANY and EMPTY from ANY caps
9270
9271 2004-04-22  Benjamin Otte  <otte@gnome.org>
9272
9273         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9274         (gst_caps_union):
9275           only simplify in functions that create new caps. Simplifying in
9276           gst_caps_append breaks tests.
9277
9278 2004-04-22  Benjamin Otte  <otte@gnome.org>
9279
9280         * gst/gstcaps.c: (gst_caps_structure_simplify):
9281           unset GValue after use
9282         * gst/gstcaps.c: (gst_caps_append), 
9283         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9284           use gst_caps_simplify (reduces registry size by 30%)
9285         * gst/gstpad.c: (gst_pad_template_new):
9286           don't allow NULL caps
9287
9288 2004-04-22  Benjamin Otte  <otte@gnome.org>
9289
9290         * docs/gst/gstreamer-sections.txt:
9291           add gst_caps_do_simplify
9292         * gst/gstcaps.c:
9293           add documentation for gst_caps_do_simplify
9294         * gst/gstvalue.h:
9295           fix typo in gst_value_register_subtract_func declaration for gst-doc
9296
9297 2004-04-22  Benjamin Otte  <otte@gnome.org>
9298
9299         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9300           fix bug when converting from empty string.
9301         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9302         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9303           use gst_caps_new_empty to allocate a new caps. Only that function
9304           allocates memory for caps now.
9305         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9306         (gst_caps_remove_structure):
9307           add ability to remove one structure (but not to header yet)
9308         * gst/gstcaps.c: (gst_caps_compare_structures),
9309         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9310         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9311         * gst/gstcaps.h:
9312           add gst_caps_do_simplify that tries to simplify a caps in place.
9313           Deprecate old gst_caps_simplify function.
9314         * testsuite/caps/caps.h:
9315           add caps.h containing a common set of caps to test against.
9316         * testsuite/caps/sets.c: (check_caps), (main):
9317           use it.
9318         * testsuite/caps/.cvsignore:
9319         * testsuite/caps/Makefile.am:
9320         * testsuite/caps/simplify.c: (check_caps), (main):
9321           add test to check correctness and efficency of caps simplification.
9322
9323 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9324
9325         reviewed by Benjamin Otte  <otte@gnome.org>
9326
9327         * gst/gstparse.c: (_gst_parse_escape):
9328           Free the GString used in _gst_parse_escape()
9329
9330 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9331
9332         * gst/gstpad.c: (gst_pad_link_negotiate):
9333           refuse to link if the link is not possible
9334         * configure.ac:
9335         * testsuite/Makefile.am:
9336         * testsuite/negotiation/.cvsignore:
9337         * testsuite/negotiation/Makefile.am:
9338         * testsuite/negotiation/pad_link.c: (main):
9339           add test that checks the above behaviour
9340
9341 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9342
9343         * docs/gst/gstreamer-sections.txt:
9344           add newly added API
9345
9346 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9347
9348         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9349         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9350         (gst_filesrc_open_file), (gst_filesrc_close_file),
9351         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9352         * gst/elements/gstfilesrc.h:
9353           add support for non-regular files (#140734)
9354
9355 2004-04-21  Benjamin Otte  <otte@gnome.org>
9356
9357         * gst/gstpad.c: (gst_pad_link_fixate):
9358           add sophisticated error checking code to see if fixation functions
9359           did their fixation right
9360
9361 2004-04-21  Benjamin Otte  <otte@gnome.org>
9362
9363         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9364           check for ANY caps before appending/unioning
9365         * gst/gstcaps.c: (gst_caps_is_subset),
9366         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9367         (gst_caps_structure_subtract), (gst_caps_subtract):
9368         * gst/gstcaps.h:
9369           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9370           the API. deprecate gst_caps_is_equal_fixed
9371         * gst/gstpad.c: (gst_pad_try_set_caps):
9372         * gst/gstqueue.c: (gst_queue_link):
9373           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9374         * gst/gststructure.c: (gst_structure_get_name_id):
9375         * gst/gststructure.h:
9376           add function gst_structure_get_name_id
9377         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9378         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9379         (gst_value_subtract_int_range_int_range),
9380         (gst_value_subtract_double_double_range),
9381         (gst_value_subtract_double_range_double),
9382         (gst_value_subtract_double_range_double_range),
9383         (gst_value_subtract_from_list), (gst_value_subtract_list),
9384         (gst_value_can_intersect), (gst_value_subtract),
9385         (gst_value_can_subtract), (gst_value_register_subtract_func),
9386         (_gst_value_initialize):
9387         * gst/gstvalue.h:
9388           add support for subtracting values from each other. Note that
9389           subtracting means subtracting as in set theory. Required for caps
9390           stuff above.
9391         * testsuite/caps/.cvsignore:
9392         * testsuite/caps/Makefile.am:
9393         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9394         * testsuite/caps/sets.c: (check_caps), (main):
9395         * testsuite/caps/subtract.c: (check_caps), (main):
9396           add tests for subtraction and equality code.
9397
9398 2004-04-20  David Schleef  <ds@schleef.org>
9399
9400         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9401         * gst/indexers/Makefile.am:
9402         * gst/schedulers/Makefile.am:
9403         * libs/gst/bytestream/Makefile.am:
9404         * libs/gst/control/Makefile.am:
9405         * libs/gst/getbits/Makefile.am:
9406
9407 2004-04-20  David Schleef  <ds@schleef.org>
9408
9409         * common/as-libtool.mak: Fine-tune DLL building.
9410         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9411         (like gst-plugins)
9412         * examples/plugins/Makefile.am: remove plugindir
9413         * gst/autoplug/Makefile.am: DLL building fixes
9414         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9415         Windows.
9416         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9417         * gst/indexers/Makefile.am: DLL building fixes
9418         * gst/schedulers/Makefile.am: DLL building fixes.
9419         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9420         * libs/gst/control/Makefile.am: same
9421         * libs/gst/getbits/Makefile.am: same
9422         * testsuite/Makefile.am: New dlopen directory
9423         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9424         when dlopened.
9425         * testsuite/dlopen/dlopen_gst.c: (main): same
9426         * testsuite/dlopen/loadgst.c: (do_test): same
9427
9428 2004-04-20  David Schleef  <ds@schleef.org>
9429
9430         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9431         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9432
9433 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9434
9435         * gst/gstelement.c: (gst_element_wait),
9436         (gst_element_set_time_delay), (gst_element_change_state):
9437           Use GST_TIME_*
9438
9439 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9440
9441         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9442         (gst_spider_identity_plug):
9443           improve debugging messages
9444         * gst/gstbin.c: (gst_bin_remove_func):
9445           make sure the state_change function is only called with simple state
9446           transitions
9447
9448 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9449
9450         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9451         (gst_fakesink_set_property), (gst_fakesink_chain):
9452         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9453         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9454         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9455         * gst/elements/gstidentity.c: (gst_identity_chain),
9456         (gst_identity_set_property):
9457         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9458         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9459           add warnings to _set_property for unknown arguments
9460           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9461
9462 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9463
9464         * Makefile.am:
9465         * docs/manuals.mak:
9466           add .po file download snippet
9467           fix a bug in the doc makefile
9468
9469 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9470
9471         * Makefile.am:
9472         * po/LINGUAS:
9473         * po/en_GB.po:
9474           Added en_GB translation (Gareth Owen)
9475
9476 2004-04-20  Johan Dahlin  <johan@gnome.org>
9477
9478         * gst/gstpad.c (_invent_event): Clean up
9479
9480 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9481
9482         * testsuite/caps/filtercaps.c: (main):
9483           fix test to test things correctly (caps are complicated)
9484
9485 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9486
9487         * testsuite/caps/Makefile.am:
9488         * testsuite/caps/filtercaps.c: (main):
9489           add test (that doesn't work right now, but should)
9490
9491 2004-04-19  David Schleef  <ds@schleef.org>
9492
9493         * configure.ac: Add test for allowing unaligned access.  Add define
9494         to put in gstconfig.h.
9495         * docs/gst/gstreamer-sections.txt: New symbols
9496         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9497         * docs/gst/tmpl/gstfilesrc.sgml:
9498         * docs/gst/tmpl/gstparse.sgml:
9499         * docs/gst/tmpl/gsttypes.sgml:
9500         * docs/gst/tmpl/gstutils.sgml:
9501         * docs/gst/tmpl/gstvalue.sgml:
9502         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9503         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9504         on most !i386/!powerpc architectures.  From Daniel Gazard
9505         <daniel.gazard@free.fr>.  (bug #140156)
9506         * po/af.po: Check in changes made by gettext.
9507         * po/az.po:
9508         * po/fr.po:
9509         * po/nl.po:
9510         * po/sr.po:
9511         * po/sv.po:
9512
9513 2004-04-20  Benjamin Otte  <otte@gnome.org>
9514
9515         * gst/schedulers/entryscheduler.c: 
9516         (gst_entry_scheduler_yield):
9517           refuse to yield when decoupled elements insist on doing that.
9518           At least it's better than crashing
9519
9520 2004-04-19  David Schleef  <ds@schleef.org>
9521
9522         * docs/libs/Makefile.am: Change sinclude to include
9523         * docs/gst/Makefile.am: same
9524         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9525
9526 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9527
9528         * po/LINGUAS:
9529         * po/uk.po:
9530           Added Ukrainian translation (Maxim V. Dziumanenko)
9531
9532 2004-04-19  Johan Dahlin  <johan@gnome.org>
9533
9534         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9535         checking here, do it before calling the function.
9536         Clean up, use for loops instead of while loops while iterating
9537         over lists.
9538
9539         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9540         in debug message.
9541         (gst_spider_create_and_plug): Improve debug message.
9542         General: Replace while loops which iterates over GLists with for
9543         loops. Which are much cleaner, improves readability, especially
9544         for gst_spider_identity_plug
9545
9546         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9547         fixes bug 140477
9548
9549 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9550
9551         * po/LINGUAS:
9552         * po/tr.po:
9553           Added Turkish translation (Baris Cicek)
9554
9555 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9556
9557         * docs/faq/troubleshooting.xml:
9558           Mention gst-register in the FAQ (fixes 139045).
9559
9560 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9561
9562         * docs/gst/gstreamer-sections.txt:
9563
9564 2004-04-17  Benjamin Otte  <otte@gnome.org>
9565
9566         * gst/gstelement.c: (gst_element_dispose):
9567           simplify
9568         * gst/gstpad.c: (gst_pad_call_chain_function):
9569           don't create loads of events due to bad macro usage
9570
9571 2004-04-16  David Schleef  <ds@schleef.org>
9572
9573         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9574         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9575         * gst/gstvalue.c: (gst_value_serialize_buffer),
9576         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9577         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9578         to indicate types that are fixed wrt caps or not.  Switching to
9579         this function fixes (bug #140298).
9580         * gst/gstvalue.h:
9581
9582 2004-04-16  David Schleef  <ds@schleef.org>
9583
9584         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9585         for GST_UNALIGNED_ACESS, since we essentially know which archs
9586         are ok.
9587
9588 2004-04-17  Benjamin Otte  <otte@gnome.org>
9589
9590         * docs/gst/Makefile.am:
9591           ignore gst/parse directory when building docs (fixes #140205)
9592
9593 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9594
9595         * testsuite/refcounting/mem.c: (vmsize):
9596           do error checking
9597
9598 2004-04-16  Johan Dahlin  <johan@gnome.org>
9599
9600         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9601         and gst_pad_call_get_function.
9602
9603 2004-04-15  David Schleef  <ds@schleef.org>
9604
9605         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9606         checks if we can access unaligned memory.
9607         * configure.ac: Use it.
9608
9609 2004-04-16  Benjamin Otte  <otte@gnome.org>
9610
9611         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9612         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9613         * gst/elements/gstfilesrc.h:
9614           s/seek_happened/need_discont/ and require discont before sending any
9615           data
9616
9617 2004-04-15  David Schleef  <ds@schleef.org>
9618
9619         * gst/gstvalue.c: (gst_value_serialize_buffer),
9620         (gst_value_deserialize_buffer), (_gst_value_initialize):
9621         Register these types as fundamental types. (bug #140015)
9622
9623 2004-04-16  Benjamin Otte  <otte@gnome.org>
9624
9625         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9626         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9627         (gst_pad_pull):
9628           implement enforcing discont events before buffers are passed. This
9629           allows state changes of only some elements and later correctly going
9630           on where they left off (or in short: you can now set audio sinks to
9631           NULL to release the device when the pipeline is paused)
9632         * gst/gstpad.c: (gst_pad_call_chain_function),
9633         (gst_pad_call_get_function):
9634         * gst/gstpad.h:
9635           add gst_pad_call_chain_function and gst_pad_call_get_function for
9636           scheduler interaction. They are required because of the changes
9637           above.
9638         * gst/schedulers/entryscheduler.c: (get_buffer),
9639         (gst_entry_scheduler_chain_wrapper),
9640         (gst_entry_scheduler_get_wrapper),
9641         (gst_entry_scheduler_state_transition),
9642         (gst_entry_scheduler_pad_link):
9643         * gst/schedulers/gstbasicscheduler.c:
9644         (gst_basic_scheduler_chain_wrapper),
9645         (gst_basic_scheduler_src_wrapper),
9646         (gst_basic_scheduler_chainhandler_proxy),
9647         (gst_basic_scheduler_gethandler_proxy),
9648         (gst_basic_scheduler_cothreaded_chain),
9649         (gst_basic_scheduler_chain_elements):
9650         * gst/schedulers/gstoptimalscheduler.c:
9651         (get_group_schedule_function), (pad_clear_queued),
9652         (gst_opt_scheduler_pad_link):
9653           use the new functions instead of calling get/chain-functions
9654           directly.
9655
9656 2004-04-15  David Schleef  <ds@schleef.org>
9657
9658         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9659         * docs/gst/tmpl/gstinfo.sgml: same
9660         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
9661         gtk-doc put here.
9662         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
9663         * examples/queue/queue.c: (main):  We iterate pipelines, not
9664         bins.  (bug #139996)
9665
9666 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9667
9668         * docs/pwg/advanced-types.xml:
9669           Add MS RLE support. Also document Qt RLE although I have no sample
9670           files for that yet. And document an extra property for ADPCM.
9671
9672 2004-04-15  David Schleef  <ds@schleef.org>
9673
9674         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
9675         (_gst_plugin_fault_handler_setup):  Disable more stuff on
9676         Windows.
9677
9678 2004-04-15  David Schleef  <ds@schleef.org>
9679
9680         * gst/gstinfo.c: (_gst_debug_init): Change some internal
9681         symbol names to not conflict with new gstinfo.h symbols.
9682         * gst/gstinfo.h: Add inline functions for all those crazy
9683         compilers that don't know how to handle variadic macros (MSVC).
9684
9685 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9686
9687         * configure.ac: bump nano to 1
9688
9689 === release 0.8.1 ===
9690
9691 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9692
9693         * NEWS:
9694         * RELEASE:
9695         * configure.ac:
9696           releasing 0.8.1, "Snow Brigade"
9697
9698 2004-04-14  David Schleef  <ds@schleef.org>
9699
9700         * testsuite/Makefile.am: define tests_ignore
9701         * testsuite/Rules: Added new tests_ignore, which get compiled,
9702         but not run (generally because they're inconsistent or have
9703         heisenbugs).  Now we can ensure all the .c files compile in
9704         testsuite/.
9705         * testsuite/bins/Makefile.am: define tests_ignore
9706         * testsuite/bytestream/Makefile.am:
9707         * testsuite/caps/Makefile.am:
9708         * testsuite/clock/Makefile.am:
9709         * testsuite/debug/Makefile.am:
9710         * testsuite/debug/global.c: (gst_debug_log_one),
9711         (gst_debug_log_two): Fix compilation problem.
9712         * testsuite/dynparams/Makefile.am:
9713         * testsuite/elements/Makefile.am:
9714         * testsuite/ghostpads/Makefile.am:
9715         * testsuite/indexers/Makefile.am:
9716         * testsuite/parse/Makefile.am:
9717         * testsuite/plugin/Makefile.am:
9718         * testsuite/refcounting/Makefile.am:
9719         * testsuite/refcounting/element_pad.c: (main): Don't return leak
9720         results, because it's not calculated correctly.
9721         * testsuite/refcounting/pad.c: (main): same
9722         * testsuite/states/Makefile.am:
9723         * testsuite/tags/Makefile.am:
9724         * testsuite/threads/Makefile.am:
9725
9726 2004-04-14  David Schleef  <ds@schleef.org>
9727
9728         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
9729         generating bad code around the cpu detection asm code.
9730
9731 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9732
9733         * tools/gst-inspect.c: (print_element_info):
9734           print numeric version of rank as well, since we added some - 1
9735           rank values to elements
9736
9737 2004-04-13  David Schleef  <ds@schleef.org>
9738
9739         * configure.ac:  Disable various code when compiling for MinGW.
9740         * gst/elements/Makefile.am:
9741         * gst/elements/gstelements.c:
9742         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9743         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
9744         * gst/registries/gstxmlregistry.c: (make_dir):
9745
9746 2004-04-13  David Schleef  <ds@schleef.org>
9747
9748         * gst/Makefile.am:
9749         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
9750         assembly.
9751         * gst/gstcpuid_i386.s: remove
9752
9753 2004-04-13  David Schleef  <ds@schleef.org>
9754
9755         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
9756         seems to think it needs to be done.
9757         * docs/gst/tmpl/gstfakesink.sgml:
9758         * docs/gst/tmpl/gstfakesrc.sgml:
9759         * docs/gst/tmpl/gstfdsink.sgml:
9760         * docs/gst/tmpl/gstfdsrc.sgml:
9761         * docs/gst/tmpl/gstfilesink.sgml:
9762         * docs/gst/tmpl/gstfilesrc.sgml:
9763         * docs/gst/tmpl/gstidentity.sgml:
9764         * docs/gst/tmpl/gstmd5sink.sgml:
9765         * docs/gst/tmpl/gstmultifilesrc.sgml:
9766         * docs/gst/tmpl/gstpipefilter.sgml:
9767         * docs/gst/tmpl/gstshaper.sgml:
9768         * docs/gst/tmpl/gstspider.sgml:
9769         * docs/gst/tmpl/gstspideridentity.sgml:
9770         * docs/gst/tmpl/gststatistics.sgml:
9771         * docs/gst/tmpl/gsttee.sgml:
9772         * docs/gst/tmpl/gsttypefind.sgml:
9773         * docs/gst/tmpl/gstutils.sgml:
9774
9775 2004-04-13  David Schleef  <ds@schleef.org>
9776
9777         * configure.ac: Changes to remove POSIXisms (mmap in this case)
9778         and to build DLLs on Windows.
9779         * gst/Makefile.am:
9780         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9781         (gst_filesrc_open_file):
9782         * gst/schedulers/Makefile.am:
9783
9784 2004-04-13  David Schleef  <ds@schleef.org>
9785
9786         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
9787         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
9788         fixating lists.
9789
9790 2004-04-12  David Schleef  <ds@schleef.org>
9791
9792         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
9793         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
9794         to using it.
9795         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
9796         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
9797         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
9798         * gst/gststructure.c: (gst_structure_set_valist),
9799         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
9800         support for buffers.
9801         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
9802         intended to be const.
9803         * gst/gsttag.h: same
9804         * gst/gstvalue.c: (gst_value_serialize_buffer),
9805         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
9806         to (de)serialize buffers.
9807         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
9808         * testsuite/caps/string-conversions.c: (main):
9809         * testsuite/caps/value_serialize.c: add new test
9810
9811 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9812
9813         * docs/pwg/advanced-types.xml:
9814           Document MS video 1 (video/x-msvideocodec) mimetype/format.
9815
9816 2004-04-11  Benjamin Otte  <otte@gnome.org>
9817
9818         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
9819           rename categories to basic_*
9820         * gst/schedulers/gstbasicscheduler.c: 
9821         (gst_basic_scheduler_chain_wrapper),
9822         (gst_basic_scheduler_chainhandler_proxy),
9823         (gst_basic_scheduler_gethandler_proxy),
9824         (gst_basic_scheduler_eventhandler_proxy):
9825           debugging category fixes - put common stuff in log category
9826         * gst/schedulers/gstbasicscheduler.c: 
9827         (gst_basic_scheduler_chain_elements):
9828           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
9829           active and linking two active chains
9830
9831 2004-04-10  Benjamin Otte  <otte@gnome.org>
9832
9833         * docs/pwg/intro-preface.xml:
9834           fix dead links and remove reference to Wiki
9835
9836 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9837
9838         * gst/schedulers/gstbasicscheduler.c:
9839           make sure we can switch back to the main function if we're still in
9840           the main function (supposed to fix #139617)
9841         * gst/schedulers/gthread-cothreads.h:
9842           don't throw an error when switching to the same cothread
9843
9844 2004-04-09  Benjamin Otte  <otte@gnome.org>
9845
9846         * gst/gstbin.c: (gst_bin_get_type):
9847         * gst/gstclock.c: (gst_clock_get_type):
9848         * gst/gstindex.c: (gst_index_get_type):
9849         * gst/gstobject.c: (gst_object_get_type),
9850         (gst_signal_object_get_type):
9851         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
9852         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
9853         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
9854         * gst/gstqueue.c: (gst_queue_get_type):
9855         * gst/gstregistry.c: (gst_registry_get_type):
9856         * gst/gstsystemclock.c: (gst_system_clock_get_type):
9857         * gst/gstthread.c: (gst_thread_get_type):
9858           don't use memchunks for these objects, use malloc instead
9859
9860 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9861
9862         * docs/gst/.cvsignore:
9863         * docs/gst/Makefile.am:
9864         * docs/gst/gstreamer-sections.txt:
9865         * docs/gst/tmpl/gstaggregator.sgml:
9866         * docs/gst/tmpl/gstbuffer.sgml:
9867         * docs/gst/tmpl/gstclock.sgml:
9868         * docs/gst/tmpl/gstelement.sgml:
9869         * docs/gst/tmpl/gstfakesink.sgml:
9870         * docs/gst/tmpl/gstfakesrc.sgml:
9871         * docs/gst/tmpl/gstfdsink.sgml:
9872         * docs/gst/tmpl/gstfdsrc.sgml:
9873         * docs/gst/tmpl/gstfilesink.sgml:
9874         * docs/gst/tmpl/gstfilesrc.sgml:
9875         * docs/gst/tmpl/gstidentity.sgml:
9876         * docs/gst/tmpl/gstindex.sgml:
9877         * docs/gst/tmpl/gstinfo.sgml:
9878         * docs/gst/tmpl/gstmd5sink.sgml:
9879         * docs/gst/tmpl/gstmultifilesrc.sgml:
9880         * docs/gst/tmpl/gstpad.sgml:
9881         * docs/gst/tmpl/gstpipefilter.sgml:
9882         * docs/gst/tmpl/gstpipeline.sgml:
9883         * docs/gst/tmpl/gstpluginfeature.sgml:
9884         * docs/gst/tmpl/gstqueue.sgml:
9885         * docs/gst/tmpl/gstregistry.sgml:
9886         * docs/gst/tmpl/gstscheduler.sgml:
9887         * docs/gst/tmpl/gstshaper.sgml:
9888         * docs/gst/tmpl/gstspider.sgml:
9889         * docs/gst/tmpl/gstspideridentity.sgml:
9890         * docs/gst/tmpl/gststatistics.sgml:
9891         * docs/gst/tmpl/gstsystemclock.sgml:
9892         * docs/gst/tmpl/gsttee.sgml:
9893         * docs/gst/tmpl/gstthread.sgml:
9894         * docs/gst/tmpl/gsttypefind.sgml:
9895         * docs/gst/tmpl/gstutils.sgml:
9896           further doc build fixes
9897
9898 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9899
9900         * docs/gst/Makefile.am:
9901           make docs exit on scanning problems
9902           fix nonsrcdir build issues
9903         * docs/gst/gstreamer-sections.txt:
9904           adding stuff from -unused
9905         * gst/gstqueue.h:
9906           create GstQueueSize
9907         * gst/schedulers/cothreads_compat.h:
9908           fix cothread warnings
9909
9910 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9911
9912         * docs/gst/gstreamer-sections.txt:
9913           remove defines deprecated by Benjamin
9914
9915 2004-04-07  Benjamin Otte  <otte@gnome.org>
9916
9917         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9918           when the buffer is complete, don't check if other buffers are needed
9919         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
9920           check that the offset is >0 so we don't try to read before the
9921           beginning of the file
9922         * gst/gstpad.c: (gst_pad_set_pad_template):
9923           sink the template, so we don't end up with 130k pad templates
9924
9925 2004-04-06  Benjamin Otte  <otte@gnome.org>
9926
9927         * gst/autoplug/gstspider.c: (gst_spider_link_add):
9928           don't ref the element, adding already reffed it. And we didn't unref
9929           it later anyway... (huge memleak when you used many spider elements)
9930         * gst/gstelement.c: (gst_element_base_class_finalize):
9931         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
9932         (gst_element_register):
9933         * gst/gsturi.c: (gst_element_make_from_uri):
9934           use gst_object_(un)ref instead of g_object(un)ref
9935
9936 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9937
9938         * gst/gstbuffer.h:
9939           remove macro that wouldn't work anymore because struct member has
9940           been removed.
9941         * gst/schedulers/entryscheduler.c: (schedule_forward):
9942           fix segfault for unconnected pads
9943         
9944 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9945
9946         reviewed by David Schleef <ds@schleef.org>
9947
9948         * gst/gstinfo.h:
9949           *_FORMAT modifiers should require putting a % in front of them for
9950           consistency reasons.
9951
9952 2004-04-05  Colin Walters  <walters@redhat.com>
9953
9954         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
9955         space.
9956
9957 2004-04-05  Benjamin Otte  <otte@gnome.org>
9958
9959         * configure.ac:
9960         * gst/Makefile.am:
9961         * gst/gst_private.h:
9962         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
9963           add support for detecting if GStreamer runs inside valgrind.
9964           requires valgrind (d'oh) and --enable-debug for correct cdetection.
9965           print a big message in valgrind that GStreamer has detected it's
9966           running inside and might now use different code.
9967         * gst/gstmemchunk.c: (populate), (free_area),
9968         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
9969         (gst_mem_chunk_free):
9970           flag memchunks for valgrind, so it can detect leaking of chunks.
9971           This allows detecting leaks of GstBuffer and GstEvent correctly
9972           inside valgrind.
9973
9974 2004-04-05  David Schleef  <ds@schleef.org>
9975
9976         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
9977           jensgr@gmx.net (Jens Granseuer)
9978
9979 2004-04-05  David Schleef  <ds@schleef.org>
9980
9981         * gst/gstbuffer.c: (_gst_buffer_sub_free),
9982         (gst_buffer_default_free), (gst_buffer_default_copy),
9983         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
9984         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
9985         structures in one place.
9986
9987 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9988
9989         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
9990           (GST_TIME_FORMAT, GST_TIME_ARGS)
9991
9992 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9993
9994         * testsuite/elements/Makefile.am:
9995           disable test until it stops breaking make distcheck
9996
9997 2004-04-05  Johan Dahlin  <johan@gnome.org>
9998
9999         * po/sv.po: Updated translation
10000
10001 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10002
10003         * gst/gstplugin.c: (gst_plugin_load_file):
10004           fix segfault for when original plugin was loaded statically
10005
10006 2004-04-05  Benjamin Otte  <otte@gnome.org>
10007
10008         * testsuite/debug/category.c: (main):
10009         * testsuite/debug/commandline.c: (main):
10010         * testsuite/debug/output.c: (main):
10011           fix tests to work again with debugging enabled
10012
10013 2004-04-05  Benjamin Otte  <otte@gnome.org>
10014
10015         * gst/schedulers/gstbasicscheduler.c:
10016         (gst_basic_scheduler_pad_link):
10017           fix to work with recent scheduling changes
10018
10019 2004-04-05  Benjamin Otte  <otte@gnome.org>
10020
10021         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
10022         prepareChangeLog doesn't work when cvs indents):
10023           don't throw an error when no element can be scheduled, there's too
10024           many weird reasons why it doesn't work. Return STOPPED instead.
10025           decoupled elemts' schedulability doesn't depend on bufpens.
10026
10027 2004-04-04  Benjamin Otte  <otte@gnome.org>
10028
10029         * gst/schedulers/gstbasicscheduler.c:
10030         (gst_basic_scheduler_pad_select):
10031           fix uninitialized variable warnings
10032
10033 2004-04-04  Benjamin Otte  <otte@gnome.org>
10034
10035         * gst/gstpad.c: (gst_pad_collect_valist):
10036           fix uninitialized variable warning
10037         * gst/schedulers/entryscheduler.c: (schedule_forward):
10038           fix shadowed variable
10039
10040 2004-04-04  Benjamin Otte  <otte@gnome.org>
10041
10042         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
10043         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
10044         (gst_pad_select):
10045         * gst/gstpad.h:
10046         * gst/gstscheduler.c: (gst_scheduler_pad_select),
10047         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
10048         * gst/gstscheduler.h:
10049           implement gst_pad_collect as replacement for gst_pad_select.
10050           deprecate gst_pad_select and gst_scheduler_(un)lock_element
10051           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
10052           new pad_select, lock and unlock calls.
10053         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
10054         * gst/cothreads.h:
10055         * gst/schedulers/cothreads_compat.h:
10056         * gst/schedulers/gthread-cothreads.h:
10057           remove unused cothread_lock and cothread_unlock calls
10058         * gst/schedulers/entryscheduler.c:
10059         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10060         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10061         (gst_entry_scheduler_pad_select):
10062           update to new API
10063         * gst/schedulers/gstbasicscheduler.c:
10064         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10065         (gst_basic_scheduler_pad_select):
10066           remove useless lock and unlock calls, update pad_select to new API
10067           (untested)
10068         * gst/schedulers/gstoptimalscheduler.c:
10069         (gst_opt_scheduler_class_init):
10070           remove useless select, lock and unlock function calls
10071         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10072           use gst_pad_collect instead of gst_pad_select
10073
10074 2004-04-04  Benjamin Otte  <otte@gnome.org>
10075
10076         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10077         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10078         (schedule_next_element), (print_entry):
10079           add can_schedule_pad to handle element states.
10080           add schedule_forward to select the correct entry to schedule next
10081
10082 2004-04-03  Benjamin Otte  <otte@gnome.org>
10083
10084         * gst/schedulers/entryscheduler.c: 
10085           remove unused variable, fix error inside Rb, fix compile warning in
10086           unreachable code
10087
10088 2004-04-03  Benjamin Otte  <otte@gnome.org>
10089
10090         * gst/schedulers/entryscheduler.c:
10091           completely revamp the inner workings, so it's a lot easier to
10092           understand and extend
10093
10094 2004-04-03  Andy Wingo  <wingo@pobox.com>
10095
10096         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10097         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10098         This allows better introspection of pipeline topology.
10099         (add_to_chain): Don't do trickery to put loop elements first;
10100         rather, queue a chain sort by marking the chain as dirty.
10101         (remove_from_chain): Mark the chain dirty.
10102         (sort_chain): New function. Sorts the group list so that terminal
10103         sinks are first. This means elements on the sink side will be
10104         preferentially sscheduled before elements on the src side of the
10105         pipeline.
10106         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10107         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10108         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10109         (group_inc_link): Change argument and variable names to match the
10110         new link structure member names (src and sink).
10111         (group_dec_link): Add some description
10112
10113 2004-04-03  Benjamin Otte  <otte@gnome.org>
10114
10115         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10116         * gst/gstinfo.h:
10117         * testsuite/debug/category.c: (main):
10118         * testsuite/debug/commandline.c: (main):
10119         * testsuite/debug/output.c: (main):
10120         * testsuite/debug/printf_extension.c: (main):
10121           fix to successfully build and test with --disable-gst-debug
10122           configure switch (fixes #138705)
10123
10124 2004-04-03  Benjamin Otte  <otte@gnome.org>
10125
10126         * docs/pwg/building-boiler.xml:
10127           add cvs login line and s/anonymous/anoncvs/
10128
10129 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10130
10131         reviewed by Benjamin Otte  <otte@gnome.org>
10132
10133         * gst/gststructure.c: (gst_structure_free):
10134           memleak fix: free fields array (partial fix for #134839)
10135
10136 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10137
10138         * docs/random/ds/0.9-suggested-changes:
10139           Add a note to change handoff use in fakesrc to be usable in
10140           a more generic way (fakesrc should be renamed to appsrc or so).
10141         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10142           Change signal type to scope, so we can fill the buffer in the
10143           handoff handler (that's the whole use of this signal...).
10144
10145 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10146
10147         * docs/pwg/other-ntoone.xml:
10148           Document muxers and n-to-1 elements.
10149
10150 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10151
10152         * gst/registries/gstxmlregistry.c
10153         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10154         determine if a file is a G_MODULE. The old one discards paths
10155         containing "so" somewhere in the middle. My home directory is
10156         called "soto". Go figure...
10157
10158 2004-03-31  David Schleef  <ds@schleef.org>
10159
10160         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10161         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10162         * gst/gstbuffer.h:
10163
10164 2004-03-31  David Schleef  <ds@schleef.org>
10165
10166         * gst/gstvalue.c: (gst_value_union_int_int_range),
10167         (gst_value_union_int_range_int_range), (gst_value_can_union),
10168         (gst_value_union), (_gst_value_initialize):  Add some union
10169         implementations.  We didn't have any previously.
10170         * testsuite/caps/Makefile.am:
10171         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10172         (gst_audioscale_getcaps), (test_caps), (main): A little test
10173         that is the same as the caps manipulation in audioscale.
10174
10175 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10176
10177         * docs/faq/general.xml:
10178           add entry about "does gst support format X?"
10179
10180 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10181
10182         * gst/gstthread.c:
10183           fix docs
10184         * gst/gstutils.h:
10185           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10186
10187 2004-03-30  Benjamin Otte  <otte@gnome.org>
10188
10189         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10190           set the offset of the buffer to the requested offset
10191         * gst/elements/gsttypefind.c: (stop_typefinding):
10192           revert patch 1.18 (which I unfortunately don't know the reason for).
10193           This is needed to allow downstream elements to seek. Otherwise
10194           typefind might overwrite a previous seek by downstream elements.
10195           This lead to errors with id3tag and typefind on some mp3s.
10196         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10197         (gst_entry_scheduler_iterate):
10198           be more verbose when debugging
10199
10200 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10201
10202         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10203           make sure we don't get NULL strings
10204
10205 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10206
10207         * gst/gstcaps.c:
10208         * gst/gstelement.c:
10209         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10210         * gst/gstindex.c: (gst_index_resolver_get_type),
10211         (gst_index_get_type), (gst_index_factory_get_type):
10212         * gst/gstinfo.c:
10213         * gst/gstpad.c:
10214         * gst/gstplugin.c:
10215         * gst/gsturi.c: (gst_uri_handler_get_type):
10216         * gst/gstvalue.c:
10217           first batch of documentation fixes
10218
10219 2004-03-29  David Schleef  <ds@schleef.org>
10220
10221         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10222         * docs/gst/gstreamer-docs.sgml:  More hacking
10223         * docs/gst/gstreamer-sections.txt:
10224         * docs/gst/tmpl/cothreads_compat.sgml:
10225         * docs/gst/tmpl/gstcaps.sgml:
10226         * docs/gst/tmpl/gstclock.sgml:
10227         * docs/gst/tmpl/gstelement.sgml:
10228         * docs/gst/tmpl/gstevent.sgml:
10229         * docs/gst/tmpl/gstpad.sgml:
10230         * docs/gst/tmpl/gstutils.sgml:
10231         * docs/gst/tmpl/gstxml.sgml:
10232         * docs/gst/tmpl/gthread-cothreads.sgml:
10233         * docs/random/ds/0.9-suggested-changes:
10234         * gst/elements/gstfakesink.h: doc fixes
10235         * gst/elements/gstfakesrc.h: doc fixes
10236         * gst/gstcaps.c: doc fixes
10237         * gst/gstcaps.h: doc fixes
10238         * gst/gstelement.c: doc fixes
10239         * gst/gstelement.h: doc fixes
10240         * gst/gstindex.c: doc fixes
10241         * gst/gstinfo.c: doc fixes
10242         * gst/gstpad.c: doc fixes
10243         * gst/gstpad.h: doc fixes
10244         * gst/gstplugin.c: doc fixes
10245         * gst/gsttypefind.h: doc fixes
10246         * gst/gsturi.c: doc fixes
10247         * gst/gstvalue.c: doc fixes
10248
10249 2004-03-29  Colin Walters  <walters@redhat.com>
10250
10251         * gst/registries/gstxmlregistry.c (get_time)
10252         (plugin_times_older_than_recurse):
10253         Use the result of stat to determine whether a path is a file,
10254         so we don't attempt to opendir() files.
10255
10256 2004-03-29  Benjamin Otte  <otte@gnome.org>
10257
10258         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10259           print caps in debugging output when setting caps failed
10260         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10261         (schedule_next_element), (get_buffer), (run_chainhandler),
10262         (element_may_start), (gst_entry_scheduler_chain_handler),
10263         (gst_entry_scheduler_get_handler),
10264         (gst_entry_scheduler_state_transition),
10265         (gst_entry_scheduler_pad_link):
10266           make this scheduler a testcase for mandatory
10267           discont-before-first-buffer which is needed if we want to allow apps
10268           to release the sound device.
10269           add SCHED_ASSERT macro to print scheduler state before an assertion
10270           triggers.
10271
10272 2004-03-29  Benjamin Otte  <otte@gnome.org>
10273
10274         * COPYING:
10275           replace by LGPL (former COPYING.LIB). The core is completely
10276           licensed LGPL.
10277         * COPYING.LIB:
10278           remove
10279
10280 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10281
10282         * po/af.po:
10283         * po/sv.po:
10284           updated Afrikaans and Swedish
10285
10286 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10287
10288         * po/LINGUAS:
10289         * po/az.po:
10290           adding Azerbaijani (Mətin Əmirov)
10291
10292 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10293
10294         * gst/gstelement.h: 
10295         * gst/gstelement.c (gst_element_set_time_delay): New function for
10296         setting element time taking into account a hardware buffering
10297         delay.
10298         (gst_element_set_time): Now just an invocation of
10299         gst_element_set_time_delay.
10300         * gst/gstclock.h: 
10301         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10302         allowing to set event times in the future.
10303         (gst_clock_get_event_time): Now just an invocation of
10304         gst_clock_get_event_time_delay.
10305
10306 2004-03-28  Benjamin Otte  <otte@gnome.org>
10307
10308         * gst/gstbin.c: (gst_bin_set_element_sched),
10309         (gst_bin_unset_element_sched):
10310           don't add decoupled elements to schedulers - otherwise it's
10311           impossible to control if a link to a decoupled element was already
10312           removed from a scheduler or not.
10313         * gst/schedulers/cothreads_compat.h:
10314         * gst/schedulers/gthread-cothreads.h:
10315           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10316           is no "unused" warning.
10317         * gst/schedulers/Makefile.am:
10318         * gst/schedulers/entryscheduler.c:
10319           add new scheduler, based on ideas from talking to David and Martin.
10320           It's supposed to be small and correct. Currently it's also slow (but
10321           it's not noticable)
10322         * examples/retag/retag.c: (main):
10323         * testsuite/bytestream/test1.c: (main):
10324           fix missing NULLs at end of variadic functions
10325         * testsuite/elements/.cvsignore:
10326           update
10327
10328 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10329
10330         * gst/gstevent.h:
10331         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10332
10333 2004-03-25  David Schleef  <ds@schleef.org>
10334
10335         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10336         * docs/gst/tmpl/gstaggregator.sgml:
10337         * docs/gst/tmpl/gstautoplugfactory.sgml:
10338         * docs/gst/tmpl/gstbin.sgml:
10339         * docs/gst/tmpl/gstbuffer.sgml:
10340         * docs/gst/tmpl/gstbufferstore.sgml:
10341         * docs/gst/tmpl/gstfakesink.sgml:
10342         * docs/gst/tmpl/gstfakesrc.sgml:
10343         * docs/gst/tmpl/gstmd5sink.sgml:
10344         * docs/gst/tmpl/gstreamer-unused.sgml:
10345         * docs/gst/tmpl/gstsearchfuncs.sgml:
10346         * docs/gst/tmpl/gstshaper.sgml:
10347         * docs/gst/tmpl/gstspider.sgml:
10348         * docs/gst/tmpl/gsttee.sgml:
10349         * docs/gst/tmpl/gstutils.sgml:
10350         * docs/gst/tmpl/gstvalue.sgml:
10351         * docs/gst/tmpl/gstxml.sgml:
10352         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10353         and we don't support it.
10354         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10355         (gst_use_threads), (gst_has_threads): same
10356         * gst/gstthreaddummy.c: same
10357         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10358         * gst/autoplug/gstspider.h: same
10359         * gst/elements/gstaggregator.h: Remove bogus function from header
10360         * gst/elements/gstfakesink.h: same
10361         * gst/elements/gstfakesrc.h: same
10362         * gst/elements/gstmd5sink.h: same
10363         * gst/elements/gstshaper.h: same
10364         * gst/elements/gsttee.h: same
10365         * gst/gstbin.c: doc fixes
10366         * gst/gstbin.h: Remove unused definition.
10367         * gst/gstbuffer.c: doc fixes
10368         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10369         * gst/gstfilter.c: doc fixes
10370         * gst/gsttag.c: doc fixes
10371         * gst/gstvalue.c: doc fixes
10372
10373 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10374
10375         * docs/pwg/advanced-types.xml:
10376           Document typefinding.
10377         * docs/pwg/other-oneton.xml:
10378           Document one-to-n elements, demuxers and parsers.
10379
10380 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10381
10382         reviewed by: David Schleef  <ds@schleef.org>
10383
10384         * configure.ac: Check bison version (bug #127838)
10385
10386 2004-03-25  David Schleef  <ds@schleef.org>
10387
10388         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10389         * docs/gst/gstreamer-sections.txt:
10390         * docs/gst/tmpl/gstautoplug.sgml:
10391         * docs/gst/tmpl/gststaticautoplug.sgml:
10392         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10393         * docs/gst/tmpl/gstutils.sgml:
10394         * docs/gst/tmpl/gstxml.sgml:
10395
10396 2004-03-24  David Schleef  <ds@schleef.org>
10397
10398         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10399         manual being such complete crap, that I decided to do major
10400         hacking of it.  This checkin replaces any fine tuning that
10401         may have been done previously, with the benefit of actually
10402         being complete for much of the API that was changed since
10403         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10404         * docs/gst/gstreamer-sections.txt:
10405         * docs/gst/tmpl/GstBin.sgml:
10406         * docs/gst/tmpl/GstBuffer.sgml:
10407         * docs/gst/tmpl/GstCaps.sgml:
10408         * docs/gst/tmpl/GstClock.sgml:
10409         * docs/gst/tmpl/GstCompat.sgml:
10410         * docs/gst/tmpl/GstData.sgml:
10411         * docs/gst/tmpl/GstElement.sgml:
10412         * docs/gst/tmpl/GstEvent.sgml:
10413         * docs/gst/tmpl/GstIndex.sgml:
10414         * docs/gst/tmpl/GstStructure.sgml:
10415         * docs/gst/tmpl/GstTag.sgml:
10416         * docs/gst/tmpl/cothreads.sgml:
10417         * docs/gst/tmpl/cothreads_compat.sgml:
10418         * docs/gst/tmpl/gettext.sgml:
10419         * docs/gst/tmpl/grammar.tab.sgml:
10420         * docs/gst/tmpl/gst-i18n-app.sgml:
10421         * docs/gst/tmpl/gst-i18n-lib.sgml:
10422         * docs/gst/tmpl/gst.sgml:
10423         * docs/gst/tmpl/gst_private.sgml:
10424         * docs/gst/tmpl/gstaggregator.sgml:
10425         * docs/gst/tmpl/gstarch.sgml:
10426         * docs/gst/tmpl/gstatomic.sgml:
10427         * docs/gst/tmpl/gstatomic_impl.sgml:
10428         * docs/gst/tmpl/gstbin.sgml:
10429         * docs/gst/tmpl/gstbuffer.sgml:
10430         * docs/gst/tmpl/gstbufferstore.sgml:
10431         * docs/gst/tmpl/gstcaps.sgml:
10432         * docs/gst/tmpl/gstclock.sgml:
10433         * docs/gst/tmpl/gstcompat.sgml:
10434         * docs/gst/tmpl/gstconfig.sgml:
10435         * docs/gst/tmpl/gstcpu.sgml:
10436         * docs/gst/tmpl/gstdata.sgml:
10437         * docs/gst/tmpl/gstdata_private.sgml:
10438         * docs/gst/tmpl/gstelement.sgml:
10439         * docs/gst/tmpl/gstenumtypes.sgml:
10440         * docs/gst/tmpl/gsterror.sgml:
10441         * docs/gst/tmpl/gstevent.sgml:
10442         * docs/gst/tmpl/gstfakesink.sgml:
10443         * docs/gst/tmpl/gstfakesrc.sgml:
10444         * docs/gst/tmpl/gstfilesink.sgml:
10445         * docs/gst/tmpl/gstfilter.sgml:
10446         * docs/gst/tmpl/gstindex.sgml:
10447         * docs/gst/tmpl/gstinfo.sgml:
10448         * docs/gst/tmpl/gstinterface.sgml:
10449         * docs/gst/tmpl/gstlog.sgml:
10450         * docs/gst/tmpl/gstmacros.sgml:
10451         * docs/gst/tmpl/gstmarshal.sgml:
10452         * docs/gst/tmpl/gstmd5sink.sgml:
10453         * docs/gst/tmpl/gstmultifilesrc.sgml:
10454         * docs/gst/tmpl/gstobject.sgml:
10455         * docs/gst/tmpl/gstpad.sgml:
10456         * docs/gst/tmpl/gstparse.sgml:
10457         * docs/gst/tmpl/gstpipeline.sgml:
10458         * docs/gst/tmpl/gstplugin.sgml:
10459         * docs/gst/tmpl/gstpluginfeature.sgml:
10460         * docs/gst/tmpl/gstqueue.sgml:
10461         * docs/gst/tmpl/gstreamer-unused.sgml:
10462         * docs/gst/tmpl/gstregistry.sgml:
10463         * docs/gst/tmpl/gstregistrypool.sgml:
10464         * docs/gst/tmpl/gstscheduler.sgml:
10465         * docs/gst/tmpl/gstsearchfuncs.sgml:
10466         * docs/gst/tmpl/gstshaper.sgml:
10467         * docs/gst/tmpl/gstspider.sgml:
10468         * docs/gst/tmpl/gstspideridentity.sgml:
10469         * docs/gst/tmpl/gststructure.sgml:
10470         * docs/gst/tmpl/gstsystemclock.sgml:
10471         * docs/gst/tmpl/gsttag.sgml:
10472         * docs/gst/tmpl/gsttaginterface.sgml:
10473         * docs/gst/tmpl/gsttee.sgml:
10474         * docs/gst/tmpl/gstthread.sgml:
10475         * docs/gst/tmpl/gsttrace.sgml:
10476         * docs/gst/tmpl/gsttrashstack.sgml:
10477         * docs/gst/tmpl/gsttypefind.sgml:
10478         * docs/gst/tmpl/gsttypes.sgml:
10479         * docs/gst/tmpl/gsturi.sgml:
10480         * docs/gst/tmpl/gsturitype.sgml:
10481         * docs/gst/tmpl/gstutils.sgml:
10482         * docs/gst/tmpl/gstvalue.sgml:
10483         * docs/gst/tmpl/gstversion.sgml:
10484         * docs/gst/tmpl/gstxml.sgml:
10485         * docs/gst/tmpl/gstxmlregistry.sgml:
10486         * docs/gst/tmpl/gthread-cothreads.sgml:
10487         * docs/gst/tmpl/types.sgml:
10488
10489 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10490
10491         * docs/pwg/other-sink.xml:
10492         * docs/pwg/other-source.xml:
10493           Documentation on how to write source and sink elements. Other
10494           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10495           manager, autoplugger) are all still pending.
10496
10497 2004-03-25  Benjamin Otte  <otte@gnome.org>
10498
10499         * testsuite/elements/Makefile.am:
10500         * testsuite/elements/gst-compprep-check:
10501           add check to make sure gst-compprep works
10502         * testsuite/elements/gst-inspect-check.in:
10503           improve initialization output
10504         * testsuite/Makefile.am:
10505         * testsuite/gst-inspect-check:
10506           remove old file
10507
10508 2004-03-24  David Schleef  <ds@schleef.org>
10509
10510         * testsuite/elements/Makefile.am:
10511         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10512         to the testsuite.
10513
10514 2004-03-24  Benjamin Otte  <otte@gnome.org>
10515
10516         * libs/gst/control/dparam.c: (gst_dparam_attach),
10517         (gst_dparam_detach):
10518         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10519           fix lvalue casts for real
10520
10521 2004-03-24  Benjamin Otte  <otte@gnome.org>
10522
10523         * gst/schedulers/gstbasicscheduler.c:
10524         (gst_basic_scheduler_src_wrapper):
10525         * gst/schedulers/gstoptimalscheduler.c:
10526         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10527         (pad_clear_queued), (gst_opt_scheduler_add_element),
10528         (gst_opt_scheduler_remove_element):
10529           fix GStreamer to not have issues with lvalue casts anymore (fixes
10530           #136841)
10531
10532 2004-03-24  Benjamin Otte  <otte@gnome.org>
10533
10534         * gst/gstelement.c:
10535           add documentation about a gobject quirk where the object hasn't the
10536           correct class pointer set on initialization
10537         * gst/schedulers/gstbasicscheduler.c:
10538         (gst_basic_scheduler_src_wrapper):
10539           make sure to not run into an infinite loop
10540
10541 2004-03-22  Benjamin Otte  <otte@gnome.org>
10542
10543         * gst/gstutils.c: (gst_util_dump_mem):
10544         * gst/gstutils.h:
10545           first argument of gst_util_dump_mem should be const
10546
10547 2004-03-22  Johan Dahlin  <johan@gnome.org>
10548
10549         * gst/gstvalue.h: Clean up a little bit.
10550
10551 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10552
10553         reviewed by Benjamin Otte  <otte@gnome.org>
10554
10555         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10556         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10557         (gst_aggregator_class_init), (gst_aggregator_init):
10558         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10559         (gst_filesrc_dispose), (gst_filesrc_set_location):
10560         * gst/elements/gstidentity.c: (gst_identity_finalize),
10561         (gst_identity_class_init), (gst_identity_chain):
10562         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10563         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10564         (gst_statistics_class_init):
10565         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10566         (gst_tee_get_property):
10567           clean up used memory in this elements correctly on teardown (closes
10568           #137279)
10569
10570 2004-03-20  Colin Walters  <walters@redhat.com>
10571
10572         * gst/registries/gstxmlregistry.c:
10573         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10574         registry saving atomic.
10575
10576 2004-03-20  Colin Walters  <walters@redhat.com>
10577
10578         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10579         Just use
10580         access() instead of actually creating and deleting files.
10581
10582 2004-03-18  David Schleef  <ds@schleef.org>
10583
10584         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10585         (bug #137625)
10586
10587 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10588
10589         * po/sv.po: updated translation (Christian Rose)
10590
10591 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10592
10593         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10594         (gst_filesink_get_query_types), (_do_init),
10595         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10596           return FALSE silently
10597         * po/af.po: updated translation (Petri Jooste)
10598
10599 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10600
10601         * Makefile.am:
10602         * configure.ac:
10603           dist common properly
10604         * po/af.po:
10605         * po/fr.po:
10606         * po/nl.po:
10607         * po/sr.po:
10608         * po/sv.po:
10609           refreshing translations
10610
10611 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10612
10613         * po/LINGUAS:
10614         * po/sv.po:
10615         * po/af.po:
10616           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10617
10618 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10619
10620         * Makefile.am: use common/release.mak
10621
10622 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10623
10624         * docs/faq/gst-uninstalled:
10625           adding gst-monkeysaudio to the list of possible plugin dirs
10626
10627 2004-03-16  David Schleef  <ds@schleef.org>
10628
10629         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10630         (gst_init_check_with_popt_table):  Fix some gettext strings to
10631         make them easier to translate.  Required making the strings
10632         non-const.
10633
10634 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10635
10636         * configure.ac: bump nano to 1
10637
10638 === release 0.8.0 ===
10639
10640 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10641
10642         * configure.ac: release 0.8.0, "Executive Slacks"
10643
10644 2004-03-16  Johan Dahlin  <johan@gnome.org>
10645
10646         * gst/schedulers/gstoptimalscheduler.c
10647         (gst_opt_scheduler_pad_unlink): Remove double ;,
10648         spotted by Scott Wheeler
10649
10650 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10651
10652         * configure.ac: bump libtool version
10653
10654 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10655
10656         * gst/gstcaps.h:
10657         * gst/gststructure.h:
10658           add reserved padding
10659
10660 2004-03-15  Benjamin Otte  <otte@gnome.org>
10661
10662         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10663           set the first parameter for select call correctly.
10664           (fixes #137230)
10665
10666 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10667
10668         * *.c,*.h: don't mix tabs and spaces
10669
10670 2004-03-15  Johan Dahlin  <johan@gnome.org>
10671
10672         * gst/schedulers/gstoptimalscheduler.c
10673         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
10674         crash on MPEG playback. My boolean arithmetic is a bit rusty.
10675
10676         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
10677         
10678 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10679
10680         * testsuite/Rules:
10681           fix gst-register rules
10682
10683 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10684
10685         * testsuite/Rules:
10686           use versioned gst-register
10687
10688 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10689
10690         * docs/libs/gstreamer-libs-sections.txt:
10691           remove </SUBSECTION>
10692         * gst/gstplugin.c:
10693         * gst/gstregistry.c: (gst_registry_add_plugin):
10694         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
10695         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
10696           add debugging and fix some comment blocks
10697
10698 2004-03-15  Johan Dahlin  <johan@gnome.org>
10699
10700         * *.h: Revert indent changes.
10701         
10702 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10703
10704         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
10705           g_error_free the g_error
10706         * tools/gst-feedback-m.m:
10707           check for other versions of gstreamer
10708         * tools/gst-indent:
10709           use sh, not bash
10710
10711 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10712
10713         * tools/gst-register.c: do not spill paths when registries are not
10714           writable, until we fix the "user running gst-register" case.
10715
10716 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10717
10718         * *.c, *.h: commit of gst-indent run on core
10719
10720 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10721
10722         * tools/gst-indent:
10723         * tools/Makefile.am:
10724           add our indentation style as a script
10725
10726 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10727
10728         * po/sr.po:
10729         * po/LINGUAS:
10730           added Serbian translation
10731
10732 2004-03-13  Benjamin Otte  <otte@gnome.org>
10733
10734         * gst/gstelement.c:
10735           add documentation note about gst_element_found_tags_for_pad not
10736           being usable in getfunctions. (see #137042)
10737
10738 2004-03-12  David Schleef  <ds@schleef.org>
10739
10740         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
10741         change API right now!  Readd gst_caps_is_simple() macro.
10742         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
10743         uninitialized variable.  I'd bet this caused crashes.
10744         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
10745
10746 2004-03-12  Johan Dahlin  <johan@gnome.org>
10747
10748         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
10749         * gst/gstcaps.h: Clean up
10750
10751         * gst/gst.c (init_post): call gst_caps_get_type() instead of
10752         _gst_caps_initalize()
10753
10754         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
10755         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
10756
10757         * gst/gststructure.c (gst_structure_get_type): Ditto
10758
10759         * gst/gststructure.h: Ditto
10760         
10761 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10762
10763         * gst/gstqueue.c: (gst_queue_init):
10764           Reset default max. values in queues. Reason is simply to avoid
10765           braindead use. If you want wider values, use the properties. The
10766           default is supposed to always work. Wider values would make this
10767           beast a memory hog by default (250 full-PAL RGB32 video frames?
10768           That's 440 MB! No thank you).
10769
10770 2004-03-10  David Schleef  <ds@schleef.org>
10771
10772         * tools/gst-run.c: (main):  Fix crash when no relevant tools
10773         were found.  (bug #136793)
10774
10775 2004-03-10  Johan Dahlin  <johan@gnome.org>
10776
10777         * gst/schedulers/gstoptimalscheduler.c
10778         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
10779         links to elements within the same group, so we can finally remove
10780         that annoying warning. Refactor the code a little bit
10781         (group_dec_links_for_element): Split out
10782
10783 2004-03-09  David Schleef  <ds@schleef.org>
10784
10785         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
10786         (bug #134863)
10787
10788 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10789
10790         * configure.ac: first bug fix due to major/minor bump
10791
10792 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10793
10794         * configure.ac: bump nano to 1
10795
10796 === release 0.7.6 ===
10797
10798 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10799
10800         * NEWS:
10801         * RELEASE:
10802         * configure.ac:
10803           releasing 0.7.6, "Almost"
10804         * po/fr.po:
10805         * po/nl.po:
10806         * tools/Makefile.am:
10807         * tools/gst-feedback-m.m:
10808           unversioned source
10809
10810 2004-03-09  Johan Dahlin  <johan@gnome.org>
10811
10812         Reviewed by: Thomas Vander Stichele
10813
10814         * gst/gstelement.c (gst_element_class_init): register second
10815         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
10816         language bindings can (de)marshall correctly.
10817
10818         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
10819
10820         * gst/gsterror.c (gst_g_error_get_type): New function
10821
10822         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
10823         with VOID:OBJECT,OBJECT,STRING 
10824
10825 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
10826
10827         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
10828         Free a leaked g_timer on early returns.
10829
10830 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10831
10832         * docs/pwg/advanced-types.xml:
10833           Add cinepak description.
10834
10835 2004-03-07  David Schleef  <ds@schleef.org>
10836
10837         * docs/random/mimetypes:  Added cinepak description
10838
10839 2004-03-07  Andy Wingo  <wingo@pobox.com>
10840
10841         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
10842
10843         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
10844         there are no links to other groups when a group is destroyed.
10845         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
10846         removed from a group, make sure the link count to elements linked
10847         to other pads is appropriately decremented. This really fixes
10848         #135672.
10849
10850         The 1.60->1.61 patch has been reapplied in light of this fix.
10851
10852         * gst/gstelement.c (gst_element_dispose): Really protect against
10853         multiple invocations this time.
10854
10855 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10856
10857         * docs/gst/gstreamer-sections.txt:
10858         * docs/gst/tmpl/gsttag.sgml:
10859           remove some deprecated functions, document some existing ones
10860         * gst/gsttag.c: (gst_tag_get_flag):
10861         * gst/gsttag.h:
10862           add accessor function
10863
10864 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10865
10866         * docs/gst/gstreamer-sections.txt:
10867         * docs/gst/tmpl/gsttag.sgml:
10868         * docs/gst/tmpl/gstxml.sgml:
10869         * gst/gsttag.c: (gst_tag_get_flag):
10870         * gst/gsttag.h:
10871
10872 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
10873
10874         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
10875         leak
10876
10877 2004-03-05  David Schleef  <ds@schleef.org>
10878
10879         * REQUIREMENTS: Add bison and flex.
10880         * configure.ac: Fix comment about bison.
10881         * docs/random/ds/0.9-suggested-changes: yer ma
10882         * tools/gst-inspect.c: (print_element_info):  Fix warning.
10883
10884 2004-03-05  Benjamin Otte  <otte@gnome.org>
10885
10886         * gst/gstelement.c: (gst_element_error_full):
10887           revert recent recursive state changing commit - messing with other
10888           elements' states is evil and should be done by apps only.
10889
10890 2004-03-05  Benjamin Otte  <otte@gnome.org>
10891
10892         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
10893           check for empty intersection instead of NULL caps
10894         (gst_element_get_compatible_pad_filtered):
10895           remove old workaround that is only a bug nowadays
10896
10897 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10898
10899         * gst/gstelement.c: (gst_element_error_full):
10900           make elements try to recursively change state to PAUSED on all
10901           parents after an error to suppress ensuing warnings
10902         * gst/parse/grammar.y:
10903           make it check if it was able to sync the state, and throw an error
10904           if not, so stuff like
10905           oggdemux ! vorbisdec ! osssink gets caught
10906
10907 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10908
10909         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
10910           it contains lib64; use AS_AC_EXPAND to handle it properly
10911
10912 2004-03-05  David Schleef  <ds@schleef.org>
10913
10914         * gst/gstcpuid_i386.s:  Remove unused code
10915         * libs/gst/getbits/getbits.c: (gst_getbits_init),
10916         (gst_getbits_newbuf): Remove MMX code
10917         * libs/gst/getbits/getbits.h: Remove MMX code
10918
10919 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
10920
10921         * debian/.cvsignore:
10922         * debian/README.Debian:
10923         * debian/changelog:
10924         * debian/control:
10925         * debian/control.in:
10926         * debian/copyright:
10927         * debian/gstreamer-core-libs-dev.files:
10928         * debian/gstreamer-core-libs.files:
10929         * debian/gstreamer-core.files:
10930         * debian/gstreamer-core.postinst:
10931         * debian/gstreamer-core.postrm:
10932         * debian/gstreamer-doc.files:
10933         * debian/gstreamer-doc.links:
10934         * debian/gstreamer-doc.lintian:
10935         * debian/gstreamer-runtime.files:
10936         * debian/gstreamer-runtime.manpages:
10937         * debian/gstreamer-runtime.postinst:
10938         * debian/gstreamer-runtime.postrm:
10939         * debian/gstreamer-tools.files:
10940         * debian/gstreamer-tools.manpages:
10941         * debian/libgstreamer-dev.files:
10942         * debian/libgstreamer0.4.1.files:
10943         * debian/libgstreamerVERSION.files:
10944         * debian/rules:
10945         Debian package info not maintained here.
10946
10947 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10948
10949         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10950         * gst/gstbin.c: (gst_bin_class_init):
10951         * gst/gstelement.c: (gst_element_class_init):
10952         * gst/gstindex.c: (gst_index_class_init):
10953         * gst/gstobject.c: (gst_object_class_init),
10954         (gst_signal_object_class_init):
10955         * gst/gstpad.c: (gst_pad_template_class_init):
10956         * gst/gstregistry.c: (gst_registry_class_init):
10957         * gst/gsturi.c: (gst_uri_handler_base_init):
10958         * gst/gstxml.c: (gst_xml_class_init):
10959         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10960         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
10961           make all signal names use dashes instead of underscore
10962
10963 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10964
10965         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
10966
10967 2004-03-03  Benjamin Otte  <otte@gnome.org>
10968
10969         * gst/schedulers/gstoptimalscheduler.c:
10970           revert last commit by Andy Wingo. It causes segfaults on unreffing
10971           in Rhythmbox. (see bug #135672)
10972
10973 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10974
10975         * po/fr.po: fix typo
10976
10977 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10978
10979         * tools/gst-inspect.c: (main): 
10980         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
10981
10982 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10983
10984         * configure.ac:
10985           get GLIB_ONLY and POPT flags for the nonversioned binaries
10986         * tools/Makefile.am:
10987           use them
10988
10989 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10990
10991         * gst/gst.c: (init_post):
10992           change so that GST_REGISTRY now is where the global registry gets
10993           saved, since that is where plugins now get attached to first, and
10994           spilled over to the user registry.  Note that in the case of using
10995           GST_REGISTRY env var, we don't want to affect any real registries
10996           beyond the one given by this var, and thus we don't set a user
10997           registry to spill to.  So make sure GST_REGISTRY is writable.
10998
10999 2004-03-01  David Schleef  <ds@schleef.org>
11000
11001         * AUTHORS:  Added some names.  Add yourself if you're missing.
11002
11003 2004-03-01  David Schleef  <ds@schleef.org>
11004
11005         * MAINTAINERS: Add
11006
11007 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
11008
11009         * configure.ac:
11010           remove whitespace
11011         * docs/gst/tmpl/gstbuffer.sgml:
11012         * docs/gst/tmpl/gstdata.sgml:
11013         * docs/gst/tmpl/gstreamer-unused.sgml:
11014         * docs/gst/tmpl/gstxml.sgml:
11015           doc update
11016         * docs/manuals.mak:
11017           add a FIXME
11018         * docs/pwg/intro-preface.xml:
11019         * docs/pwg/pwg.xml:
11020           remove GNOME
11021         * gst/gst.c: (init_post):
11022           try GST_PLUGIN_PATH paths for the _global_registry first
11023         * gst/gstelement.h:
11024           add the error message as well, otherwise (null) debug info doesn't
11025           make much sense
11026         * tools/gst-register.c: (main):
11027           spill paths to next registry if this registry is not writable
11028         * po/fr.po:
11029         * po/nl.po:
11030           translation updates
11031
11032 2004-03-01  Johan Dahlin  <johan@gnome.org>
11033
11034         * gst/gstbuffer.c (_gst_buffer_initialize): 
11035         * gst/gstdata.c (gst_data_get_type): 
11036         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
11037         instead of ref, since some applications that uses GBoxed
11038         routines depends on a function that actually returns a copy.
11039
11040 2004-02-27  Benjamin Otte  <otte@gnome.org>
11041
11042         * gst/gstbuffer.h:
11043           remove gst_buffer_free, use gst_data_unref
11044         * gst/gstdata.c: (gst_data_get_type):
11045           use refcounting in GstData GBoxed registration
11046         * gst/gstdata.h:
11047           remove gst_data_free, use gst_data_unref
11048
11049 2004-02-27  Johan Dahlin  <johan@gnome.org>
11050
11051         * gst/gstdata.c (gst_data_get_type): New function, register
11052         GstData as a GBoxed type.
11053
11054         * gst/gstdata.h (GST_TYPE_DATA): New macro
11055
11056 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11057
11058         * Makefile.am:
11059         * gstreamer.spec.in:
11060           put back RELEASE
11061         * gst/Makefile.am:
11062           clean up non-disting of built files
11063         * testsuite/debug/commandline.c:
11064           test fix for option rename
11065
11066 2004-02-26  David Schleef  <ds@schleef.org>
11067
11068         * configure.ac:  We don't really need glib-2.3.  Also remove
11069         some unneeded checks for library functions.
11070         * gst/Makefile.am:  Instead, we need to not dist files created
11071         by glib-genmarshal.
11072
11073 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11074
11075         * configure.ac:
11076           bump glib required version to 2.3.0 for g_value_takes_boxed
11077
11078  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11079
11080         * common/m4/gst-docs.m4
11081         change flavour text from enable to disable as enable is our default
11082         closes bug Bug 135304
11083
11084 === release 0.7.5 ===
11085  
11086  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11087  
11088         * NEWS:
11089           instate NEWS file
11090         * Makefile.am:
11091         * gstreamer.spec.in:
11092         * RELEASE:
11093           put back release
11094         * configure.ac:
11095         * docs/random/release:
11096           more updates
11097
11098 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11099
11100         * gst/gsttag.c: (_gst_tag_initialize):
11101         * po/fr.po:
11102         * po/nl.po:
11103           remove hyphen from codec tags
11104
11105 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11106
11107         * gst/parse/Makefile.am:
11108           fix dependency so that a make from a clean build works the first
11109           time
11110
11111 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11112
11113         * docs/random/release:
11114           update release strategy
11115         * po/fr.po:
11116           auto-update po file
11117         * po/nl.po:
11118           update dutch translation
11119
11120 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11121
11122         * docs/manual/debugging.xml:
11123         fix manual for new debugging system
11124
11125 2004-02-25  Andy Wingo  <wingo@pobox.com>
11126
11127         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11128         gst_pad_link_prepare. Please email the list with specific reasons
11129         for reverting.
11130
11131 2004-02-24  Andy Wingo  <wingo@pobox.com>
11132
11133         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11134         invocations.
11135
11136         * gst/schedulers/gstoptimalscheduler.c:
11137         I added a mess of prototypes at the top of the file by way of
11138         documentation. Some of the operations on chains and groups were
11139         re-organized.
11140
11141         (create_group): Added a type argument so if the group is enabled,
11142         the setup_group_scheduler knows what to do.
11143         (group_elements): Added a type argument here, too, to be passed on
11144         to create_group.
11145         (group_element_set_enabled): If an unlinked PLAYING element is
11146         added to a bin, we have to create a new group to hold the element,
11147         and this function will be called before the group is added to the
11148         chain. Thus we have a valid case for group->chain==NULL. Instead
11149         of calling chain_group_set_enabled, just set the flag on the group
11150         (the chain's status will be set when the group is added to it).
11151         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11152         Setup the group scheduler when the group is enabled, not
11153         specifically when an element goes PAUSED->PLAYING. This means
11154         PLAYING elements can be added, linked, and scheduled into a
11155         PLAYING pipeline, as was intended.
11156         (add_to_group): Don't ref the group twice. I don't know when this
11157         double-ref got in here. Removing it has the potential to cause
11158         segfaults if other parts of the scheduler are buggy. If you find
11159         that the scheduler is segfaulting for you, put in an extra ref
11160         here and see if that hacks over the underlying issue. Of course,
11161         then find out what code is unreffing a group it doesn't own...
11162         (create_group): Make the extra refcount floating, and remove it
11163         after adding the element. This means that...
11164         (unref_group): Destroy when the refcount reaches 0, not 1, like
11165         every other refcounted object in the known universe.
11166         (remove_from_group): When a group becomes empty, set it to be not
11167         active, and remove it from its chain. Don't unref it again,
11168         there's no floating reference any more.
11169         (destroy_group): We have to remove the group from the chain in
11170         remove_from_group (rather than here) to break refcounting cycles
11171         (the chain always has a ref on the group). So assert that
11172         group->chain==NULL.
11173         (ref_group_by_count): Removed, it was commented out anyway.
11174         (merge_chains): Use the remove_from_chain and add_to_chain
11175         primitives to do the reparenting, instead of rolling our own
11176         implementation.
11177         (add_to_chain): The first non-disabled group in the chain's group
11178         list will be the entry point for the chain. Because buffers can
11179         accumulate in loop elements' peer bufpens, we preferentially
11180         schedule loop groups before get groups to avoid unnecessary
11181         execution of get-based groups when the bufpens are already full.
11182         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11183         (get_group_schedule_function): Ditto.
11184         (loop_group_schedule_function): Ditto.
11185         (gst_opt_scheduler_loop_wrapper): Ditto.
11186         (gst_opt_scheduler_iterate): Ditto.
11187
11188         I understand the opt scheduler now, yippee!
11189
11190         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11191         (gst_pad_get_name, gst_pad_set_chain_function) 
11192         (gst_pad_set_get_function, gst_pad_set_event_function) 
11193         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11194         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11195         (gst_pad_set_query_function, gst_pad_get_query_types) 
11196         (gst_pad_get_query_types_default) 
11197         (gst_pad_set_internal_link_function) 
11198         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11199         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11200         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11201         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11202         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11203         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11204         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11205         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11206         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11207         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11208         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11209         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11210         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11211         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11212         argument checks, and some doc fixes.
11213
11214         (gst_pad_custom_new_from_template): Um, does anyone
11215         use these functions? Actually make a custom pad instead of a
11216         normal one.
11217         (gst_pad_try_set_caps): Transpose some checks.
11218         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11219         the pad is in negotiation.
11220         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11221         
11222         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11223
11224         * gst/gstelement.h: 
11225         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11226         on the list.
11227
11228 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11229
11230         * gst/gstbin.c: (gst_bin_add):
11231           add error for not being able to add elements
11232
11233 2004-02-22  Julien MOUTTE <julien@moutte.net>
11234
11235         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11236         audio-codec and video-codec.
11237
11238 2004-02-22  Benjamin Otte  <otte@gnome.org>
11239
11240         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11241
11242         * autogen.sh:
11243           replace test -e with test -x for mkinstalldirs to be more portable.
11244           (fixes #134816)
11245
11246 2004-02-22  Benjamin Otte  <otte@gnome.org>
11247
11248         * gst/gstpad.c:
11249           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11250           too noisy
11251         * gst/gsttag.c: (_gst_tag_initialize):
11252         * gst/gsttag.h:
11253           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11254         * libs/gst/control/dparam.c: (gst_dparam_attach):
11255         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11256           check that types for attached dparams match
11257
11258 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11259
11260         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11261         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11262         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11263           fix errors
11264
11265 2004-02-20  Andy Wingo  <wingo@pobox.com>
11266
11267         * gst/gstbin.c:
11268         * gst/gstbuffer.c:
11269         * gst/gstplugin.c:
11270         * gst/registries/gstxmlregistry.c: 
11271         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11272
11273         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11274         (gst_element_add_pad): DEBUG->INFO, some fixes.
11275         (gst_element_get_compatible_pad_template): Just see if the
11276         templates' caps intersect, not if one is a strict subset of the
11277         other. This conforms more to what gst_pad_link_intersect() does.
11278         (gst_element_class_add_pad_template): Don't memcpy the pad
11279         template, just ref it.
11280         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11281
11282         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11283         (gst_pad_link_filtered): Debug changes.
11284         (gst_pad_link_prepare): New function, consolidated from
11285         can_link_filtered and link_filtered.
11286
11287         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11288         look more like that of the functions in gstelement.c
11289
11290         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11291         object, and return the empty string if object is NULL.
11292
11293         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11294         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11295         LOG, not DEBUG. We still get flex info on debug.
11296
11297         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11298         debug string more verbose.
11299         (plugin_times_older_than): DEBUG->LOG.
11300
11301 2004-02-20  Julien MOUTTE <julien@moutte.net>
11302
11303         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11304         will emit found_tag for each stream they demux with the codec.
11305
11306 2004-02-20  Benjamin Otte  <otte@gnome.org>
11307
11308         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11309           copy navigation event correctly. Check freeing tag lists. 
11310         * gst/gstthread.c: (gst_thread_change_state):
11311           don't abort() on state changing mess - it might happen because of
11312           bugs.
11313         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11314           use boxed functions
11315         * gst/gstvalue.h:
11316           fix GST_VALUE_HOLDS_CAPS
11317
11318 2004-02-19  David Schleef  <ds@schleef.org>
11319
11320         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11321         and use it for GST_FUNCTION.  (bug #134750)
11322
11323 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11324
11325         * po/fr.po:
11326         * po/nl.po:
11327           updating translations
11328
11329 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11330
11331         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11332
11333 2004-02-18  kost@imn.htwk-leipzig.de
11334
11335         reviewed by: David Schleef  <ds@schleef.org>
11336
11337         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11338         for libgstcontrol.
11339
11340 2004-02-18  David Schleef  <ds@schleef.org>
11341
11342         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11343         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11344         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11345         * tools/gst-inspect.c: (print_element_info): Support dumping of
11346         double dparam information.
11347
11348 2004-02-17  David Schleef  <ds@schleef.org>
11349
11350         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11351         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11352         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11353         Use GST_TYPE_CAPS in signal prototype.
11354         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11355         Convert GST_TYPE_CAPS to boxed.
11356         * gst/gstelement.c: (gst_element_class_init):
11357         Use GST_TYPE_TAG_LIST in signal prototype.
11358         * gst/gstindex.c: (gst_index_class_init):
11359         * gst/gstindex.h:
11360         Add GST_TYPE_INDEX_ENTRY type.
11361         * gst/gstmarshal.list:
11362         Add necessary marshal types.
11363         * gst/gstpad.c: (gst_real_pad_class_init),
11364         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11365         (gst_pad_recover_caps_error):
11366         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11367         * gst/gststructure.c: (_gst_structure_initialize),
11368         (gst_structure_copy), (_gst_structure_copy_conditional):
11369         * gst/gststructure.h:
11370         Convert GST_TYPE_STRUCTURE to boxed.
11371         * gst/gsttag.c: (gst_tag_list_get_type):
11372         * gst/gsttag.h:
11373         Add GST_TYPE_TAG_LIST type.
11374
11375 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11376
11377         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11378         to what we agreed with david.
11379         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11380
11381 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11382
11383         * po/nl.po: update translation
11384
11385 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11386
11387         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11388           throw an error if spider is trying to play a mime type there is
11389           no decoder for
11390         * po/POTFILES.in:
11391           add gst/autoplug/gstspider.c for translation
11392
11393 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11394
11395         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11396         silently when the pad is negotiating.
11397
11398 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11399
11400         * docs/faq/Makefile.am:
11401           add script to run gstreamer uninstalled 
11402         * docs/faq/faq.xml:
11403         * docs/faq/developing.xml:
11404         * docs/faq/gst-uninstalled:
11405           extract script to run gstreamer uninstalled
11406         * docs/manuals.mak:
11407           add EXTRA_SOURCES variable for Makefile.am's to set to
11408           use additional SOURCE files for the doc build
11409
11410 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11411
11412         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11413
11414 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11415
11416         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11417         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11418         an error was thrown by osssink. Basically a state change failure for
11419         an element in a different scheduling group was considered as
11420         successful, which means that caps nego was going on and weird stuff
11421         happened. Like I wrote in the comment there, if someone wants to
11422         revert that please drop me a mail explaining why because I really see
11423         no point in keeping that broken behaviour there.
11424         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11425         be empty, we then return NULL which will trigger a nice error when 
11426         pulling from the pad.
11427
11428 2004-02-13  David Schleef  <ds@schleef.org>
11429
11430         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11431         (gst_dparam_get_property), (gst_dparam_set_property),
11432         (gst_dparam_do_update_default):
11433         * libs/gst/control/dparam.h:
11434         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11435         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11436         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11437         (gst_dpsmooth_do_update_double):
11438         * libs/gst/control/dparam_smooth.h:
11439         * libs/gst/control/dparammanager.c:
11440         (gst_dpman_inline_direct_update):
11441         Add support for double dparams.
11442
11443 2004-02-13  David Schleef  <ds@schleef.org>
11444
11445         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11446         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11447
11448 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11449
11450         reviewed by: David Schleef  <ds@schleef.org>
11451
11452         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11453         (gst_fdsrc_init), (gst_fdsrc_set_property),
11454         (gst_fdsrc_get_property), (gst_fdsrc_get):
11455         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11456         and sends an EOS event if file descriptor reading times out.
11457
11458 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11459
11460         * configure.ac:
11461           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11462
11463 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11464
11465         * configure.ac: pass required libxml version as argument
11466         (bug reported by Christophe Fergeau)
11467
11468 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11469   
11470         * docs/gst/gstreamer-docs.sgml:
11471         * docs/gst/tmpl/gstxml.sgml:
11472         * docs/libs/gstreamer-libs-docs.sgml:
11473           version API docs
11474
11475 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11476
11477         * gst/gstinfo.c:
11478         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11479         (gst_registry_pool_feature_filter):
11480         * gst/gstthread.c: (gst_thread_class_init):
11481         * gst/gstvalue.c:
11482           add includes exposed by building without libxml
11483         * gst/indexers/Makefile.am:
11484           do not build fileindex when LOADSAVE disabled; we should have
11485           a better libxml check later since fileindex depends on xml, not
11486           LOADSAVE or REGISTRY
11487         * libs/gst/control/Makefile.am:
11488           link with m
11489         * tools/Makefile.am:
11490           fix wrong source code for gst-xmlinspect
11491
11492 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11493
11494         * configure.ac:
11495           fix gcov help output
11496           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11497         * docs/random/release:
11498           some updated releasing notes
11499         * gstreamer.spec.in:
11500           more updates
11501
11502 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11503
11504         * docs/faq/faq.xml:
11505         * docs/manual/manual.xml:
11506         * docs/pwg/pwg.xml:
11507         * docs/pwg/titlepage.xml:
11508           put version in documentation
11509
11510 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11511
11512         * tools/Makefile.am: fix man page installation
11513
11514 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11515
11516         * configure.ac:
11517           don't check for libxml when load/save and registry disabled (#105844)
11518         * gstreamer.spec.in:
11519           sync with fedora candidate spec
11520
11521 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11522
11523         * po/fr.po:
11524         * po/nl.po:
11525           replace multidisksrc with multifilesrc
11526
11527 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11528
11529         * po/POTFILES.in:
11530           update to multidisksrc => multifilesrc file renaming (#134145)
11531
11532 2004-02-11  David Schleef  <ds@schleef.org>
11533
11534         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11535         * docs/gst/tmpl/gstpadtemplate.sgml: same
11536         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11537         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11538         fixing dance.
11539         * gst/gstutils.c: Remove disabled code that uses GstProps.
11540         * gst/registries/gstxmlregistry.h: same
11541         * docs/random/ds/0.9-suggested-changes: random notes
11542
11543 2004-02-11  kost@imn.htwk-leipzig.de
11544
11545         reviewed by: David Schleef  <ds@schleef.org>
11546
11547         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11548         initialisation of clock (bug #134128)
11549
11550 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11551
11552         * configure.ac:
11553         * gst/elements/Makefile.am:
11554         * gst/elements/gstelements.c:
11555         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11556         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11557         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11558         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11559         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11560         * gst/elements/gstmultifilesrc.h:
11561           rename multidisksrc to multifilesrc (part of #122200)
11562
11563 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11564
11565         * docs/manuals.mak:
11566           fix automake complaints
11567         * gst-element-check.m4:
11568           fix unquotedness
11569
11570 2004-02-11  David Schleef  <ds@schleef.org>
11571
11572         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11573         * gst/gstatomic_impl.h: Disable sparc implementation.
11574
11575 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11576
11577         * gst-element-check.m4:
11578           fix underquoted macros as reported by automake 1.8.x (#133800)
11579         * configure.ac:
11580           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11581           by autopoint (fixes #132996)
11582
11583 2004-02-10  Andy Wingo  <wingo@pobox.com>
11584
11585         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11586         way to do inheritance.
11587         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11588         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11589         Routine docs.
11590         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11591         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11592         doc.
11593         (gst_pad_unlink, gst_pad_is_linked): Docs.
11594         (gst_pad_renegotiate): A brief description of capsnego.
11595         (gst_pad_try_set_caps): Document.
11596         (gst_pad_try_set_caps_nonfixed): Document.
11597         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11598         (gst_pad_set_parent): Deprecated (although not out of the API).
11599         (gst_pad_get_parent): Deprecated, although many plugins use this.
11600         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11601         are private and will go away in 0.9.
11602         (gst_pad_perform_negotiate): Doc.
11603         (gst_pad_link_unnegotiate): I think this is meant to be static.
11604         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11605         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11606         (gst_pad_get_peer): Doc updates.
11607         (gst_pad_caps_change_notify): Doc.
11608         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11609         (gst_ghost_pad_new): Doc fixes.
11610
11611         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11612         (gst_object_check_uniqueness): 
11613
11614         * gst/gstelement.c (gst_element_add_pad) 
11615         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11616         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11617         (gst_element_get_static_pad, gst_element_get_pad_list) 
11618         (gst_element_class_get_pad_template_list) 
11619         (gst_element_class_get_pad_template): Work on the docs.
11620         (gst_element_get_pad_template_list): Uses the class method.
11621         (gst_element_get_compatible_pad_template): Docs, and consolidate
11622         some test conditions. 
11623         (gst_element_get_pad_from_template): New static function.
11624         (gst_element_request_compatible_pad): Docs, and work with
11625         non-request compatible templates. 
11626         (gst_element_get_compatible_pad_filtered): Docs and remove
11627         redundant checks.
11628         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11629         (gst_element_link_filtered, gst_element_link_many) 
11630         (gst_element_link, gst_element_link_pads) 
11631         (gst_element_unlink_many): Docs.
11632
11633 2004-02-05  Andy Wingo  <wingo@pobox.com>
11634
11635         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11636         s/pointer/boxed/.
11637
11638         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11639
11640         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11641         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11642         with the type=GST_TYPE_CAPS. This allows language bindings to know
11643         what kind of data they're dealing with.
11644
11645         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11646         to NULL when g_value_init is called. GstCaps, which rolls its own
11647         type implementation, now does the same instead of allocating empty
11648         caps.
11649         (_gst_caps_initialize, _gst_caps_collect_value,
11650         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11651         table methods. This allows G_VALUE_COLLECT to work.
11652
11653 2004-02-05  Andy Wingo  <wingo@pobox.com>
11654
11655         * configure.ac:
11656         * testsuite/Makefile.am (SUBDIRS): 
11657         * testsuite/ghostpads/Makefile.am: 
11658         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11659
11660         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
11661         These two routines are the only ones that set
11662         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
11663         pad template. They should be made static, depending on ABI needs.
11664         (gst_real_pad_dispose): Handle the case of ghost pads without a
11665         parent. Assert after dealing with ghost pads that the ghost pad
11666         list is empty.
11667         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
11668         set after creation.
11669         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
11670         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
11671         functions. set_property will call add_ghost_pad/remove_ghost_pad
11672         as appropriate.
11673         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
11674
11675         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
11676         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
11677         (gst_element_remove_pad): Handle ghost pads as well.
11678         (gst_element_remove_ghost_pad): Deprecated (could be removed,
11679         depending on API-stability needs).
11680
11681 2004-02-05  Andy Wingo  <wingo@pobox.com>
11682
11683         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
11684         of course they're const
11685
11686 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11687
11688         * tools/Makefile.am:
11689         * tools/gst-feedback:
11690         * tools/gst-feedback-0.7:
11691           make gst-feedback versioned too for consistency
11692
11693 2004-02-11  David Schleef  <ds@schleef.org>
11694
11695         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11696         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
11697
11698 2004-02-10  Julien MOUTTE <julien@moutte.net>
11699
11700         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
11701         the structure does not contain a valid tag list. Adding a safety check
11702         to remove a noisy warning in that case.
11703
11704 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11705
11706         * gst/gst.c: fix name to be in line with others
11707
11708 2004-02-09  Julien MOUTTE <julien@moutte.net>
11709
11710         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
11711         not shout that loud when len is 0. Just return 0 silently.
11712
11713 2004-02-09  Julien MOUTTE  <julien@moutte.net>
11714
11715         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
11716         because data_unref has one and I prefer the debug to be symetric.
11717         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
11718         were refed when added to the queue and unrefed only once when the queue
11719         was flushed. Now the flush handler unref the buffers two times : first
11720         unref for the ref added when pushing in the queue's tail and second
11721         unref to destroy the flushed buffer.
11722
11723 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11724
11725         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
11726
11727 2004-02-06  David Schleef  <ds@schleef.org>
11728
11729         * docs/random/ds/0.9-suggested-changes: Random ramblings
11730         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
11731         to int before printing.
11732         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
11733         * gst/parse/parse.l: same.  See bug #129600
11734
11735 2004-02-06  David Schleef  <ds@schleef.org>
11736
11737         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
11738         (gst_index_add_entry), (gst_index_add_associationv),
11739         (gst_index_add_association): Add gst_index_add_associationv()
11740         and clean up gst_index_add_association(). #127133
11741
11742 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11743
11744         * autogen.sh: check out common with right tag if CVS/Tag exists
11745
11746 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11747
11748         * testsuite/ghostpads/ghostpads.c: (main):
11749           fix testsuite from segfaulting
11750
11751 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11752
11753         * Makefile.am: add release target
11754         * configure.ac: bump nano to 1
11755         * docs/random/release:
11756
11757 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11758
11759         * gst/gstcaps.h:
11760         * gst/gstelement.c: (gst_element_base_class_init),
11761         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11762         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11763         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11764         (gst_real_pad_dispose):
11765         * gst/gststructure.c: (gst_structure_free),
11766         (gst_structure_from_string):
11767           put reverted patch back in
11768         * gst/gstelement.c: (gst_element_remove_pad):
11769           free explicit caps if they're set
11770         * gst/gstpad.c: (_gst_pad_default_fixate_func):
11771           copy the structure when fixating
11772
11773 2004-02-05  David Schleef  <ds@schleef.org>
11774
11775         * gst/gstmarshal.list:
11776         * gst/gstpad.c: (gst_real_pad_class_init),
11777         (_gst_real_pad_fixate_accumulator):
11778         Revert POINTER->BOXED change in signal marshaller.
11779
11780 === release 0.7.4 ===
11781                                                                                 
11782 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11783                                                                                 
11784         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
11785         * configure.ac: changed for release
11786
11787 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
11788
11789         * gstreamer.spec.in:
11790           bump required version of gtk-doc
11791
11792 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11793
11794         * gst/gstcaps.h:
11795         * gst/gstelement.c: (gst_element_base_class_init),
11796         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11797         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11798         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11799         (gst_real_pad_dispose):
11800         * gst/gststructure.c: (gst_structure_free),
11801         (gst_structure_from_string):
11802           revert patch that breaks applications, reapply after release
11803           to get this fixed properly
11804
11805 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11806
11807         * gst/gsttag.c: (_gst_tag_initialize):
11808         * gst/gsttag.h:
11809           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
11810
11811 2004-02-04  David Schleef  <ds@schleef.org>
11812
11813         Fix some memleaks:
11814         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
11815         (gst_spider_plug_from_srcpad):
11816         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
11817
11818 2004-02-04  David Schleef  <ds@schleef.org>
11819
11820         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
11821         a GstRealPad before accessing its structure members.
11822
11823 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11824
11825         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
11826         (gst_clock_get_speed):
11827         * gst/gstclock.h:
11828           reset padding, remove unused fields
11829
11830 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11831
11832         * gst/autoplug/gstspideridentity.c:
11833         (gst_spider_identity_sink_loop_type_finding):
11834           use get_allowed_caps, not get_caps (fixes #132519)
11835         * gst/elements/gsttypefind.c: (stop_typefinding):
11836           use correct order when sending buffers and seeking
11837
11838 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11839
11840         * configure.ac:
11841         * gst/gstelement.h:
11842         * gst/gstpad.h:
11843         * gst/gstqueue.h:
11844           upgrade libtool CURRENT, reset padding
11845
11846 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11847
11848         * configure.ac:
11849           bump to prerelease
11850           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
11851
11852 2004-02-04  David Schleef  <ds@schleef.org>
11853
11854         * docs/random/ds/0.9-suggested-changes: random notes
11855         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
11856         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
11857         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
11858         expansion.
11859         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11860         (gst_filesink_get_query_types): same
11861         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
11862         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
11863         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
11864         to use new GST_PTR_FORMAT.
11865         * gst/gstelement.h: deprecate function factory macros
11866         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
11867         These are our last variadic macros that can't be replaced with
11868         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
11869         attempting to deprecate gst_element_clock_wait().
11870         * gst/gstevent.h: same
11871         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11872         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
11873         * gst/gstpad.h: deprecate function factory macros similar to above.
11874
11875 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11876
11877         * configure.ac:
11878         * tools/Makefile.am:
11879         * tools/gst-run.c: (popt_callback), (hash_print_key),
11880         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
11881         (get_candidates), (main):
11882           add new source file to generate non-versioned wrapper binaries
11883           for our tools.
11884
11885 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11886
11887         * gst/gstevent.c: (_gst_event_free):
11888           actually break; inside the switch statement
11889         * gst/parse/grammar.y:
11890           fix memleak where GValues weren't unset
11891
11892 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11893
11894         * gst/gststructure.c: (gst_structure_from_string):
11895           fix huge memleak
11896         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11897         (new_entry), (gst_type_find_element_chain):
11898         * gst/gstelement.c: (gst_element_base_class_init),
11899         (gst_element_class_set_details):
11900         * gst/gstpad.c: (gst_pad_can_link_filtered):
11901           fix smaller memleaks
11902         * gst/gstpad.c: (gst_real_pad_dispose):
11903           check that explicit caps are gone
11904         * gst/gststructure.c: (gst_structure_free):
11905           actually free the structure
11906         * gst/gstelement.c: (gst_element_clear_pad_caps):
11907           unset explicit caps
11908
11909 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11910
11911         * tools/Makefile.am:
11912           use AM_CFLAGS since all the CFLAGS are the same
11913           use AM_LDFAGS
11914
11915 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11916
11917         * docs/manual/gnome.xml:
11918           expand example a little
11919         * gst/gst.c: (gst_init_with_popt_table),
11920         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
11921           make sure popt option displays are done with right textdomain
11922           use GstPoptOption type
11923         * gst/gst.h:
11924           create GstPoptOption type
11925
11926 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11927
11928         * gst/gsterror.c: (_gst_stream_errors_init):
11929         * gst/gsterror.h:
11930           adding error type for no codec
11931         * po/POTFILES.in:
11932           add gst-inspect
11933         * po/nl.po:
11934           update dutch translation
11935         * tools/gst-inspect.c: (print_element_list), (main):
11936           do proper internationalization
11937         * tools/gst-launch.c: (idle_func):
11938           remove commented out function call
11939
11940 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11941
11942         * docs/README:
11943           add some error fixing notes
11944         * docs/gst/gstreamer-sections.txt:
11945           remove double entries
11946         * docs/gst/tmpl/gstbin.sgml:
11947         * docs/gst/tmpl/gstclock.sgml:
11948           remove override
11949         * docs/gst/tmpl/gstelement.sgml:
11950         * docs/gst/tmpl/gstindex.sgml:
11951         * docs/gst/tmpl/gstobject.sgml:
11952         * docs/gst/tmpl/gstpadtemplate.sgml:
11953         * docs/gst/tmpl/gstreamer-unused.sgml:
11954         * docs/gst/tmpl/gsttag.sgml:
11955         * docs/gst/tmpl/gstthread.sgml:
11956         * docs/gst/tmpl/gstxml.sgml:
11957         * gst/gsttag.h:
11958           sync header prototypes with c decls
11959         * gst/gsttaginterface.c:
11960           fix doc headers
11961
11962 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11963
11964         * gst/parse/Makefile.am:
11965         * gst/gstobject.h:
11966           get rid of gstmarshal.h dependency. It's not needed.
11967         * gst/gst.h:
11968         * gst/elements/gstfakesink.c:
11969         * gst/elements/gstfakesrc.c:
11970         * gst/elements/gstidentity.c:
11971         * gst/gstbin.c:
11972         * gst/gstelement.c:
11973         * gst/gstindex.c:
11974         * gst/gstobject.c:
11975         * gst/gstpad.c:
11976         * gst/gstthread.c:
11977         * gst/gstxml.c:
11978         * libs/gst/control/dparam.c:
11979         * libs/gst/control/dparammanager.c:
11980           include gstmarshal.h.
11981         Fixes #132045
11982
11983 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11984
11985         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11986         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
11987         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
11988         * gst/elements/gstfilesrc.h:
11989           don't ref the filesrc when creating mmaped buffers. Don't keep a
11990           list of not-yet-destroyed buffers.
11991         * gst/gstbuffer.h:
11992           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
11993
11994 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11995
11996         * gst/gst.c: (init_pre):
11997           remove textdomain
11998
11999 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12000
12001         * docs/pwg/advanced-events.xml:
12002         * docs/pwg/advanced-scheduling.xml:
12003         * docs/pwg/intro-basics.xml:
12004         * docs/pwg/other-manager.xml:
12005         * docs/pwg/other-nton.xml:
12006         * docs/pwg/other-ntoone.xml:
12007         * docs/pwg/other-oneton.xml:
12008         * docs/pwg/pwg.xml:
12009           All sort of documentation... Forgot what. Point is that I want this
12010           in before I leave. The 'other-*' will be the last section and will
12011           explain issues specific to these type of elements.
12012
12013 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12014
12015         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12016         (gst_filesrc_get_read):
12017           set all the values on buffers that we can
12018
12019 2004-02-02  David Schleef  <ds@schleef.org>
12020
12021         Change usage of isblah() to g_ascii_isblah() to be more locale
12022         independent.  (#133076)
12023         * gst/gsturi.c: (gst_uri_protocol_check_internal):
12024         * gst/gstutils.c:
12025         * gst/parse/parse.l:
12026
12027 2004-02-02  Jon Trowbridge  <trow@gnu.org>
12028
12029         reviewed by: David Schleef  <ds@schleef.org>
12030
12031         Fix memory leaks:
12032         * gst/gstcaps.c: (gst_caps_to_string):
12033         * gst/registries/gstxmlregistry.c:
12034         (gst_xml_registry_add_path_list_func),
12035         (gst_xml_registry_parse_padtemplate):
12036
12037 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12038
12039         * gst/gstelement.c: (gst_element_default_error):
12040           suffix error messages with period
12041
12042 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12043
12044         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12045         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12046         * gst/gsterror.c: (gst_error_get_message):
12047           Suffix with dots
12048         * po/fr.po:
12049         * po/nl.po:
12050           Update translation files
12051
12052 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12053
12054         * gst/autoplug/gstspideridentity.c:
12055         (gst_spider_identity_sink_loop_type_finding):
12056         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12057         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12058         (gst_filesink_close_file), (gst_filesink_handle_event),
12059         (gst_filesink_chain):
12060         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12061         (gst_filesrc_get_read), (gst_filesrc_open_file):
12062         * gst/elements/gstidentity.c: (gst_identity_chain):
12063         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12064         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12065         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12066         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12067         * gst/gsterror.c: (_gst_core_errors_init),
12068         (_gst_library_errors_init), (_gst_resource_errors_init),
12069         (_gst_stream_errors_init), (gst_error_get_message):
12070         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12071         (gst_pad_recover_caps_error), (gst_pad_pull):
12072         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12073         * gst/schedulers/gstbasicscheduler.c:
12074         (gst_basic_scheduler_chainhandler_proxy),
12075         (gst_basic_scheduler_gethandler_proxy),
12076         (gst_basic_scheduler_cothreaded_chain):
12077           Suffix error messages with period.
12078           Use (NULL) instead of NULL
12079
12080 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12081
12082         * docs/gst/tmpl/gstelement.sgml:
12083         * docs/gst/tmpl/gstxml.sgml:
12084         * gst/gstelement.c: (gst_element_error_full):
12085           add element path to error
12086
12087 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12088
12089         * docs/random/mimetypes:
12090           update raw int/float info
12091         * gst/gsttag.c: (_gst_tag_initialize):
12092         * gst/gsttag.h:
12093           add GST_TAG_ENCODER
12094
12095 2004-01-30  David Schleef  <ds@schleef.org>
12096
12097         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12098           missing (#132991)
12099
12100 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12101
12102         reviewed by Benjamin Otte 
12103           parts of the patch submitted in bug #113913
12104
12105         * configure.ac:
12106           use AC_C_INLINE. Use = instead of == with test
12107         * examples/plugins/example.c:
12108         * gst/autoplug/gstspideridentity.c:
12109         * gst/elements/gstfdsrc.c:
12110         * gst/elements/gstfilesrc.c:
12111         * gst/elements/gstidentity.c:
12112         * gst/elements/gstmultidisksrc.c:
12113         * gst/elements/gststatistics.c:
12114         * gst/gstelement.c:
12115         * gst/gstobject.c:
12116         * gst/gstpad.c:
12117         * gst/gstpipeline.c:
12118         * gst/gstthread.c:
12119           don't end enums with a comma
12120         * gst/gstindex.c: (gst_index_compare_func):
12121           do explicit casting to gint
12122         * gst/gsttrace.c: (gst_trace_text_flush):
12123           #define strsize as a macro
12124
12125 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12126
12127         * docs/README:
12128         * docs/gst/gstreamer-docs.sgml:
12129         * docs/gst/gstreamer-sections.txt:
12130         * docs/gst/tmpl/gstelement.sgml:
12131         * docs/gst/tmpl/gsterror.sgml:
12132         * docs/gst/tmpl/gstinterface.sgml:
12133         * docs/gst/tmpl/gstreamer-unused.sgml:
12134         * docs/gst/tmpl/gststructure.sgml:
12135         * docs/gst/tmpl/gsttag.sgml:
12136         * docs/gst/tmpl/gsttaginterface.sgml:
12137         * docs/gst/tmpl/gstvalue.sgml:
12138         make sure all API ends up in the built docs
12139         * gst/gstinterface.c:
12140         * gst/gststructure.c: (gst_structure_id_set_value),
12141         (gst_structure_set_value), (gst_structure_id_get_value):
12142         * gst/gststructure.h:
12143         * gst/gstvalue.h:
12144         sync .h with .c declarations
12145
12146 2004-01-30  Julien Moutte  <julien@moutte.net>
12147
12148         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12149         Ronald will fix riffread.
12150
12151 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12152
12153         * docs/pwg/advanced-interfaces.xml:
12154           Added tuner interface docs.
12155
12156 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12157
12158         * docs/random/mimetypes:
12159           correct Theora information
12160         * gst/gstelement.h:
12161           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12162
12163 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12164
12165         * gst/gstelement.c: (gst_element_error_full):
12166         * gst/gstelement.h:
12167           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12168
12169 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12170
12171         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12172         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12173         again and even before DISCONT.
12174         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12175         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12176         bytestream so that it's not stopping to fill the bytestream if events
12177         different than EOS or DISCONT are received. Instead it process them so
12178         that they go downstream.
12179
12180 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12181
12182         * docs/gst/tmpl/gstelement.sgml:
12183         * docs/gst/tmpl/gstreamer-unused.sgml:
12184         * docs/gst/tmpl/gstxml.sgml:
12185         * gst/autoplug/gstspideridentity.c:
12186         (gst_spider_identity_sink_loop_type_finding):
12187         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12188         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12189         (gst_filesink_close_file), (gst_filesink_handle_event),
12190         (gst_filesink_chain):
12191         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12192         (gst_filesrc_get_read), (gst_filesrc_open_file):
12193         * gst/elements/gstidentity.c: (gst_identity_chain):
12194         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12195         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12196         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12197         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12198         * gst/gstelement.h:
12199         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12200         (gst_pad_recover_caps_error), (gst_pad_pull):
12201         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12202         * gst/schedulers/gstbasicscheduler.c:
12203         (gst_basic_scheduler_chainhandler_proxy),
12204         (gst_basic_scheduler_gethandler_proxy),
12205         (gst_basic_scheduler_cothreaded_chain):
12206           gst_element_error -> GST_ELEMENT_ERROR
12207
12208 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12209
12210         * docs/Makefile.am:
12211         * docs/gst/tmpl/gstelement.sgml:
12212         * docs/gst/tmpl/gstxml.sgml:
12213         * docs/manuals.mak:
12214         * docs/pwg/advanced-request.xml:
12215         * docs/pwg/advanced-scheduling.xml:
12216         * docs/pwg/advanced-tagging.xml:
12217           fix non-validating docbook using CDATA
12218           make sure make check-local gets run first to check if it validates
12219
12220 2004-01-29  Julien MOUTTE <julien@moutte.net>
12221
12222         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12223         handling (up and downstream).
12224         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12225         my_filter thing.
12226
12227 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12228
12229         * docs/pwg/advanced-tagging.xml:
12230           Add docs about tag writing.
12231
12232 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12233
12234         * docs/pwg/advanced-tagging.xml:
12235           Add a part about tag reading and application signalling... Tag
12236           writing still needs to be documented.
12237         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12238           We can set file locations in READY, too.
12239
12240 2004-01-29  Julien MOUTTE <julien@moutte.net>
12241
12242         * docs/random/ds/element-checklist: Adding some notes about src
12243         events.
12244
12245 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12246
12247         * docs/random/mimetypes:
12248           Update docs to point to correct elements for various mimetypes, and
12249           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12250           <stephane.loeuillet@tiscali.fr>.
12251
12252 2004-01-28  David Schleef  <ds@schleef.org>
12253
12254         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12255
12256 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12257
12258         * docs/random/mimetypes:
12259           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12260           undefined"
12261         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12262           make it only work in NULL.
12263         * gst/gstcaps.c:
12264           don't posion NULL caps
12265         * gst/gstelement.c: (gst_element_set_time):
12266           add debugging statement
12267         * gst/gstelement.c: (gst_element_emit_found_tag),
12268         (gst_element_found_tag_func), (gst_element_found_tags):
12269         * gst/gstelement.h:
12270           These functions take const taglists
12271         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12272           fix memleak
12273         * gst/gstpad.c: (gst_pad_event_default):
12274           make more effort on handling discont and clocks, g_warn if everything
12275           fails
12276         * gst/gststructure.c: (gst_structure_remove_fields),
12277         (gst_structure_remove_fields_valist):
12278         * gst/gststructure.h:
12279           add gst_structure_remove_fields(_valist)
12280         * gst/gsttag.c:
12281           fix doc glitch
12282
12283 2004-01-28  David Schleef  <ds@schleef.org>
12284
12285         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12286         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12287         Fix memory leakage of gst_caps_to_string().
12288
12289         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12290         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12291         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12292         (gst_spider_identity_sink_loop_type_finding):
12293         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12294         (find_suggest):
12295         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12296         (gst_pad_set_explicit_caps):
12297         * gst/parse/grammar.y:
12298
12299 2004-01-28  David Schleef  <ds@schleef.org>
12300
12301         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12302         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12303         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12304         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12305         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12306         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12307         (gst_debug_log_default), (_gst_info_printf_extension),
12308         (_gst_info_printf_extension_arginfo):  Add printf extension.
12309         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12310         * gst/gststructure.c: (gst_structure_to_string),
12311         (_gst_structure_parse_value): Use gst_value_deserialize() and
12312         remove old code.
12313         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12314         (gst_value_deserialize_boolean), (gst_strtoi),
12315         (gst_value_deserialize_int), (gst_value_deserialize_double),
12316         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12317         a bunch of deserialize functions and gst_value_deserialize.
12318         * gst/gstvalue.h: er, _de_serialize, not unserialize
12319         * testsuite/caps/string-conversions.c: (main): We don't currently
12320         handle (float) in caps, so convert these to (double).
12321         * testsuite/debug/Makefile.am: Add new test for the printf extension
12322         * testsuite/debug/printf_extension.c: (main): same
12323
12324 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12325
12326         * docs/random/company/time:
12327           Add some docs about clocking and time
12328
12329 2004-01-28  Julien MOUTTE <julien@moutte.net>
12330
12331         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12332
12333 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12334
12335         * docs/pwg/advanced-clock.xml:
12336         * docs/pwg/advanced-dparams.xml:
12337         * docs/pwg/advanced-events.xml:
12338         * docs/pwg/advanced-interfaces.xml:
12339         * docs/pwg/advanced-midi.xml:
12340         * docs/pwg/advanced-request.xml:
12341         * docs/pwg/advanced-scheduling.xml:
12342         * docs/pwg/advanced-tagging.xml:
12343         * docs/pwg/advanced-types.xml:
12344         * docs/pwg/appendix-checklist.xml:
12345         * docs/pwg/building-boiler.xml:
12346         * docs/pwg/building-chainfn.xml:
12347         * docs/pwg/building-filterfactory.xml:
12348         * docs/pwg/building-pads.xml:
12349         * docs/pwg/building-props.xml:
12350         * docs/pwg/building-signals.xml:
12351         * docs/pwg/building-state.xml:
12352         * docs/pwg/building-testapp.xml:
12353         * docs/pwg/intro-basics.xml:
12354         * docs/pwg/intro-preface.xml:
12355         * docs/pwg/other-autoplugger.xml:
12356         * docs/pwg/other-sink.xml:
12357         * docs/pwg/other-source.xml:
12358         * docs/pwg/titlepage.xml:
12359           fix up id's
12360
12361 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12362
12363         * docs/95NonPath:
12364         * docs/HACKING:
12365         * docs/README:
12366         * docs/building-the-docs-on-debian:
12367           collect relevant bits of doc info
12368
12369 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12370
12371         * docs/pwg/advanced_tagging.xml:
12372           Half-assed commit so Thomas can re-arrange document IDs here to be
12373           consistent, too.
12374
12375 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12376
12377         * docs/manual/autoplugging.xml:
12378         * docs/manual/bins-api.xml:
12379         * docs/manual/bins.xml:
12380         * docs/manual/buffers-api.xml:
12381         * docs/manual/buffers.xml:
12382         * docs/manual/clocks.xml:
12383         * docs/manual/components.xml:
12384         * docs/manual/cothreads.xml:
12385         * docs/manual/debugging.xml:
12386         * docs/manual/dparams-app.xml:
12387         * docs/manual/dynamic.xml:
12388         * docs/manual/elements-api.xml:
12389         * docs/manual/elements.xml:
12390         * docs/manual/factories.xml:
12391         * docs/manual/gnome.xml:
12392         * docs/manual/goals.xml:
12393         * docs/manual/helloworld.xml:
12394         * docs/manual/helloworld2.xml:
12395         * docs/manual/init-api.xml:
12396         * docs/manual/intro.xml:
12397         * docs/manual/links-api.xml:
12398         * docs/manual/links.xml:
12399         * docs/manual/manual.xml:
12400         * docs/manual/motivation.xml:
12401         * docs/manual/pads-api.xml:
12402         * docs/manual/pads.xml:
12403         * docs/manual/plugins-api.xml:
12404         * docs/manual/plugins.xml:
12405         * docs/manual/programs.xml:
12406         * docs/manual/queues.xml:
12407         * docs/manual/quotes.xml:
12408         * docs/manual/schedulers.xml:
12409         * docs/manual/states-api.xml:
12410         * docs/manual/states.xml:
12411         * docs/manual/threads.xml:
12412         * docs/manual/typedetection.xml:
12413         * docs/manual/xml.xml:
12414           use chapter, part, section or misc as id starts for all bits
12415
12416 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12417
12418         * docs/gst/gstreamer-sections.txt:
12419           Fix up TITLE of the sections
12420
12421 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12422
12423         * docs/pwg/advanced_interfaces.xml:
12424           Add documentation on propertyprobing.
12425         * docs/pwg/advanced_events.xml:
12426         * docs/pwg/advanced_tagging.xml:
12427         * docs/pwg/building_boiler.xml:
12428         * docs/pwg/building_filterfactory.xml:
12429         * docs/pwg/pwg.xml:
12430           Move filterfactory and tagging into their own chapter, add a chapter
12431           on events. all these are empty placeholders that will be filled in
12432           some day.
12433
12434 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12435
12436         * docs/pwg/advanced_interfaces.xml:
12437           Docs for mixer interface. Also a check for website uploading.
12438
12439 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12440
12441         * docs/HACKING:
12442         * docs/Makefile.am:
12443         * docs/faq/Makefile.am:
12444         * docs/gst/Makefile.am:
12445         * docs/gst/tmpl/gstelement.sgml:
12446         * docs/gst/tmpl/gstplugin.sgml:
12447         * docs/gst/tmpl/gstreamer-unused.sgml:
12448         * docs/libs/Makefile.am:
12449         * docs/manual/Makefile.am:
12450         * docs/manuals.mak:
12451         * docs/pwg/Makefile.am:
12452         * docs/upload.mak:
12453           Separate out upload target and make it similar for
12454           both docbook and gtk-doc docs
12455
12456 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12457
12458         * docs/manuals.mak:
12459           Fix upload target to work with freedesktop
12460
12461 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12462
12463         * docs/pwg/advanced_types.xml:
12464           Add notes on creating your own types.
12465         * docs/pwg/building_boiler.xml:
12466         * docs/pwg/building_pads.xml:
12467         * docs/pwg/building_state.xml:
12468           Add some stuff about how to retrieve values from structures, how
12469           that relates to types and change layout slightly again to be almost
12470           perfect.
12471
12472 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12473
12474         * docs/pwg/advanced_dparams.xml:
12475         * docs/pwg/advanced_scheduling.xml:
12476           Change index layout slightly.
12477
12478 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12479
12480         * docs/pwg/advanced_clock.xml:
12481         * docs/pwg/advanced_interfaces.xml:
12482         * docs/pwg/advanced_midi.xml:
12483           General placeholders for now.
12484         * docs/pwg/advanced_request.xml:
12485           Explanation about sometimes and request pads.
12486         * docs/pwg/advanced_scheduling.xml:
12487           Concept of bytestream, loopfunctions and schedulers.
12488         * docs/pwg/building_boiler.xml:
12489           Add something about plugin-init.
12490
12491 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12492
12493         * docs/pwg/building_pads.xml:
12494           Fix broken docbook
12495
12496 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12497
12498         * docs/pwg/advanced_interfaces.xml:
12499         * docs/pwg/pwg.xml:
12500           Add as a placeholder for future filling-in.
12501         * docs/pwg/basics_autoplugging.xml:
12502         * docs/pwg/basics_buffers.xml:
12503         * docs/pwg/basics_elements.xml:
12504         * docs/pwg/basics_events.xml:
12505         * docs/pwg/basics_plugins.xml:
12506         * docs/pwg/basics_types.xml:
12507           Remove, because unused (this is all in intro_basics.xml).
12508         * docs/pwg/building_signals.xml:
12509           Short intro to signals + reference to GObject docs - we really
12510           shouldn't go into these sort of things to deply because we don't
12511           use them that extensively anyway.
12512         * docs/pwg/building_state.xml:
12513           Explanation of states. Benjamin, please check.
12514         * docs/pwg/building_testapp.xml:
12515           Put everything in one page - putting only a few lines of content
12516           per page doesn't really make sense.
12517
12518           Time to get into the advanced topics. ;).
12519
12520 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12521
12522         * docs/pwg/advanced_types.xml:
12523           Finish documenting the current state of mimetypes.
12524         * docs/pwg/building_boiler.xml:
12525         * docs/pwg/building_chainfn.xml:
12526         * docs/pwg/building_pads.xml:
12527         * docs/pwg/building_props.xml:
12528         * docs/pwg/building_testapp.xml:
12529           Start documenting the "how to build a simple audio filter" part
12530           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12531           states and (maybe?) a short introduction to capsnego in the chapter
12532           on pads (building_pads.xml). Capsnego should probably be explained
12533           fully in advanced_capsnego.xml or so.
12534
12535 2004-01-26  David Schleef  <ds@schleef.org>
12536
12537         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12538         * gst/gstpad.h: Add new function to allow element to (somewhat)
12539         specify non-fixed caps on a pad.
12540         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12541         that I added a few weeks ago.
12542
12543 2004-01-26  David Schleef  <ds@schleef.org>
12544
12545         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12546           making try_set_caps() work with non-fixed caps.
12547
12548 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12549
12550         * docs/pwg/advanced_types.xml:
12551         * docs/pwg/intro_basics.xml:
12552         * docs/pwg/intro_preface.xml:
12553         * docs/pwg/pwg.xml:
12554         * docs/pwg/titlepage.xml:
12555           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12556           in here (docs/random/mimetypes), and will from there on work on both
12557           updating outdated parts and adding missing parts.
12558           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12559
12560 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12561
12562         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12563           policy is set
12564
12565 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12566
12567         * gst/gstelement.h:
12568           remove gst_element_factory_get_version. It doesn't exist anymore.
12569         * gst/gstplugin.c:
12570         * gst/gstplugin.h:
12571           remove gst_plugin_set_name and change gst_plugin_get_longname to
12572           gst_plugin_get_description to match code.
12573         * gst/gsterror.h:
12574           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12575         * gst/gstpad.c: (gst_pad_try_set_caps):
12576           make it work with nonfixed caps.
12577           Note that even in the nonfixed case the link function of the pad
12578           that tries to set caps isn't called.
12579
12580 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12581
12582         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12583           fix bug where buffer was not assembled correctly
12584         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12585           silence by default
12586         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12587           only seek if there's no more buffers that could work without seeking
12588
12589 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12590
12591         * gst/gsttag.c: (_gst_tag_initialize):
12592         * gst/gsttag.h:
12593           Add application tag (for encoding/muxing app).
12594
12595 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12596
12597         * autogen.sh:
12598           make autopoint force, and libtoolize not copy
12599         * common/m4/as-docbook.m4:
12600           added docbook xml catalog setup check
12601         * common/m4/gst-doc.m4:
12602           use docbook check
12603
12604 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12605
12606         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12607         * gst/gsttag.h:
12608           add GstTagFlag
12609
12610 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12611
12612         * docs/gst/gstreamer-sections.txt:
12613         * docs/gst/tmpl/gst.sgml:
12614         * docs/gst/tmpl/gstbuffer.sgml:
12615         * docs/gst/tmpl/gstclock.sgml:
12616         * docs/gst/tmpl/gstelement.sgml:
12617         * docs/gst/tmpl/gstreamer-unused.sgml:
12618         * docs/gst/tmpl/gstxml.sgml:
12619           sync latest API changes to docs
12620
12621 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12622
12623         * gst/gstpluginfeature.c:
12624           fix doc snippet
12625         * tools/gst-inspect.c: (print_element_list):
12626           fix output of typefind
12627           add GPL header
12628         * tools/gst-launch.c:
12629           add GPL header
12630
12631 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12632
12633         * gst/elements/Makefile.am:
12634         * gst/elements/gstelements.c:
12635         * gst/elements/gsttypefindelement.c:
12636         * gst/elements/gsttypefindelement.h:
12637         * po/POTFILES.in:
12638         * po/fr.po:
12639         * po/nl.po:
12640           renamed gsttypefindelement to gsttypefind, conserving CVS history
12641
12642 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12643
12644         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12645         * gst/gsttag.h:
12646           add some tags used in ogg as well
12647           fix _ in replaygain tags
12648
12649 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12650
12651         * gst/gsterror.h:
12652           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12653
12654 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12655
12656         * gst/gstelement.c: (gst_element_error_full):
12657         * gst/gstelement.h:
12658           change _extended to _full
12659
12660 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12661
12662         reviewed by: <delete if not using a buddy>
12663
12664         * docs/gst/tmpl/gst.sgml:
12665         * docs/gst/tmpl/gstbuffer.sgml:
12666         * docs/gst/tmpl/gstclock.sgml:
12667         * docs/gst/tmpl/gstelement.sgml:
12668         * docs/gst/tmpl/gstreamer-unused.sgml:
12669         * docs/gst/tmpl/gstxml.sgml:
12670         * gst/gstelement.c: (gst_element_error_full):
12671         * gst/gstelement.h:
12672
12673 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12674
12675         * gst/gstelement.h: fix _gst_element_error_printf prototype
12676
12677 2004-01-20  David Schleef  <ds@schleef.org>
12678
12679         * gst/gststructure.c: (gst_structure_to_string):
12680         Convert function to use gst_value_serialize().
12681         * gst/gstvalue.c: (gst_value_serialize_list),
12682         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
12683         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
12684         (gst_value_serialize_int), (gst_value_serialize_double),
12685         (gst_string_wrap), (gst_value_serialize_string),
12686         (gst_value_serialize), (gst_value_deserialize):
12687         * gst/gstvalue.h:
12688         Add implementations for serialize.
12689
12690 2004-01-20  Julien MOUTTE  <julien@moutte.net>
12691
12692         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
12693         we want to keep that one in the future or change xvidenc.c to use 
12694         another error.
12695
12696 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12697
12698         * gst/gstelement.c: (_gst_element_error_printf):
12699         * gst/gstelement.h:
12700           privatise function
12701
12702 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12703
12704         * docs/random/error:
12705           doc explaining error system
12706         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12707           cleanup
12708
12709 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12710
12711         * gst/gst-i18n-app.h:
12712         * gst/gst-i18n-lib.h:
12713           remove inclusion of config.h
12714         * po/POTFILES.in:
12715         * po/nl.po:
12716           add gst/gstelement.c
12717
12718 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12719
12720         * po/nl.po: updated Dutch translation
12721
12722 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12723
12724         * gst/gsterror.c: (_gst_core_errors_init),
12725         (_gst_library_errors_init), (_gst_resource_errors_init),
12726         (_gst_stream_errors_init):
12727         remove ending punctuation dots
12728
12729 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12730
12731         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12732         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
12733         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12734         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12735         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12736         use GST_ERROR_SYSTEM
12737
12738 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12739
12740         * gst/gstelement.c: (gst_element_error_printf),
12741         (gst_element_error_extended):
12742         * gst/gstelement.h:
12743           add a helper printf function so we can have NULL values passed.
12744
12745 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12746
12747         * gst/gstelement.h:
12748           add G_STMT macros to gst_element_error, which isn't strictly
12749           necessary but people tell me to anyway.
12750
12751 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12752
12753         * gst/Makefile.am:
12754         * gst/autoplug/gstspideridentity.c:
12755         (gst_spider_identity_sink_loop_type_finding):
12756         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12757         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12758         (gst_filesink_close_file), (gst_filesink_handle_event),
12759         (gst_filesink_chain):
12760         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
12761         (gst_filesrc_map_region), (gst_filesrc_get_read),
12762         (gst_filesrc_open_file):
12763         * gst/elements/gstidentity.c: (gst_identity_chain):
12764         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12765         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12766         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12767         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
12768         * gst/gst.h:
12769         * gst/gst_private.h:
12770         * gst/gstelement.c: (gst_element_class_init),
12771         (gst_element_default_error), (gst_element_error_func),
12772         (gst_element_error_extended):
12773         * gst/gstelement.h:
12774         * gst/gsterror.c: (_gst_core_errors_init),
12775         (_gst_library_errors_init), (_gst_resource_errors_init),
12776         (_gst_stream_errors_init), (gst_error_get_message):
12777         * gst/gsterror.h:
12778         * gst/gstinfo.c: (_gst_debug_init):
12779         * gst/gstmarshal.list:
12780         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12781         (gst_pad_recover_caps_error), (gst_pad_pull):
12782         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12783         * gst/schedulers/gstbasicscheduler.c:
12784         (gst_basic_scheduler_chainhandler_proxy),
12785         (gst_basic_scheduler_gethandler_proxy),
12786         (gst_basic_scheduler_cothreaded_chain):
12787         * po/POTFILES.in:
12788         * po/fr.po:
12789         * po/nl.po:
12790           change error signal
12791           add error categories
12792
12793 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
12794
12795         * gst/gsttag.c: (_gst_tag_initialize):
12796         * gst/gsttag.h:
12797         Add replaygain tag
12798
12799 2004-01-18  Colin Walters  <walters@verbum.org>
12800
12801         * examples/retag/retag.c: Call gst_init before processing
12802         program args.  Add g_assert to _link_many call.
12803
12804 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12805
12806         * gst/gstpad.c: (gst_pad_alloc_buffer):
12807           Return a newly allocated buffer when the pad has no peer.
12808
12809 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12810
12811         * gst/gstclock.c: (gst_clock_get_time):
12812           make it compile with gcc 2.95 again.
12813           Patch by Scott Wheeler
12814
12815 2004-01-15  David Schleef  <ds@schleef.org>
12816
12817         * gst/gstcaps.h:
12818         Added gst_caps_is_simple() macro.
12819         * testsuite/caps/caps.c: (test1):
12820         * testsuite/caps/intersect2.c: (main):
12821         * testsuite/caps/intersection.c: (main):
12822         Fixes to make 'make check' work again after removing
12823         gst_caps_is_chained().
12824
12825 2004-01-15  Leif Johnson <leif@ambient.2y.net>
12826
12827         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
12828         and additions to the MIDI document.
12829
12830 2004-01-15  David Schleef  <ds@schleef.org>
12831
12832         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
12833         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
12834         of GST_RPAD_, since we don't know if it's a real or ghost pad.
12835
12836 2004-01-15  David Schleef  <ds@schleef.org>
12837
12838         * gst/gstqueue.c:
12839         * gst/gstqueue.h:
12840         Fix the spelling of "treshold" and make min_threshold actually
12841         affect the queue.
12842
12843 2004-01-15  David Schleef  <ds@schleef.org>
12844
12845         * gst/gstcaps.c:
12846         Add lots of documentation.
12847         * gst/gstcaps.h:
12848         Deprecate a few functions.
12849         * gst/gstpad.c:
12850         Removed use of deprecated functions.
12851
12852 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12853
12854         * gst/gstpad.c: (gst_pad_is_linked):
12855         * gst/gstpad.h:
12856           implement gst_pad_is_linked
12857         * gst/gstelement.h:
12858           reserve space for initiate_state_change
12859
12860 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12861
12862         * gst/autoplug/gstspideridentity.c:
12863         (gst_spider_identity_sink_loop_type_finding):
12864           break infinite loop by just returning instead of looping
12865         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
12866           set event time difference correctly. Set it to 1 second instead
12867           of 100ms to be more tolerant
12868         * gst/gstelement.c: (gst_element_set_time):
12869           add debugging output
12870
12871 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12872
12873         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
12874           query if buffers are inside the pool, ignore events
12875
12876 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12877
12878         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
12879         (gst_clock_set_speed), (gst_clock_set_active),
12880         (gst_clock_is_active), (gst_clock_reset),
12881         (gst_clock_handle_discont):
12882         * gst/gstclock.h:
12883           deprecate old interface and disable functions that aren't in use
12884           anymore.
12885         * gst/gstelement.h:
12886         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
12887         (gst_element_set_time), (gst_element_adjust_time):
12888           add concept of "element time" and functions to get/set this time.
12889         * gst/gstelement.c: (gst_element_change_state):
12890           update element time correctly.
12891         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12892           This is a debug message, not a g_critical.
12893         * gst/gstpad.c: (gst_pad_event_default):
12894           handle discontinuous events right with element time.
12895         * gst/gstscheduler.c: (gst_scheduler_state_transition):
12896           update to clocking fixes.
12897           set clocks on elements in READY=>PAUSED. The old behaviour caused
12898           a wrong element time on the first element that started playing.
12899         * gst/schedulers/gstbasicscheduler.c:
12900         (gst_basic_scheduler_class_init):
12901         * gst/schedulers/gstoptimalscheduler.c:
12902         (gst_opt_scheduler_class_init):
12903           remove code that just implements the default behaviour.
12904         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
12905           update to use new clocking functions
12906         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
12907         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
12908           update to test new element time.
12909         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
12910           use _get_allowed_caps instead of _get_caps. This catches filtered
12911           caps correctly.
12912         * testsuite/debug/commandline.c:
12913           update for new GST_DEBUG syntax.
12914         * testsuite/threads/Makefile.am:
12915           disable a test that only works sometimes.
12916
12917 2004-01-13  Julien MOUTTE <julien@moutte.net>
12918
12919         * po/LINGUAS: Adding fr.
12920         * po/fr.po: Adding french translation.
12921
12922 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12923
12924         * gst/parse/grammar.y:
12925         * po/POTFILES.in:
12926         * po/nl.po:
12927         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
12928           translate parsing error messages
12929
12930 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12931
12932         * po/POTFILES.in: adding gst-launch
12933         * po/nl.po: updated translation, all 99 strings translated
12934         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
12935         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
12936           fix strings for translation
12937
12938 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12939
12940         * gst/gst.c:
12941           - capitalize beginnings of popt options
12942           - fix strings for translation
12943           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
12944
12945 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12946
12947         * po/README: add some notes on how to update translations
12948
12949 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12950
12951         * ABOUT-NLS: removed, is autogenerated from autopoint
12952         * autogen.sh: add autopoint stuff
12953         * configure.ac: fix up gettext stuff
12954         * gst/Makefile.am: add i18n headers to noinst_HEADERS
12955         * gst/elements/gsttypefindelement.c: add header include
12956         * gst/gettext.h: add header, copy from system-installed header
12957         * gst/gst-i18n-app.h: to be included by each app having translations
12958         * gst/gst-i18n-lib.h: to be included by each lib having translations
12959         * gst/gst.c: (init_pre): fix up gettext calls
12960         * gst/gst_private.h: remove i18n stuff, moving to separate headers
12961         * po/LINGUAS: the new way to specify translations present
12962         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
12963         * po/Makevars: the variables filled in for GStreamer
12964         * po/POTFILES.in: added new files with translations
12965         * po/de.po: has new strings
12966         * po/nl.po: readded, has new strings
12967
12968 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12969
12970         * gst/gsttag.c: fix some strings marked for translation
12971
12972 2004-01-13  Iain <iain@prettypeople.org>
12973
12974         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
12975         group when we add an element to it, cos we unref it when we remove one
12976
12977 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12978
12979         * testsuite/debug/commandline.c: (debug_not_reached):
12980         * testsuite/debug/output.c: (check_message):
12981           fix testsuite
12982
12983 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12984
12985         * examples/cutter/.cvsignore:
12986         * examples/helloworld/.cvsignore:
12987         * examples/launch/.cvsignore:
12988         * examples/manual/.cvsignore:
12989         * examples/mixer/.cvsignore:
12990         * examples/pingpong/.cvsignore:
12991         * examples/plugins/.cvsignore:
12992         * examples/queue/.cvsignore:
12993         * examples/queue2/.cvsignore:
12994         * examples/queue3/.cvsignore:
12995         * examples/queue4/.cvsignore:
12996         * examples/retag/.cvsignore:
12997         * examples/thread/.cvsignore:
12998         * examples/typefind/.cvsignore:
12999         * examples/xml/.cvsignore:
13000         * gst/.cvsignore:
13001         * gst/autoplug/.cvsignore:
13002         * gst/elements/.cvsignore:
13003         * gst/indexers/.cvsignore:
13004         * gst/parse/.cvsignore:
13005         * gst/registries/.cvsignore:
13006         * gst/schedulers/.cvsignore:
13007         * libs/gst/bytestream/.cvsignore:
13008         * libs/gst/control/.cvsignore:
13009         * libs/gst/getbits/.cvsignore:
13010         * tests/.cvsignore:
13011         * tests/bufspeed/.cvsignore:
13012         * tests/instantiate/.cvsignore:
13013         * tests/memchunk/.cvsignore:
13014         * tests/muxing/.cvsignore:
13015         * tests/sched/.cvsignore:
13016         * tests/seeking/.cvsignore:
13017         * tests/threadstate/.cvsignore:
13018         * testsuite/.cvsignore:
13019         * testsuite/caps/.cvsignore:
13020         * testsuite/cleanup/.cvsignore:
13021         * testsuite/dynparams/.cvsignore:
13022         * testsuite/plugin/.cvsignore:
13023         * tools/.cvsignore:
13024           update - this is huge, because it includes *.bb, *.bbg and *.da files
13025           which are generated for gcov.
13026
13027 2004-01-11  David Schleef  <ds@schleef.org>
13028
13029         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
13030         a function to parse integers in ways that strto[u]l() does not.
13031
13032 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13033
13034         * tools/gst-inspect.c: (print_caps):
13035           improve output of caps a bit
13036
13037 2004-01-11  David Schleef  <ds@schleef.org>
13038
13039         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
13040         inherit correct flags (READONLY and DONTKEEP).
13041
13042 2004-01-11  David Schleef  <ds@schleef.org>
13043
13044         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
13045         (gst_filesrc_map_region):
13046         * gst/gstbuffer.c: (_gst_buffer_initialize),
13047         (_gst_buffer_sub_free), (gst_buffer_default_copy),
13048         (gst_buffer_new), (gst_buffer_create_sub),
13049         (gst_buffer_is_span_fast), (gst_buffer_span):
13050         * gst/gstbuffer.h:
13051         Change GstBuffer private structure element names. (all files)
13052         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13053         (gst_queue_link):
13054         * gst/gstqueue.h:
13055         Implement getcaps/pad_link functions that handle the case where
13056         there are data in the queue.
13057
13058 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13059
13060         * gst/elements/gstbufferstore.c:
13061           initialize debugging structure correctly
13062         * gst/elements/gsttee.c: (gst_tee_set_property):
13063           g_object_notify when property was changed
13064         * gst/elements/gsttypefindelement.c:
13065         (gst_type_find_element_change_state):
13066           clear caps correctly
13067
13068 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13069
13070         * gst/gstqueue.c: (gst_queue_init):
13071           Use better defaults for when a queue should block. This
13072           gets rid of jerky playback for quite a few files.
13073           It takes more memory.
13074
13075 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13076
13077         (gst_xml_registry_parse_padtemplate):
13078           make critical message slightly more useful
13079
13080 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13081
13082         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13083         (gst_debug_message_get), (gst_debug_log_default):
13084         * gst/gstinfo.h:
13085           Change gst_debug_log(_valist) to take a const format string.
13086           Change prototype of log function and functions using those to 
13087           take a GstDebugMessage instead of a string that requires using
13088           gst_debug_message_get.
13089
13090 2004-01-08  David Schleef  <ds@schleef.org>
13091
13092         * Makefile.am:
13093         * configure.ac:
13094         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13095         and -ftest-coverage, which allows gcov to show information about
13096         testsuite coverage.
13097
13098 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13099
13100         * gst/gstutils.h:
13101           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13102           GST_PARENT_CALL_WITH_DEFAULT
13103         * gst/elements/gstaggregator.c: 
13104         * gst/elements/gstbufferstore.c: 
13105         * gst/elements/gstfakesink.c: 
13106         * gst/elements/gstfakesrc.c: 
13107         * gst/elements/gstfdsink.c: 
13108         * gst/elements/gstfdsrc.c: 
13109         * gst/elements/gstfilesink.c: 
13110         * gst/elements/gstfilesrc.c: 
13111         * gst/elements/gstidentity.c: 
13112         * gst/elements/gstmd5sink.c: 
13113         * gst/elements/gstmultidisksrc.c:
13114         * gst/elements/gstpipefilter.c: 
13115         * gst/elements/gstshaper.c:
13116         * gst/elements/gststatistics.c:
13117         * gst/elements/gsttee.c:
13118         * gst/elements/gsttypefindelement.c:
13119           use them.
13120
13121 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13122
13123         * docs/gst/gstreamer-docs.sgml: remove props
13124         * docs/gst/gstreamer-sections.txt: remove props
13125         * docs/gst/tmpl/gst.sgml:
13126         * docs/gst/tmpl/gstbin.sgml:
13127         * docs/gst/tmpl/gstbuffer.sgml:
13128         * docs/gst/tmpl/gstcaps.sgml:
13129         * docs/gst/tmpl/gstclock.sgml:
13130         * docs/gst/tmpl/gstelement.sgml:
13131         * docs/gst/tmpl/gstindex.sgml:
13132         * docs/gst/tmpl/gstobject.sgml:
13133         * docs/gst/tmpl/gstpad.sgml:
13134         * docs/gst/tmpl/gstpadtemplate.sgml:
13135         * docs/gst/tmpl/gstreamer-unused.sgml:
13136         * docs/gst/tmpl/gstthread.sgml:
13137         * docs/gst/tmpl/gstxml.sgml:
13138           sync with code reorganization
13139
13140 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13141
13142         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13143         Make the 'Could not find compatible pad' message more informative.
13144
13145 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13146                                                                                 
13147         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13148           Fix for if we pass NULL as property to location.
13149         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13150         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13151           Fix for instantiate-test (see below).
13152         * gst/gststructure.c: (_gst_structure_parse_value):
13153           Fix compile error on gcc-2.96.
13154         * configure.ac:
13155         * tests/Makefile.am:
13156         * tests/instantiate/Makefile.am:
13157         * tests/instantiate/create.c: (create_all_elements), (main):
13158           Add a test that instantiates all elements. This makes it easy to
13159           track dead code for old API/design (like setting event functions
13160           on sink pads and so on).
13161
13162 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13163
13164         * gst/gstcaps.c: (gst_caps_append_structure):
13165           Move the poisoning to allow a NULL structure
13166         * gst/gstevent.c: (_gst_event_free):
13167           When freeing a navigation event, free the structure
13168           also
13169
13170 2004-01-04  David Schleef  <ds@schleef.org>
13171
13172         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13173         Remove usage of gst_pad_proxy_fixate.
13174         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13175         (gst_caps_split_one), (gst_caps_replace):
13176         Add poisoning code.
13177         * gst/gstmarshal.list:
13178         Add pointer__pointer for fixate signal
13179         * gst/gstpad.c: (gst_real_pad_class_init),
13180         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13181         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13182         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13183         Add poisoning code. Add fixate signal on RealPad. Change
13184         set_explicit_caps() to take const GstCaps, like try_set_caps().
13185         * gst/gstpad.h:
13186         * testsuite/caps/Makefile.am:
13187         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13188
13189 2004-01-03  David Schleef  <ds@schleef.org>
13190
13191         * gst/elements/gsttypefindelement.c:
13192         (gst_type_find_element_have_type), (gst_type_find_element_init):
13193         Use gst_pad_use_explicit_caps for src pad.
13194         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13195         before using it.
13196
13197 2004-01-03  David Schleef  <ds@schleef.org>
13198
13199         * gst/gstelement.c: (gst_element_link_pads_filtered),
13200         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13201         that linking was successful.
13202         * gst/gstpad.c: (gst_pad_link_free),
13203         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13204         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13205         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13206         GstPadLinkReturn correctly between functions, and don't fail
13207         when DELAYED is used (DELAYED is very important).  Better
13208         cleanup on unlinking and unnegotiation.  Should fix some spider
13209         bugs.
13210
13211 2004-01-02  David Schleef  <ds@schleef.org>
13212
13213         * gst/gstelement.c: (gst_element_class_init),
13214         (gst_element_base_class_init): ->padtemplates should be cleared
13215         in base_init, since we need to have a fresh list for every
13216         class.  (Alternately, we chould copy the list and share the
13217         actual pad templates (not the list), but that would require
13218         changing every plugin to move pad template registration from
13219         base_init to class_init.)
13220
13221 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13222
13223         * gst/gstelement.c: (gst_element_class_add_pad_template):
13224           Refuse registering a pad template if another pad template
13225           with the same name already exists (#114715).
13226
13227 2004-01-02  David Schleef  <ds@schleef.org>
13228
13229         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13230         (gst_caps_is_equal_fixed): Add new function.
13231         * gst/gstcaps.h: ditto.
13232         * gst/gstpad.c: (gst_real_pad_class_init),
13233         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13234         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13235         check new caps against existing caps -- if they're the same, return
13236         OK without renegotiating.  caps-nego-failed signal fixed so that
13237         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13238         to save an extra caps copy.  Don't complete negotiation if a pad
13239         link function returns DELAYED.
13240
13241 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13242
13243         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13244           Fix wrong g_return_if_fail
13245
13246 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13247
13248         * gst/gstbin.c: (gst_bin_class_init):
13249         Change the marshalling of element_added/element_removed
13250         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13251         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13252
13253 2004-01-01  David Schleef  <ds@schleef.org>
13254
13255         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13256         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13257         (gst_pad_use_explicit_caps):
13258         * gst/gstpad.h:
13259         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13260         to use an internal getcaps and link fuction so that negotiation
13261         always results in the explicitly set caps.
13262         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13263         are particularly useful for decoders.
13264
13265 2003-12-31  David Schleef  <ds@schleef.org>
13266
13267         * gst/elements/gstidentity.c: (gst_identity_class_init),
13268         (gst_identity_init), (gst_identity_chain),
13269         (gst_identity_set_property), (gst_identity_get_property):
13270         * gst/elements/gstidentity.h:
13271         * gst/gstqueue.c: (gst_queue_init):
13272           Negotiation fixes.
13273
13274 2003-12-31  David Schleef  <ds@schleef.org>
13275
13276         * gst/gstcaps.c: (gst_caps_intersect),
13277         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13278           Implement gst_caps_normalize().
13279         * testsuite/caps/normalisation.c: (main):
13280           Add an additional test
13281
13282 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13283
13284         * gst/gstqueue.c: (gst_queue_init):
13285           use gst_pad_proxy_getcaps()
13286
13287 2003-12-31  David Schleef  <ds@schleef.org>
13288
13289         * gst/elements/gstshaper.c: (gst_shaper_link):
13290         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13291         * gst/gstqueue.c: (gst_queue_link):
13292           Negotiation fixes.
13293
13294 2003-12-31  David Schleef  <ds@schleef.org>
13295
13296         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13297         * gst/gstpad.h: Add functions that are useful as default pad
13298         link and fixate functions for elements.
13299
13300 2003-12-30  David Schleef  <ds@schleef.org>
13301
13302         * gst/gstpad.c: (gst_pad_link_try):
13303           Fix segfault when attempting to return to old caps
13304
13305 2003-12-29  David Schleef  <ds@schleef.org>
13306
13307         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13308         (gst_caps_structure_simplify), (gst_caps_simplify):
13309         * gst/gstcaps.h:
13310           Add simplify function
13311         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13312         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13313         * gst/gstpad.h:
13314           Copy over srcnotify, sinknotify when calling old pad_link
13315           functions.  Add new is_negotiated() function.
13316         * gst/gststructure.c: (gst_structure_copy):
13317           Fix an incredibly stupid bug that should have been noticed
13318           weeks ago.  _copy() returned the argument, not the new copy.
13319
13320 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13321
13322         * gst/gstcaps.c: (gst_caps_append):
13323           add sanity checks
13324         * gst/gstcaps.h: (gst_caps_debug):
13325           remove, it doesn't exist anymore.
13326         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13327         (gst_element_threadsafe_properties_post_run):
13328           make debugging messages not clutter up THREAD debug category
13329         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13330         (gst_element_change_state):
13331           update to new caps API
13332         * gst/gstinterface.c: (gst_implements_interface_cast):
13333           don't put vital code in g_return_if_fail
13334         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13335         (gst_pad_link_filtered):
13336           add pst_pad_try_link and use it.
13337         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13338           implement correctly, deprecate first one.
13339         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13340           add and implement.
13341         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13342           implement.
13343         (gst_pad_get_negotiated_caps):
13344           add and implement. Make GST_PAD_CAPS call this function.
13345         (gst_pad_get_caps):
13346           remove unneeded check..
13347         (gst_pad_recover_caps_error):
13348           disable, always return FALSE.
13349         (gst_real_pad_dispose):
13350           don't free caps and appfilter anymore, they're unused.
13351         * gst/gstpad.h:
13352           Reflect changes mentioned above.
13353         * gst/gstsystemclock.c: (gst_system_clock_wait):
13354           Make 'clock is way behind' a debugging message.
13355         * gst/gstthread.c: (gst_thread_change_state):
13356           Fix debugging message
13357
13358 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13359
13360         * gst/gstinfo.h:
13361           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13362         * docs/gst/tmpl/gstreamer-unused.sgml:
13363           removed all traces of cvs conflicts
13364
13365 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13366
13367         * configure.ac:
13368         * gst/schedulers/cothreads_compat.h:
13369         * libs/Makefile.am:
13370           remove last instances of wingo cothread usage
13371
13372 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13373
13374         * gst/gstplugin.c:
13375         * gst/gstversion.h.in:
13376         * gst/parse/grammar.y:
13377           change comment block from /** to /* when not gtk-doc comments
13378
13379 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13380
13381         * gst/gst.c: whitespace and doc style fixes
13382
13383 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13384
13385         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13386
13387 2003-12-24  Colin Walters  <walters@verbum.org>
13388
13389         * gst/elements/gsttypefindelement.c:
13390           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13391           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13392           Don't double-free caps.
13393
13394 2003-12-23  David Schleef  <ds@schleef.org>
13395
13396         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13397           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13398           Many little fixes and additions of debug statements to
13399           get rhythmbox working.
13400
13401 2003-12-23  Colin Walters  <walters@verbum.org>
13402
13403         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13404         Use GST_PAD_LINK_SUCCESSFUL.
13405
13406 2003-12-23  David Schleef  <ds@schleef.org>
13407
13408         * gst/elements/gstaggregator.c:
13409         * gst/elements/gsttee.c:
13410           Use gst_pad_proxy_getcaps().
13411         * gst/gstpad.c:
13412         * gst/gstpad.h:
13413           Add gst_pad_proxy_getcaps(), which filter elements can use
13414           as a generic getcaps implementation.
13415           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13416           was advertised.
13417
13418 2003-12-23  David Schleef  <ds@schleef.org>
13419
13420         * gst/gstpad.c:
13421           Rearrange/rewrite much of the pad negotiation code, since it
13422           resembled pasta.  This actually changes the way some
13423           negotiation works, since the previous code was inconsistent
13424           depending on how it was invoked.  Add (internal) structure
13425           GstPadLink, which is used to hold some information (more in
13426           the future) about the link between two pads.  Fixes a number
13427           of bugs, including random lossage of filter caps when the
13428           initial negotiation is delayed.  A few functions are still
13429           unimplemented.
13430         * gst/gstpad.h:
13431           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13432           these when testing GstPadLinkReturn values instead of comparing
13433           directly.
13434
13435 2003-12-23  David Schleef  <ds@schleef.org>
13436
13437         * gst/gstvalue.c: 
13438         * gst/gstvalue.h:
13439           Rearrange lots of code.  Change registration of compare function
13440           into registration of compare/serialize/deserialize functions.
13441           Doesn't include implementation of gst_value_[de]serialize(),
13442           but that should be easy.
13443
13444 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13445
13446         * docs/gst/gstreamer-sections.txt:
13447         * docs/gst/tmpl/gstprops.sgml: removed
13448         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13449           David removed props and caps code, so let's remove their docs as well.
13450           Removed all no longer existing symbols from gstreamer-sections.txt
13451           
13452 2003-12-22  Colin Walters  <walters@verbum.org>
13453
13454         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13455           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13456           of tags directly.
13457
13458 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13459
13460         * gst/elements/gstelements.c:
13461           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13462         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13463           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13464           gst_caps (peer).
13465
13466 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13467
13468         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13469         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13470         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13471         (gst_spider_identity_sink_loop_type_finding):
13472         * gst/autoplug/gstspideridentity.h:
13473           Fix autoplugging in spider element, so it works with new caps.
13474           This was mainly caused by identifying empty caps incorrectly.
13475
13476 2003-12-22  David Schleef  <ds@schleef.org>
13477
13478         * gststructure.c, gstvalue.c, gstvalue.h: Add
13479           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13480           using g_value_copy()
13481
13482 2003-12-21  David Schleef  <ds@schleef.org>
13483
13484         * many, many files: Merge CAPS branch.  This includes:
13485           - implemention of GstValue and several GstValue types
13486           - implemention of GstStructure
13487           - entire rewrite of GstCaps
13488           - removal of GstProps
13489           - many changes to GstPad to compensate for new caps paradigm
13490           - removal of GstBufferpool
13491         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13492         gstvalue.h, gst/gstcaps[2]*.[ch]:
13493           - rename gstcaps2.[ch] to gstcaps.[ch]
13494
13495 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13496
13497         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13498         (gst_queue_chain), (gst_queue_handle_src_event):
13499           implement timeout for sending events. Workaround for if the
13500           pipeline on this queue is not passing any data.
13501
13502 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13503                                                                                 
13504         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13505         * moved CVS to freedesktop.org
13506