gst/gstbus.c: gst_bus_poll may be called from other threads. Handle this nicely by...
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
2
3         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
4         (gst_bus_peek), (gst_bus_source_dispatch),
5         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
6         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
7           gst_bus_poll may be called from other threads. Handle
8           this nicely by not making poll_data disappear off the
9           stack once gst_bus_poll returns.
10           gst_bus_peek now increments the refcount on the returned
11           message.
12
13 2005-07-29  Wim Taymans  <wim@fluendo.com>
14
15         * docs/design/part-gstghostpad.txt:
16         Overview of current GhostPad datastructures and use
17         cases for changing the target.
18
19 2005-07-28  Wim Taymans  <wim@fluendo.com>
20
21         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
22         Added checks for hierarchy consistency whan adding linked
23         elements to bins.
24
25         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
26         Added check to test element scheduling without bin/pipeline.
27
28         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
29         First add elements to bin, then link.
30         
31         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
32         (gst_bin_remove_func):
33         Unlink pads from elements added/removed from bin to maintain
34         hierarchy consistency.
35
36 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
37
38         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
39         (gst_base_transform_handle_buffer):
40         * gst/base/gstbasetransform.h:
41           Remove broken delay_configure (fixes renegotiation of software
42           scaling pipelines); remove some leftover printf()s.
43
44 2005-07-28  Wim Taymans  <wim@fluendo.com>
45
46         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
47         Added some more tests for wrong hierarchy
48
49         * docs/design/part-overview.txt:
50         Some updates.
51
52         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
53         Cleanups.
54
55         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
56         (gst_element_dispose):
57         Some more cleanups.
58
59         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
60         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
61         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
62         (gst_pad_set_caps), (gst_pad_send_event):
63         Check for correct hierarchy when linking pads. Moving to
64         strict requirement for ghostpads when linking elements in
65         different bins.
66
67         * gst/gstpad.h:
68         Clean ups. Added WRONG_HIERARCHY return value.
69
70 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
71
72         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
73           Better debug if no transform is possible.
74
75 2005-07-27  Wim Taymans  <wim@fluendo.com>
76
77         * docs/random/wtay/network-transp:
78         Some old doc I had.
79
80 2005-07-27  Wim Taymans  <wim@fluendo.com>
81
82         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
83         (gst_dp_event_from_packet):
84         Fix serialization of seek events.
85
86 2005-07-27  Wim Taymans  <wim@fluendo.com>
87
88         * check/gst-libs/gdp.c: (GST_START_TEST):
89         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
90         Fix compilation and fix event serialization.
91
92 2005-07-27  Wim Taymans  <wim@fluendo.com>
93
94         * CHANGES-0.9:
95         * docs/design/part-TODO.txt:
96         * docs/design/part-events.txt:
97         Some docs updates
98
99         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
100         (gst_base_sink_event), (gst_base_sink_do_sync),
101         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
102         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
103         (gst_base_src_do_seek), (gst_base_src_event_handler),
104         (gst_base_src_loop):
105         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
106         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
107         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
108         (gst_base_transform_event), (gst_base_transform_handle_buffer),
109         (gst_base_transform_set_passthrough),
110         (gst_base_transform_is_passthrough):
111         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
112         * gst/elements/gstfilesink.c: (gst_file_sink_event):
113         Event updates.
114
115         * gst/gstbuffer.h:
116         Use faster casts.
117
118         * gst/gstelement.c: (gst_element_seek):
119         * gst/gstelement.h:
120         Update gst_element_seek.
121
122         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
123         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
124         (gst_event_new_flush_start), (gst_event_new_flush_stop),
125         (gst_event_new_eos), (gst_event_new_newsegment),
126         (gst_event_parse_newsegment), (gst_event_new_tag),
127         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
128         (gst_event_parse_qos), (gst_event_new_seek),
129         (gst_event_parse_seek), (gst_event_new_navigation):
130         * gst/gstevent.h:
131         Make GstEvent use GstStructure. Add parsing code, make sure the
132         API is sufficiently generic.
133         Mark possible directions of events and serialization.
134
135         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
136         (_gst_message_copy), (gst_message_new_segment_start),
137         (gst_message_new_segment_done), (gst_message_new_custom),
138         (gst_message_parse_segment_start),
139         (gst_message_parse_segment_done):
140         Small cleanups.
141
142         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
143         (gst_pad_set_caps), (gst_pad_send_event):
144         Update for new events. 
145         Catch events sent in wrong directions.
146
147         * gst/gstqueue.c: (gst_queue_link_src),
148         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
149         (gst_queue_handle_src_query):
150         Event updates.
151
152         * gst/gsttag.c:
153         * gst/gsttag.h:
154         Remove event code from this file.
155
156         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
157         (gst_dp_event_from_packet):
158         Event updates.
159
160 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
161
162         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
163         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
164         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
165           Make debugging actually useful.
166
167 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
168
169         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
170         (gst_pad_fixate_caps):
171           Implement default fixation once again, so that gst_pad_fixate()
172           actually does anything at all. This probably needs to be some
173           sort of a last resort, and use profile-based fixation first, but
174           since that doesn't exist yet, this is the best we have. Fixes
175           visualization in Totem.
176
177 2005-07-22  Wim Taymans  <wim@fluendo.com>
178
179         * docs/design/part-events.txt:
180         Small update.
181
182         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
183         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
184         (gst_base_sink_activate_pull):
185         Some more comments.
186
187         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
188         (gst_fake_src_create):
189         Fix handoff marshall.
190
191         * gst/elements/gstidentity.c: (gst_identity_class_init),
192         (gst_identity_transform_ip):
193         We're a real inplace element.
194
195         * gst/gstbus.c: (gst_bus_post):
196         Added some comments.
197
198         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
199         * tests/muxing/case1.c: (main):
200         * tests/sched/dynamic-pipeline.c: (main):
201         * tests/sched/interrupt1.c: (main):
202         * tests/sched/interrupt2.c: (main):
203         * tests/sched/interrupt3.c: (main):
204         * tests/sched/runxml.c: (main):
205         * tests/sched/sched-stress.c: (main):
206         * tests/seeking/seeking1.c: (event_received), (main):
207         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
208         (main):
209         * tests/threadstate/threadstate3.c: (main):
210         * tests/threadstate/threadstate4.c: (main):
211         * tests/threadstate/threadstate5.c: (main):
212         Fix the tests.
213
214 2005-07-21  Wim Taymans  <wim@fluendo.com>
215
216         * docs/design/part-seeking.txt:
217         Some small additions.
218
219         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
220         (gst_base_sink_get_times), (gst_base_sink_do_sync),
221         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
222         * gst/base/gstbasesink.h:
223         discont values are gint64, handle the math correctly.
224
225         * gst/base/gstbasesrc.c: (gst_base_src_loop):
226         Make the basesrc report error if the source pad is not linked.
227
228         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
229         (gst_queue_loop), (gst_queue_handle_src_query),
230         (gst_queue_src_activate_push):
231         Make queue collect data even if the srcpad is not linked.
232         Start pushing out data as soon as it is linked.
233
234         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
235         * gst/gstutils.h:
236         Added gst_flow_get_name() to ease error reporting.
237
238 2005-07-20  Wim Taymans  <wim@fluendo.com>
239
240         * gst/gstmessage.c: (gst_message_new_segment_start),
241         (gst_message_new_segment_done), (gst_message_parse_segment_start),
242         (gst_message_parse_segment_done):
243         * gst/gstmessage.h:
244         Added a bunch of messages for advanced seeking.
245
246         * gst/parse/grammar.y:
247         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
248         (gst_dpman_state_changed):
249         Fix some new-pad -> pad-added signals
250
251 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
252
253         * docs/manual/appendix-porting.xml:
254         * docs/pwg/appendix-porting.xml:
255           Document new-pad/state-change signal renames and the FixedList
256           type rename.
257
258 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
259
260         * docs/manual/advanced-autoplugging.xml:
261         * docs/manual/basics-helloworld.xml:
262         * docs/manual/basics-pads.xml:
263         * docs/random/ds/0.9-suggested-changes:
264         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
265         * gst/gstelement.h:
266         * gst/gstevent.h:
267         * gst/gstformat.h:
268         * gst/gstquery.h:
269         * gst/gststructure.c: (gst_structure_value_get_generic_type),
270         (gst_structure_parse_array), (gst_structure_parse_value):
271         * gst/gstvalue.c: (gst_type_is_fixed),
272         (gst_value_list_prepend_value), (gst_value_list_append_value),
273         (gst_value_list_get_size), (gst_value_list_get_value),
274         (gst_value_transform_array_string), (gst_value_serialize_array),
275         (gst_value_deserialize_array), (gst_value_intersect_array),
276         (gst_value_is_fixed), (_gst_value_initialize):
277         * gst/gstvalue.h:
278           GstElement::new-pad -> pad-added, GstElement::state-change ->
279           state-changed, GstValueFixedList -> GstValueArray, add format and
280           flags as their own arguments in gst_element_seek() (should improve
281           "bindeability"), remove function generators since they don't work
282           under a whole bunch of compilers (they were deprecated already
283           anyway).
284
285 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
286
287         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
288         (_gst_debug_register_funcptr):
289         * gst/gstinfo.h:
290           Fix illegal cast on some platforms (#309253).
291
292 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
293
294         * gst/gstmessage.c: (gst_message_new_custom):
295         * gst/gstmessage.h:
296           Add _new_custom, make _new_application a macro to _new_custom.
297
298 2005-07-20  Wim Taymans  <wim@fluendo.com>
299
300         * gst/base/gstbasesrc.c: (gst_base_src_init),
301         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
302         * gst/base/gstbasesrc.h:
303         Add a gboolean to decide when to push out a discont.
304
305         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
306         (gst_queue_loop), (gst_queue_handle_src_query),
307         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
308         (gst_queue_set_property), (gst_queue_get_property):
309         Some cleanups.
310
311         * tests/threadstate/threadstate1.c: (main):
312         Make a thread test compile and run... very silly..
313
314
315 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
316
317         * docs/manual/appendix-porting.xml:
318           Mention removal of libgstgconf-0.9.la and existence of gconf
319           elements.
320
321 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
322
323         * docs/pwg/advanced-clock.xml:
324         * docs/pwg/appendix-porting.xml:
325         * docs/pwg/intro-preface.xml:
326         * docs/pwg/other-base.xml:
327         * docs/pwg/other-manager.xml:
328         * docs/pwg/other-nton.xml:
329         * docs/pwg/other-ntoone.xml:
330         * docs/pwg/other-oneton.xml:
331         * docs/pwg/pwg.xml:
332           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
333           demuxer), remove n-to-n (was never written), fix some code examples
334           and links and update the porting section to include all this.
335
336 2005-07-19  Wim Taymans  <wim@fluendo.com>
337
338         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
339         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
340         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
341         (gst_queue_src_activate_push), (gst_queue_change_state),
342         (gst_queue_get_property):
343         * gst/gstqueue.h:
344         Propagate GstFlowReturn more intelligently upstream and output
345         an ERROR/EOS when streaming stopped due to fatal error.
346
347 2005-07-19  Wim Taymans  <wim@fluendo.com>
348
349         * tools/gst-launch.c: (check_intr), (event_loop), (main):
350         Don't block forever for the state change to complete, the
351         pipeline already did with a sensible timeout.
352
353 2005-07-19  Wim Taymans  <wim@fluendo.com>
354
355         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
356         Make sure we never call the create function is we
357         got deactivated.
358
359 2005-07-19  Andy Wingo  <wingo@pobox.com>
360
361         * gst/parse/parse.l: Attempt to solve bug #172815.
362
363 2005-07-19  Wim Taymans  <wim@fluendo.com>
364
365         * docs/design/part-clocks.txt:
366         * docs/design/part-events.txt:
367         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
368         Small docs updates.
369         Only update the seeking values when we are not
370         busy streaming.
371
372 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
373
374         * gst/base/gstbasesrc.c: (gst_base_src_loop):
375           Oops, ignore the result of gst_pad_push_event here.
376
377 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
378
379         * gst/base/gstbasesrc.c: (gst_base_src_loop),
380         (gst_base_src_activate_push):
381           Send discont event from the loop function, as pads
382           aren't activated yet in the activate_push handler.
383
384         * gst/gstbin.c: (bin_bus_handler):
385           Don't leak element name.
386
387 2005-07-18  Andy Wingo  <wingo@pobox.com>
388
389         * configure.ac: Use AS_LIBTOOL_TAGS.
390
391 2005-07-18  Wim Taymans  <wim@fluendo.com>
392
393         * docs/gst/gstreamer.types:
394         Remove deleted types.
395
396 2005-07-18  Wim Taymans  <wim@fluendo.com>
397
398         * check/elements/gstfakesrc.c: (GST_START_TEST):
399         * configure.ac:
400         * gst/Makefile.am:
401         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
402         (init_popt_callback):
403         * gst/gst.h:
404         * gst/gst_private.h:
405         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
406         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
407         * gst/gstbin.h:
408         * gst/gstbus.h:
409         * gst/gstconfig.h.in:
410         * gst/gstelement.c: (gst_element_class_init),
411         (gst_element_set_base_time), (gst_element_get_base_time),
412         (iterator_fold_with_resync), (gst_element_change_state),
413         (gst_element_dispose), (gst_element_get_bus):
414         * gst/gstelement.h:
415         * gst/gstelementfactory.h:
416         * gst/gsterror.c: (_gst_core_errors_init):
417         * gst/gsterror.h:
418         * gst/gstevent.h:
419         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
420         * gst/gstindex.c:
421         * gst/gstinfo.c: (_gst_debug_init):
422         * gst/gstmessage.c: (_gst_message_copy):
423         * gst/gstmessage.h:
424         * gst/gstminiobject.h:
425         * gst/gstobject.c:
426         * gst/gstobject.h:
427         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
428         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
429         * gst/gstpad.h:
430         * gst/gstparse.h:
431         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
432         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
433         (gst_pipeline_get_last_stream_time):
434         * gst/gstpipeline.h:
435         * gst/gstpluginfeature.h:
436         * gst/gstquery.h:
437         * gst/gstscheduler.c:
438         * gst/gstscheduler.h:
439         * gst/gststructure.h:
440         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
441         (gst_task_finalize), (gst_task_func), (gst_task_create),
442         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
443         (gst_task_stop), (gst_task_pause):
444         * gst/gsttask.h:
445         * gst/gsttypefind.h:
446         * gst/gsttypes.h:
447         * gst/registries/gstlibxmlregistry.c: (load_feature),
448         (gst_xml_registry_load), (gst_xml_registry_save_feature):
449         * gst/registries/gstxmlregistry.c:
450         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
451         * gst/schedulers/threadscheduler.c:
452         * libs/gst/control/dparammanager.h:
453         * tools/gst-inspect.c: (print_element_list),
454         (print_plugin_features), (print_element_features):
455         * tools/gst-xmlinspect.c: (print_element_list),
456         (print_plugin_info), (main):
457         Removed plugable schedulers.
458         Removed Scheduler/Manager from elements.
459         Removed gsttypes.h, rearranged includes.
460         Removed dependency pad<->element, element<>pipeline, and
461         various others,  fix includes.
462         implement gst_pad_get_parent() with gst_object_get_parent()
463         Make GstTask sefcontained.
464         Fix _get_state() on GstBin, it did not return ASYNC with a 0
465         timeout.
466         Fix endless loop in iterator_fold_with_resync.
467
468
469 2005-07-18  Wim Taymans  <wim@fluendo.com>
470
471         * gst/Makefile.am:
472         * gst/gstarch.h:
473         Remove old file.
474
475 2005-07-18  Wim Taymans  <wim@fluendo.com>
476
477         * gst/Makefile.am:
478         No more cothreads.h
479
480 2005-07-18  Wim Taymans  <wim@fluendo.com>
481
482         * gst/cothreads.c:
483         * gst/cothreads.h:
484         Let's remove these.
485
486 2005-07-18  Wim Taymans  <wim@fluendo.com>
487
488         * docs/design/part-dynamic.txt:
489         * docs/design/part-events.txt:
490         * docs/design/part-seeking.txt:
491         Some more docs in the works.
492
493         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
494         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
495         (gst_base_transform_setcaps), (gst_base_transform_get_size),
496         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
497         (gst_base_transform_handle_buffer),
498         (gst_base_transform_sink_activate_push),
499         (gst_base_transform_src_activate_pull),
500         (gst_base_transform_set_passthrough),
501         (gst_base_transform_is_passthrough):
502         Refcounting fixes.
503
504         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
505         Cleanups.
506
507         * gst/gstevent.c: (gst_event_finalize):
508         Set SRC to NULL.
509
510         * gst/gstutils.c: (gst_element_unlink),
511         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
512         (gst_pad_proxy_setcaps):
513         * gst/gstutils.h:
514         Add _get_parent_element() to get a pads parent as an element.
515
516 2005-07-18  Wim Taymans  <wim@fluendo.com>
517
518         * check/gst/gstbin.c: (GST_START_TEST):
519         Remove bogus test.
520
521 2005-07-18  Wim Taymans  <wim@fluendo.com>
522
523         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
524         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
525         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
526         (gst_base_sink_event), (gst_base_sink_do_sync),
527         (gst_base_sink_chain), (gst_base_sink_loop),
528         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
529         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
530         Refcounting fixes.
531         Fix logic for returning ASYNC when not prerolled.
532
533 2005-07-18  Wim Taymans  <wim@fluendo.com>
534
535         * gst/gstqueue.c: (gst_queue_handle_sink_event):
536         Fix nasty refcount bug.
537
538 2005-07-16 Philippe Khalaf <burger@speedy.org>
539         * gst/elements/gstfdsrc.c:
540         * gst/elements/gstfdsrc.h:
541         * gst/elements/gstelements.c:
542         * gst/elements/Makefile.am:
543         Ported fdsrc to 0.9.
544
545 2005-07-16  Wim Taymans  <wim@fluendo.com>
546
547         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
548         (gst_base_sink_do_sync):
549         Fix compile error.
550
551 2005-07-16  Wim Taymans  <wim@fluendo.com>
552
553         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
554         (gst_base_sink_event), (gst_base_sink_get_times),
555         (gst_base_sink_do_sync), (gst_base_sink_change_state):
556         * gst/base/gstbasesink.h:
557         Store and use discont values when syncing buffers as described
558         in design docs.
559         
560         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
561         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
562         (gst_base_src_activate_push):
563         Push discont event when starting.
564
565         * gst/elements/gstidentity.c: (gst_identity_transform):
566         Small cleanups.
567
568         * gst/gstbin.c: (gst_bin_change_state):
569         Small cleanups in base_time  distribution.
570
571         * gst/gstelement.c: (gst_element_set_base_time),
572         (gst_element_get_base_time), (gst_element_change_state):
573         * gst/gstelement.h:
574         Added methods for the base_time of the element.
575         Some MT fixes.
576
577         * gst/gstpipeline.c: (gst_pipeline_send_event),
578         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
579         (gst_pipeline_get_last_stream_time):
580         * gst/gstpipeline.h:
581         MT fixes.
582         Handle seeking as described in design doc, remove stream_time
583         hack.
584         Cleanups clock and stream_time selection code. Added accessors
585         for the stream_time.
586         
587
588 2005-07-16  Andy Wingo  <wingo@pobox.com>
589
590         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
591         (#305291).
592
593 2005-07-16  Wim Taymans  <wim@fluendo.com>
594
595         * check/gst/gstbin.c: (GST_START_TEST):
596         Make elements silent as the deep_notify refs the
597         parent, which might make the test fail.
598
599         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
600         Don't hold the lock for too long.
601
602 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
603
604         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
605           Don't unref the caps we passed to gst_caps_make_writable() after
606           passing them. gst_caps_make_writable() will do that for us.
607
608 2005-07-15  Andy Wingo  <wingo@pobox.com>
609
610         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
611         (#157311).
612
613         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
614         own marshalling function for the handoff signal. Properly type the
615         buffer as a buffer. Fixes some warnings. Should do a more general
616         solution.
617         (gst_identity_class_init): Plug into the right marshaller.
618
619 2005-07-15  Wim Taymans  <wim@fluendo.com>
620
621         * docs/design/part-TODO.txt:
622         * docs/design/part-clocks.txt:
623         * docs/design/part-element-sink.txt:
624         * docs/design/part-events.txt:
625         * docs/design/part-gstpipeline.txt:
626         Updated docs, mostly DISCONT related.
627
628 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
629
630         * docs/pwg/building-pads.xml:
631           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
632
633 2005-07-15  Andy Wingo  <wingo@pobox.com>
634
635         * tools/gst-typefind.c: Update, add copyright block.
636
637         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
638         Normalize and truncate caps before fixation.
639
640         * gst/gstcaps.h:
641         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
642         discards all but the first structure from its argument.
643
644 2005-07-15  Wim Taymans  <wim@fluendo.com>
645
646         * gst/base/gstbasetransform.c: (gst_base_transform_init),
647         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
648         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
649         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
650         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
651         (gst_base_transform_chain), (gst_base_transform_change_state),
652         (gst_base_transform_set_passthrough),
653         (gst_base_transform_is_passthrough):
654         * gst/base/gstbasetransform.h:
655         Make passthrough work using the bufferpools.
656         Changed API a bit, subclasses have to write into a buffer
657         provided by the base class.
658         More debug info in nego functions.
659         
660         * gst/elements/gstidentity.c: (gst_identity_init),
661         (gst_identity_transform):
662         Port to new base class.
663
664 2005-07-15  Wim Taymans  <wim@fluendo.com>
665
666         * gst/gstmessage.c: (gst_message_new_state_changed):
667         * tools/gst-launch.c: (event_loop), (main):
668         Totally dump messages in -launch with the -m option.
669         Fix message name for State messages,
670
671 2005-07-14  Wim Taymans  <wim@fluendo.com>
672
673         * gst/base/gstbasesrc.c: (gst_base_src_loop):
674         Post error messages on errors.
675
676 2005-07-14  Wim Taymans  <wim@fluendo.com>
677
678         * gst/gstcaps.c: (gst_caps_do_simplify):
679         Remove debug info.
680
681         * gst/gsterror.h:
682         Define error for stream stopped.
683
684         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
685         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
686         Do proper return values.
687
688         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
689         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
690         (gst_pad_get_range):
691         Better return values.
692
693         * gst/gstpad.h:
694         Reorganise return values, add macro to check for fatal errors.
695
696         * gst/gstqueue.c: (gst_queue_chain):
697         Return proper GstFlowReturn values,
698
699 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
700
701         * docs/gst/gstreamer-sections.txt:
702         * docs/gst/gstreamer.types:
703         * docs/gst/tmpl/gst.sgml:
704         * docs/gst/tmpl/gstbasesink.sgml:
705         * docs/gst/tmpl/gstbasesrc.sgml:
706         * docs/gst/tmpl/gstbasetransform.sgml:
707         * docs/gst/tmpl/gstbin.sgml:
708         * docs/gst/tmpl/gstbuffer.sgml:
709         * docs/gst/tmpl/gstcaps.sgml:
710         * docs/gst/tmpl/gstclock.sgml:
711         * docs/gst/tmpl/gstcompat.sgml:
712         * docs/gst/tmpl/gstconfig.sgml:
713         * docs/gst/tmpl/gstelement.sgml:
714         * docs/gst/tmpl/gstelementdetails.sgml:
715         * docs/gst/tmpl/gstelementfactory.sgml:
716         * docs/gst/tmpl/gstenumtypes.sgml:
717         * docs/gst/tmpl/gsterror.sgml:
718         * docs/gst/tmpl/gstevent.sgml:
719         * docs/gst/tmpl/gstfakesink.sgml:
720         * docs/gst/tmpl/gstfakesrc.sgml:
721         * docs/gst/tmpl/gstfilesink.sgml:
722         * docs/gst/tmpl/gstfilesrc.sgml:
723         * docs/gst/tmpl/gstfilter.sgml:
724         * docs/gst/tmpl/gstformat.sgml:
725         * docs/gst/tmpl/gstghostpad.sgml:
726         * docs/gst/tmpl/gstimplementsinterface.sgml:
727         * docs/gst/tmpl/gstindex.sgml:
728         * docs/gst/tmpl/gstindexfactory.sgml:
729         * docs/gst/tmpl/gstinfo.sgml:
730         * docs/gst/tmpl/gstiterator.sgml:
731         * docs/gst/tmpl/gstmacros.sgml:
732         * docs/gst/tmpl/gstmemchunk.sgml:
733         * docs/gst/tmpl/gstminiobject.sgml:
734         * docs/gst/tmpl/gstobject.sgml:
735         * docs/gst/tmpl/gstpad.sgml:
736         * docs/gst/tmpl/gstpadtemplate.sgml:
737         * docs/gst/tmpl/gstparse.sgml:
738         * docs/gst/tmpl/gstpipeline.sgml:
739         * docs/gst/tmpl/gstplugin.sgml:
740         * docs/gst/tmpl/gstpluginfeature.sgml:
741         * docs/gst/tmpl/gstquery.sgml:
742         * docs/gst/tmpl/gstqueue.sgml:
743         * docs/gst/tmpl/gstregistry.sgml:
744         * docs/gst/tmpl/gstregistrypool.sgml:
745         * docs/gst/tmpl/gstscheduler.sgml:
746         * docs/gst/tmpl/gstschedulerfactory.sgml:
747         * docs/gst/tmpl/gststructure.sgml:
748         * docs/gst/tmpl/gstsystemclock.sgml:
749         * docs/gst/tmpl/gsttaglist.sgml:
750         * docs/gst/tmpl/gsttagsetter.sgml:
751         * docs/gst/tmpl/gsttrace.sgml:
752         * docs/gst/tmpl/gsttrashstack.sgml:
753         * docs/gst/tmpl/gsttypefind.sgml:
754         * docs/gst/tmpl/gsttypefindfactory.sgml:
755         * docs/gst/tmpl/gsttypes.sgml:
756         * docs/gst/tmpl/gsturihandler.sgml:
757         * docs/gst/tmpl/gsturitype.sgml:
758         * docs/gst/tmpl/gstutils.sgml:
759         * docs/gst/tmpl/gstvalue.sgml:
760         * docs/gst/tmpl/gstversion.sgml:
761         * docs/gst/tmpl/gstxml.sgml:
762         * docs/libs/tmpl/gstcontrol.sgml:
763         * docs/libs/tmpl/gstdataprotocol.sgml:
764         * docs/libs/tmpl/gstdparam.sgml:
765         * docs/libs/tmpl/gstdplinint.sgml:
766         * docs/libs/tmpl/gstdpman.sgml:
767         * docs/libs/tmpl/gstdpsmooth.sgml:
768         * docs/libs/tmpl/gstgetbits.sgml:
769         * docs/libs/tmpl/gstunitconvert.sgml:
770         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
771         (gst_push_src_base_init), (gst_push_src_class_init),
772         (gst_push_src_init), (gst_push_src_create):
773         * gst/base/gstpushsrc.h:
774         * gst/elements/gstelements.c:
775         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
776         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
777         (gst_fake_sink_init), (gst_fake_sink_set_property),
778         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
779         (gst_fake_sink_event), (gst_fake_sink_preroll),
780         (gst_fake_sink_render), (gst_fake_sink_change_state):
781         * gst/elements/gstfakesink.h:
782         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
783         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
784         (gst_fake_src_base_init), (gst_fake_src_class_init),
785         (gst_fake_src_init), (gst_fake_src_event_handler),
786         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
787         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
788         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
789         (gst_fake_src_create_buffer), (gst_fake_src_create),
790         (gst_fake_src_start), (gst_fake_src_stop):
791         * gst/elements/gstfakesrc.h:
792         * gst/elements/gstfilesink.c: (_do_init),
793         (gst_file_sink_base_init), (gst_file_sink_class_init),
794         (gst_file_sink_init), (gst_file_sink_dispose),
795         (gst_file_sink_set_location), (gst_file_sink_set_property),
796         (gst_file_sink_get_property), (gst_file_sink_open_file),
797         (gst_file_sink_close_file), (gst_file_sink_query),
798         (gst_file_sink_event), (gst_file_sink_render),
799         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
800         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
801         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
802         * gst/elements/gstfilesink.h:
803         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
804         (gst_file_src_class_init), (gst_file_src_init),
805         (gst_file_src_finalize), (gst_file_src_set_location),
806         (gst_file_src_set_property), (gst_file_src_get_property),
807         (gst_file_src_map_region), (gst_file_src_map_small_region),
808         (gst_file_src_create_mmap), (gst_file_src_create_read),
809         (gst_file_src_create), (gst_file_src_is_seekable),
810         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
811         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
812         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
813         (gst_file_src_uri_handler_init):
814         * gst/elements/gstfilesrc.h:
815           more autistic cleanliness in functions/names/defines
816
817 2005-07-13  Andy Wingo  <wingo@pobox.com>
818
819         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
820         source couldn't negotiate.
821
822         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
823         connections again.
824
825         * gst/gstutils.h:
826         * gst/gstutils.c (gst_element_link_pads_filtered): New old
827         function. I am channeling Hades. Put your boots on suckers!!!
828
829 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
830
831         * testsuite/caps/Makefile.am:
832         * testsuite/caps/value_compare.c:
833         * testsuite/caps/value_intersect.c:
834         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
835           move two testsuite apps over to the check dir
836
837 2005-07-12  Wim Taymans  <wim@fluendo.com>
838
839         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
840         Added more debug info in the negotiate process.
841
842         * gst/gstmessage.h:
843         Prepare for segment playback.
844
845         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
846         Better debugging.
847
848         * gst/gstutils.c:
849         Some more docs.
850
851         * tools/gst-launch.c: (main):
852         NULL pipeline on errors.
853
854 2005-07-12  Andy Wingo  <wingo@pobox.com>
855
856         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
857         not it comes from a malloc region. Make sure our copy gets freed.
858
859 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
860
861         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
862         * check/gst/gstmessage.c: (GST_START_TEST):
863         * check/gst/gststructure.c: (GST_START_TEST),
864         (gst_structure_suite), (main):
865           more testing
866         * gst/gstelement.c: (gst_element_message_full):
867           clean up GError and debug string now that they get copied
868         * gst/gstmessage.c: (gst_message_new_error),
869         (gst_message_new_warning), (gst_message_parse_error),
870         (gst_message_parse_warning):
871           use GST_TYPE_G_ERROR for structure_new, and take copies of
872           arguments, so that we don't mess up refcounting
873
874 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
875
876         * check/Makefile.am:
877           add per-test valgrind targets
878         * check/gst-libs/gdp.c: (GST_START_TEST),
879         (gst_data_protocol_suite), (main):
880           clean up
881
882 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
883
884         * check/Makefile.am:
885           instate more valgrindable tests
886         * check/elements/gstfakesrc.c: (chain_func), (event_func),
887         (GST_START_TEST), (fakesrc_suite):
888         * check/gst/gstpad.c: (GST_START_TEST):
889         * check/gst/gststructure.c: (GST_START_TEST):
890           fix test leaks
891         * docs/gst/tmpl/gstminiobject.sgml:
892         * gst/gstpad.c: (gst_pad_finalize):
893           fix the static mutex leak
894
895 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
896
897         * check/Makefile.am:
898           add two more tests for valgrinding
899         * check/gst/gstvalue.c: (GST_START_TEST):
900           test refcount of deserialized buffer, found a leak
901         * docs/gst/gstreamer-docs.sgml:
902         * docs/gst/gstreamer-sections.txt:
903         * docs/gst/gstreamer.types:
904         * docs/gst/tmpl/gstminiobject.sgml:
905           add miniobject to docs
906         * gst/gstminiobject.c:
907           add some docs
908         * gst/gstvalue.c: (gst_value_deserialize_buffer),
909         (gst_string_unwrap):
910           fix a hard-to-find invalid write for one of the tests
911           fix a leak for deserialized buffers
912
913 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
914
915         * docs/pwg/advanced-events.xml:
916         * docs/pwg/advanced-request.xml:
917         * docs/pwg/advanced-scheduling.xml:
918         * docs/pwg/appendix-porting.xml:
919         * docs/pwg/building-boiler.xml:
920         * docs/pwg/intro-preface.xml:
921         * docs/pwg/other-ntoone.xml:
922           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
923           of example code and explanation for pad activation, loop() and
924           getrange() functions and a bit more. Remove old comments pointing
925           to loop-functions.
926         * examples/pwg/Makefile.am:
927           Add loop/getrange examples.
928
929 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
930
931         * configure.ac:
932           check for valgrind binary + some fixes
933         * check/gst.supp:
934           valgrind suppressions for the tests
935         * check/Makefile.am:
936           add a valgrind: target that valgrinds the unit tests
937         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
938         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
939         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
940         * check/gst/gstghostpad.c:
941           added some cleanup
942         * check/gst/gstdata.c:
943           removed
944         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
945         (thread_unref), (gst_mini_object_suite), (main):
946           added
947         * gst/gst.c: (gst_deinit):
948         * gst/gst.h:
949           add a method to clean up.
950         * gst/gstsystemclock.c: (gst_system_clock_dispose),
951         (gst_system_clock_obtain):
952           allow for disposing the system clock.
953         * tools/gst-launch.c: (main):
954           deinit
955
956 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
957
958         * docs/gst/tmpl/gstbasesrc.sgml:
959         * docs/gst/tmpl/gstfakesrc.sgml:
960         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
961         (gst_base_src_init), (gst_base_src_set_property),
962         (gst_base_src_get_property), (gst_base_src_get_range),
963         (gst_base_src_start):
964         * gst/base/gstbasesrc.h:
965           add num-buffers property
966         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
967         (gst_fakesrc_init), (gst_fakesrc_set_property),
968         (gst_fakesrc_get_property), (gst_fakesrc_create),
969         (gst_fakesrc_start):
970           remove num-buffers property
971
972 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
973
974         * docs/gst/gstreamer-sections.txt:
975         * docs/gst/tmpl/gstbasesink.sgml:
976         * docs/gst/tmpl/gstbasesrc.sgml:
977         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
978         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
979         (gst_base_sink_finalize), (gst_base_sink_set_clock),
980         (gst_base_sink_set_property), (gst_base_sink_get_property),
981         (gst_base_sink_handle_object), (gst_base_sink_event),
982         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
983         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
984         (gst_base_sink_loop), (gst_base_sink_deactivate),
985         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
986         (gst_base_sink_change_state):
987         * gst/base/gstbasesink.h:
988         * gst/base/gstbasesrc.h:
989         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
990         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
991         (gst_filesink_init):
992           more macro splitting
993
994 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
995
996         * gst/gstelement.c: (gst_element_get_bus):
997           add debug
998         * tools/gst-launch.c: (check_intr), (event_loop):
999           fix bus leaks
1000
1001 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1002
1003         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1004           fix a caps leak
1005
1006 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1007
1008         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1009         (gst_base_src_finalize):
1010           add finalize method and clean up properly
1011         * gst/gstpipeline.c: (gst_pipeline_dispose):
1012           add debug
1013
1014 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1015
1016         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1017         (gst_bin_suite):
1018           add more things to check
1019         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1020         * gst/gstelement.c:
1021           more debug
1022
1023 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1024
1025         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1026         (GST_START_TEST), (fakesrc_suite):
1027         * check/gst-libs/gdp.c: (GST_START_TEST):
1028         * check/gst/gst.c: (GST_START_TEST):
1029         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1030         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1031         * check/gst/gstbus.c: (GST_START_TEST):
1032         * check/gst/gstcaps.c: (GST_START_TEST):
1033         * check/gst/gstdata.c: (GST_START_TEST):
1034         * check/gst/gstelement.c: (GST_START_TEST):
1035         * check/gst/gstghostpad.c: (GST_START_TEST):
1036         * check/gst/gstiterator.c: (GST_START_TEST):
1037         * check/gst/gstmessage.c: (GST_START_TEST):
1038         * check/gst/gstobject.c: (GST_START_TEST):
1039         * check/gst/gstpad.c: (GST_START_TEST):
1040         * check/gst/gststructure.c: (GST_START_TEST):
1041         * check/gst/gstsystemclock.c: (GST_START_TEST),
1042         (gst_systemclock_suite):
1043         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1044         * check/gst/gstvalue.c: (GST_START_TEST):
1045         * check/pipelines/cleanup.c: (GST_START_TEST):
1046         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1047         * check/states/sinks.c: (GST_START_TEST):
1048         * check/gstcheck.c: (gst_check_init):
1049         * check/gstcheck.h:
1050           add debugging category
1051           use GST_START_TEST now, so we add a debug line
1052
1053 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1054
1055         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1056           add test for state change message on a bin
1057         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1058           add another test
1059         * gst/gstbin.c: (gst_bin_init):
1060         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1061         * gst/gstelement.c: (gst_element_post_message),
1062         (gst_element_set_state):
1063         * gst/gstelementfactory.c: (gst_element_factory_create):
1064         * gst/gstmessage.c: (gst_message_new):
1065         * gst/gstscheduler.c:
1066           various debugging additions and cleanups
1067
1068 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1069
1070         * check/Makefile.am:
1071         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1072         (main):
1073           adding tests for elements
1074         * gst/gstelement.c: (gst_element_dispose):
1075
1076 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1077
1078         * gst/registries/gstlibxmlregistry.c: (load_feature):
1079           plug more leaks.  A simple gst_init() now is leakfree, yay.
1080
1081 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1082
1083         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1084         (gst_xml_registry_load):
1085           plug another memleak
1086
1087 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1088
1089         * configure.ac:
1090           use GST_SET_ERROR_CFLAGS
1091         * docs/faq/cvs.xml:
1092           change to ERROR_CFLAGS
1093
1094 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1095
1096         * configure.ac:
1097           make GST_ERROR_CFLAGS overridable and re-enable Werror
1098         * docs/faq/cvs.xml:
1099           add a note about error CFLAGS
1100         * docs/gst/tmpl/gstfakesrc.sgml:
1101         * gst/elements/gstfakesrc.c:
1102           comment out some unused code
1103         * gst/gst.c: (split_and_iterate):
1104         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1105         (load_feature):
1106           plug some memleaks
1107
1108 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1109
1110         * common/Makefile.am:
1111         * common/gtk-doc.mak:
1112         * docs/gst/Makefile.am:
1113           factor out gtk-doc.mak
1114
1115 2005-07-07  Wim Taymans  <wim@fluendo.com>
1116
1117         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1118         (gst_thread_scheduler_dispose):
1119         Unlock the STREAM_LOCK completely.
1120
1121 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1122
1123         * check/Makefile.am:
1124         * check/elements/.cvsignore:
1125         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1126         (START_TEST), (fakesrc_suite), (main):
1127         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1128         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1129         (gst_fakesrc_create), (gst_fakesrc_start):
1130         * gst/elements/gstfakesrc.h:
1131           adding a first element test
1132
1133 2005-07-07  Andy Wingo  <wingo@pobox.com>
1134
1135         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1136         debug message.
1137
1138 2005-07-07  Wim Taymans  <wim@fluendo.com>
1139
1140         * gst/gstquery.c:
1141         * gst/gstquery.h:
1142         Remove old types
1143
1144 2005-07-07  Wim Taymans  <wim@fluendo.com>
1145
1146         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1147         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1148         Allow subclasses to implement their own negotiation.
1149
1150 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1151
1152         * docs/design/part-gstbin.txt:
1153         * docs/design/part-gstpipeline.txt:
1154           Update design notes to reflect the movement of
1155           responsibility for bus handling from GstPipeline to
1156           GstBin
1157
1158 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1159
1160         * configure.ac:
1161           Remove unnecessary queue2/3/4 examples.
1162
1163 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1164
1165         * examples/Makefile.am:
1166         * examples/helloworld/helloworld.c: (event_loop), (main):
1167         * examples/queue/queue.c: (event_loop), (main):
1168         * examples/queue2/queue2.c: (main):
1169           Update a couple of the examples to work again.
1170
1171         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1172         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1173          Spelling corrections and extra debug.
1174         
1175         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1176         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1177         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1178         * gst/gstbin.h:
1179         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1180         (gst_pipeline_change_state):
1181         * gst/gstpipeline.h:
1182           Move the bus handler for children to the GstBin, and create a
1183           separate bus for receiving messages from children to the one the
1184           bus sends 'upwards' on.
1185
1186 2005-07-06  Wim Taymans  <wim@fluendo.com>
1187
1188         * gst/base/README:
1189         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1190         (gst_base_sink_handle_object), (gst_base_sink_loop),
1191         (gst_base_sink_change_state):
1192         * gst/base/gstbasesink.h:
1193         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1194         (gst_base_src_init), (gst_base_src_setcaps),
1195         (gst_base_src_getcaps), (gst_base_src_loop),
1196         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1197         (gst_base_src_start), (gst_base_src_change_state):
1198         * gst/base/gstbasesrc.h:
1199         Make basesrc negotiate.
1200         Handle the case where preroll fails in basesink.
1201         Update README.
1202
1203 2005-07-06  Wim Taymans  <wim@fluendo.com>
1204
1205         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1206         Implement the fixate function.
1207         Clean up acceptcaps.
1208
1209 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1210
1211         * docs/pwg/building-filterfactory.xml:
1212         * docs/pwg/pwg.xml:
1213           Remove never-written filter-factory chapter; I'll add the various
1214           base classes to part 4 ("other element types") later on.
1215
1216 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1217
1218         * docs/pwg/advanced-negotiation.xml:
1219         * docs/pwg/building-boiler.xml:
1220         * docs/pwg/building-pads.xml:
1221         * docs/pwg/pwg.xml:
1222         * examples/pwg/Makefile.am:
1223           Add a chapter on caps negotiation, simplify the original code
1224           samples a bit w.r.t. caps negotiation, add link to the advanced
1225           section. Add a bunch of examples showing different use cases of
1226           different types of caps negotiation. Upstream renegotiation isn't
1227           fully documented yet since nobody knows how that works.
1228
1229 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1230
1231         * check/gst/gstpad.c:
1232         * check/gstcheck.c:
1233         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1234           if pad has no parent, return NULL as list of internal links
1235
1236 2005-07-05  Andy Wingo  <wingo@pobox.com>
1237
1238         * gst/elements/gstfilesrc.c:
1239         * gst/elements/gstfakesrc.c: 
1240         * gst/base/gstpushsrc.c:
1241         * gst/base/gstbasesrc.h: 
1242         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1243         
1244 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1245
1246         * Makefile.am:
1247           better report generation target (lcov needs a patch)
1248
1249 2005-07-05  Andy Wingo  <wingo@pobox.com>
1250
1251         * gst/elements, testsuite: Null if we got it...
1252
1253 2005-07-05  Wim Taymans  <wim@fluendo.com>
1254
1255         * configure.ac:
1256         * libs/gst/dataprotocol/Makefile.am:
1257         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1258         * libs/gst/dataprotocol/dataprotocol.h:
1259         * pkgconfig/Makefile.am:
1260         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1261         * pkgconfig/gstreamer-dataprotocol.pc.in:
1262         Ported dataprotol to 0.9. 
1263         Added pkgconfig files.
1264
1265 2005-07-05  Andy Wingo  <wingo@pobox.com>
1266
1267         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1268         Default to returning TRUE for the case when tranform_caps returns
1269         a fixed caps, like for identity or volume.
1270
1271         * check/gst/gstbus.c (pound_bus_with_messages): 
1272         * check/gst/gstmessage.c (START_TEST): 
1273         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1274         message API change.
1275
1276         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1277         logic weaks here: always run transform_caps, trying passthrough
1278         operation only if the original caps intersects with the transform.
1279
1280         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1281         source and sink caps.
1282
1283         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1284         Intersect the peer caps with the pad template before going into
1285         transform_caps.
1286         (gst_base_transform_transform_caps): More debugging.
1287
1288         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1289         src argument.
1290
1291 2005-07-04  Edward Hervey  <edward@fluendo.com>
1292
1293         * gst/gstutils.c:
1294         * gst/gstutils.h:
1295         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1296         in bindings.
1297
1298 2005-07-04  Andy Wingo  <wingo@pobox.com>
1299
1300         * check/gst/gstpad.c: Only set explicit caps on pads.
1301
1302 2005-07-01  Andy Wingo  <wingo@pobox.com>
1303
1304         * tests/network-clock.scm: Commentary update.
1305
1306         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1307         Didn't really make sense, not implementable with basetransform,
1308         etc.
1309         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1310         attempt at implementing the sync property, needs an unlock method.
1311
1312         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1313         New func, by default returns the same caps (the identity
1314         transformation).
1315         (gst_base_transform_getcaps): Uses transform_caps to return
1316         something sensible.
1317         (gst_base_transform_setcaps): Complicated logic to get caps on
1318         both pads, even if they are different, and to call set_caps once
1319         for every time both pads get their caps set.
1320         (gst_base_transform_handle_buffer): Give the ref to the transform
1321         function. Allows in-place modification of the buffer.
1322
1323         * gst/base/gstbasetransform.h (transform_caps): New class method.
1324         Given caps on one side, what can I do on the other.
1325         (set_caps): Take two caps, one for each side of the element.
1326
1327         * gst/gstpad.h:
1328         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1329         caps in place. This is safe because we can check the mutability of
1330         the caps, and a good idea because fixate functions are just called
1331         as a matter of last resort. (Not actually implemented.)
1332         (gst_pad_set_caps): If the caps we're setting is actually the same
1333         as the existing pad caps, just update the pointer without calling
1334         setcaps. Assert that caps is either NULL or fixed, as per the
1335         docs.
1336
1337         * gst/gstghostpad.c: Update for fixate changes.
1338
1339 2005-07-02  Andy Wingo  <wingo@pobox.com>
1340
1341         * gst/gstcaps.c:
1342         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1343         two refcounts makes it immutable, which is enough. Doc more.
1344
1345 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1346
1347         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1348           Put the mini_object into GValue as a mini_object,
1349           not a gpointer, since that's how we declared
1350           the signal.
1351
1352 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1353
1354         * examples/pwg/Makefile.am:
1355           Fix buildbot again.
1356
1357 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1358
1359         * docs/pwg/building-testapp.xml:
1360           Add extra check.
1361         * examples/pwg/Makefile.am:
1362           Fix buildbot.
1363
1364 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1365
1366         * configure.ac:
1367         * examples/Makefile.am:
1368         * examples/pwg/Makefile.am:
1369         * examples/pwg/extract.pl:
1370           Enable building the PWG examples.
1371         * docs/pwg/advanced-interfaces.xml:
1372           Add URI interface stub.
1373         * docs/pwg/advanced-types.xml:
1374         * docs/pwg/other-autoplugger.xml:
1375         * docs/pwg/appendix-porting.xml:
1376         * docs/pwg/pwg.xml:
1377           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1378         * docs/pwg/building-boiler.xml:
1379         * docs/pwg/building-chainfn.xml:
1380         * docs/pwg/building-pads.xml:
1381         * docs/pwg/building-props.xml:
1382         * docs/pwg/building-state.xml:
1383         * docs/pwg/building-testapp.xml:
1384           Update the building-*.xml parts for 0.9 changes. All examples
1385           code blocks compile in examples/pwg/*.
1386
1387 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1388
1389         * docs/manual/advanced-autoplugging.xml:
1390         * docs/manual/appendix-checklist.xml:
1391         * docs/manual/appendix-integration.xml:
1392         * docs/manual/highlevel-components.xml:
1393           Fix playbin/decodebin examples, update docs a bit, mention bus
1394           instead of signals in various places, mention kmplayer and
1395           kaffeine since they have a working GStreamer backend in the KDE
1396           section.
1397
1398 2005-06-30  Wim Taymans  <wim@fluendo.com>
1399
1400         * CHANGES-0.9:
1401         * docs/design/draft-ghostpads.txt:
1402         * docs/design/draft-push-pull.txt:
1403         * docs/design/draft-query.txt:
1404         * docs/design/part-TODO.txt:
1405         * docs/design/part-query.txt:
1406         Added CHANGES-0.9 doc, updated status of other docs.
1407         
1408         * gst/gstquery.h:
1409         Remove "hmm" macro
1410
1411 2005-06-30  Wim Taymans  <wim@fluendo.com>
1412
1413         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1414         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1415         (gst_base_sink_change_state):
1416         * gst/base/gstbasesink.h:
1417         Some tweaks, only EOS and a buffer complete a preroll.
1418
1419 2005-06-30  Andy Wingo  <wingo@pobox.com>
1420
1421         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1422         activate_push down to the internal pad as well.
1423
1424 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1425
1426         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1427
1428         * gst/gsttaginterface.c:
1429           Some documentation fixes (#307394 and #307397).
1430
1431 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1432
1433         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1434
1435         * gst/gstvalue.c: (gst_value_intersect_list):
1436           Fix memleak (#309125).
1437
1438 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1439
1440         * docs/manual/advanced-dataaccess.xml:
1441           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1442         * docs/manual/basics-pads.xml:
1443           Add reference for filtered caps to above chapter.
1444
1445 2005-06-30  Wim Taymans  <wim@fluendo.com>
1446
1447         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1448         (gst_bin_change_state):
1449         Probes are gone.
1450         Lame attempt at making the state change function a bit
1451         more readable.
1452
1453 2005-06-30  Wim Taymans  <wim@fluendo.com>
1454
1455         * docs/design/part-clocks.txt:
1456         * docs/design/part-element-sink.txt:
1457         * docs/design/part-events.txt:
1458         * docs/design/part-preroll.txt:
1459         * docs/design/part-states.txt:
1460         Some more tweeks and additions to the docs.
1461
1462 2005-06-30  Wim Taymans  <wim@fluendo.com>
1463
1464         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1465         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1466         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1467         (gst_pad_check_pull_range), (gst_pad_get_range),
1468         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1469         * gst/gstpad.h:
1470         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1471         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1472         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1473         (gst_pad_remove_buffer_probe):
1474         Removed atomic operations, use existing LOCK.
1475         Move exception handling out of main code path.
1476
1477 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1478
1479         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1480         (silly_return_true_function), (gst_pad_class_init),
1481         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1482         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1483         (gst_pad_send_event):
1484           Fix accumulator, add default value by using _emitv() instead
1485           of _emit() for signal emission.
1486
1487 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1488
1489         * docs/manual/advanced-dataaccess.xml:
1490         * examples/manual/Makefile.am:
1491           Add probe example.
1492         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1493           Make work (??).
1494
1495 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1496
1497         * gst/elements/gstfilesink.c: (gst_filesink_render):
1498           Simplify code so that we don't have to handle short
1499           writes and return GST_FLOW_ERROR if an error occured.
1500
1501 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1502
1503         * docs/gst/gstreamer-docs.sgml:
1504           Remove probes more.
1505
1506 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1507
1508         * docs/gst/gstreamer-sections.txt:
1509         * docs/gst/tmpl/gstpad.sgml:
1510         * docs/gst/tmpl/gstprobe.sgml:
1511         * gst/Makefile.am:
1512         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1513         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1514         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1515         (gst_pad_push_event), (gst_pad_send_event):
1516         * gst/gstpad.h:
1517         * gst/gstutils.c: (gst_pad_add_data_probe),
1518         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1519         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1520         (gst_pad_remove_buffer_probe):
1521         * gst/gstutils.h:
1522           Remove old probes, add new g-signal-based probes and some utility
1523           functions.
1524
1525 2005-06-29  Edward Hervey  <edward@fluendo.com>
1526
1527         * gst/gstelementfactory.c:
1528         * gst/gstutils.h:
1529         * gst/gstutils.c:
1530         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1531         the definition to the header file.
1532
1533 2005-06-29  Andy Wingo  <wingo@pobox.com>
1534
1535         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1536         plugins from the source directory.
1537
1538 2005-06-29  Wim Taymans  <wim@fluendo.com>
1539
1540         * docs/gst/tmpl/gstbuffer.sgml:
1541         * docs/gst/tmpl/gstclock.sgml:
1542         Some fixings for blantently wrong text.
1543
1544 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1545
1546         * check/Makefile.am:
1547         * gst/gst.c: (add_path_func), (init_pre):
1548         * gst/gstregistry.c: (gst_registry_add_path):
1549           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1550           only scan the GST_PLUGIN_PATH locations, and not add
1551           system locations
1552
1553 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1554
1555         * docs/gst/gstreamer-sections.txt:
1556         * docs/gst/tmpl/gstbasesrc.sgml:
1557         * gst/gstelement.c:
1558         * gst/gstelement.h:
1559         * gst/gstevent.c:
1560         * gst/gstutils.c:
1561           doc fixes
1562
1563 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1564
1565         * docs/manual/advanced-autoplugging.xml:
1566           Fix autoplugging example.
1567
1568 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1569
1570         * docs/manual/advanced-autoplugging.xml:
1571         * docs/manual/mime-world.fig:
1572           Try to get autoplugging working, fix type detection. Fix text
1573           in hello-world image.
1574
1575 2005-06-29  Wim Taymans  <wim@fluendo.com>
1576
1577         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1578         (gst_base_sink_change_state):
1579         Small debug line.
1580
1581         * gst/gstclock.h:
1582         map SIGNAL and BROADCAST to the right function.
1583
1584         * gst/gstobject.h:
1585         Remove redundant braces.
1586
1587         * gst/gstpad.c: (gst_pad_set_caps):
1588         Don't call setcaps function when reseting caps to NULL.
1589
1590         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1591         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1592         (gst_system_clock_id_unschedule):
1593         Use BROADCAST as this is what we do.
1594
1595 2005-06-29  Wim Taymans  <wim@fluendo.com>
1596
1597         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1598         We are actually prerolling before commiting the state
1599         change. 
1600
1601 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1602
1603         * docs/manual/advanced-clocks.xml:
1604         * docs/manual/advanced-interfaces.xml:
1605         * docs/manual/advanced-metadata.xml:
1606         * docs/manual/advanced-position.xml:
1607         * docs/manual/advanced-schedulers.xml:
1608         * docs/manual/advanced-threads.xml:
1609         * docs/manual/appendix-porting.xml:
1610         * docs/manual/basics-bins.xml:
1611         * docs/manual/basics-bus.xml:
1612         * docs/manual/basics-elements.xml:
1613         * docs/manual/basics-helloworld.xml:
1614         * docs/manual/basics-pads.xml:
1615         * docs/manual/highlevel-components.xml:
1616         * docs/manual/manual.xml:
1617         * docs/manual/thread.fig:
1618           Update (until threads/scheduling) Application Development Manual;
1619           remove GstThread, add GstBus, add simple porting checklist, add
1620           documentation for tag writing, clocks, make all examples until this
1621           part compile and run.
1622         * examples/manual/Makefile.am:
1623           Update from changes to Application Development Manual; add bus
1624           example, remove thread example.
1625
1626 2005-06-28  Wim Taymans  <wim@fluendo.com>
1627
1628         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
1629         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
1630         (gst_bus_source_dispatch):
1631         Add debugging messages.
1632         Make internal methods static.
1633         Handle the case where the bus is flushed in the handler.
1634         
1635         * gst/gstelement.c: (gst_element_get_bus):
1636         Fix refcount in _get_bus();
1637
1638         * gst/gstpipeline.c: (gst_pipeline_change_state),
1639         (gst_pipeline_get_clock_func):
1640         Clock refcounting fixes.
1641         Handle the case where preroll timed out more gracefully.
1642         
1643         * gst/gstsystemclock.c: (gst_system_clock_dispose):
1644         Clean up the internal thread in dispose. This is needed
1645         for subclasses that actually get disposed.
1646         
1647         * gst/schedulers/threadscheduler.c:
1648         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1649         (gst_thread_scheduler_dispose):
1650         Free thread pool in dispose.
1651
1652 2005-06-28  Andy Wingo  <wingo@pobox.com>
1653
1654         * tests/network-clock-utils.scm (debug, print-event): New utils.
1655
1656         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
1657         (*packet-loss*): Unified loss probability.
1658         (network-time): Report out-of-band events.
1659
1660         * tests/plot-data: Add support for out-of-band events. Hack it
1661         into this script instead of passing it down the pipe; should fix
1662         this later.
1663
1664 2005-06-28  Wim Taymans  <wim@fluendo.com>
1665
1666         * docs/gst/gstreamer.types:
1667         * docs/gst/tmpl/gstbasesrc.sgml:
1668         * docs/gst/tmpl/gstpad.sgml:
1669         Docs fixes.
1670
1671 2005-06-28  Wim Taymans  <wim@fluendo.com>
1672
1673         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1674         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
1675         (gst_proxy_pad_do_fixatecaps):
1676         Correctly proxy the check_pull_range function.
1677
1678 2005-06-28  Andy Wingo  <wingo@pobox.com>
1679
1680         * tests/network-clock.scm: Removed need for slib.
1681         
1682 2005-06-28  Wim Taymans  <wim@fluendo.com>
1683
1684         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
1685         (gst_basesink_preroll_queue_flush):
1686         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
1687         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
1688         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1689         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1690         (gst_proxy_pad_set_property):
1691         * gst/gstpad.c:
1692         * gst/gstpad.h:
1693         * gst/gstqueue.c: (gst_queue_init):
1694         The deprecated pad loop function is removed now.
1695
1696 2005-06-28  Andy Wingo  <wingo@pobox.com>
1697
1698         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
1699         New parameters, simulate network packet loss.
1700
1701         * tests/network-clock-utils.scm: Initialize the RNG.
1702
1703 2005-06-28  Wim Taymans  <wim@fluendo.com>
1704
1705         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
1706         (gst_basesink_event), (gst_basesink_deactivate):
1707         Flushing the preroll queue always needs to unlock the waiters.
1708
1709 2005-06-28  Edward Hervey  <edward@fluendo.com>
1710
1711         * gst/gstpipeline.c: (gst_pipeline_send_event): 
1712         Wheen a seek was successful on a pipeline, set the stream_time to the
1713         seek offset in order to have a synchronized stream_time.
1714
1715 2005-06-28  Wim Taymans  <wim@fluendo.com>
1716
1717         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1718         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
1719         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
1720         (gst_proxy_pad_do_fixatecaps):
1721         Call wrapper function instead of just calling the function
1722         pointers. This takes care of any locking and whatmore.
1723
1724 2005-06-28  Wim Taymans  <wim@fluendo.com>
1725
1726         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
1727         (gst_pad_pull_range):
1728         * gst/gstpad.h:
1729         CONNECTED -> LINKED.
1730
1731 2005-06-28  Andy Wingo  <wingo@pobox.com>
1732
1733         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
1734         source-munging commit!!!
1735
1736         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
1737         (gst_object_sink): Take gpointer arguments, not GstObject --
1738         avoids casts. Like GLib.
1739
1740         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
1741         activate.
1742
1743 2005-06-27  Andy Wingo  <wingo@pobox.com>
1744
1745         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
1746         remaining buffer.
1747
1748         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
1749         returns a sorted copy of the trace list.
1750         (gst_alloc_trace_print_live): New API, only prints traces with
1751         live objects. Sort the list.
1752         (gst_alloc_trace_print_all): Sort the list.
1753         (gst_alloc_trace_print): Align columns.
1754
1755         * gst/elements/gstttypefindelement.c:
1756         * gst/elements/gsttee.c:
1757         * gst/base/gstbasesrc.c:
1758         * gst/base/gstbasesink.c:
1759         * gst/base/gstbasetransform.c:
1760         * gst/gstqueue.c: Adapt for pad activation changes.
1761
1762         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
1763         sched.
1764         (gst_pipeline_dispose): Drop ref on sched.
1765
1766         * gst/gstpad.c (gst_pad_init): Set the default activate func.
1767         (gst_pad_activate_default): Push mode by default.
1768         (pre_activate_switch, post_activate_switch): New stubs, things to
1769         do before and after switching activation modes on pads.
1770         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
1771         the pad's activate function to choose which mode to activate.
1772         Shortcut on deactivation and call the right function directly.
1773         (gst_pad_activate_pull): New API, (de)activates a pad in pull
1774         mode.
1775         (gst_pad_activate_push): New API, same for push mode.
1776         (gst_pad_set_activate_function) 
1777         (gst_pad_set_activatepull_function) 
1778         (gst_pad_set_activatepush_function): Setters for new API.
1779
1780         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
1781         Trace all miniobjects.
1782         (gst_mini_object_make_writable): Unref the arg if we copy, like
1783         gst_caps_make_writable.
1784
1785         * gst/gstmessage.c (_gst_message_initialize): No trace init.
1786
1787         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
1788         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
1789         Adapt for new pad API.
1790
1791         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
1792
1793         * gst/gstelement.h:
1794         * gst/gstelement.c (gst_element_iterate_src_pads) 
1795         (gst_element_iterate_sink_pads): New API functions.
1796         
1797         * gst/gstelement.c (iterator_fold_with_resync): New utility,
1798         should fold into gstiterator.c in some form.
1799         (gst_element_pads_activate): Simplified via use of fold and
1800         delegation of decisions to gstpad->activate.
1801
1802         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
1803         help in debugging.
1804
1805         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
1806         class once in init, like gstmessage. Didn't run into this issue
1807         but it seems correct. Don't initialize a trace, gstminiobject does
1808         that.
1809
1810         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
1811         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
1812         to the bus.
1813         (assert_live_count): New util function, uses alloc traces to check
1814         cleanup.
1815
1816         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
1817         To be modified when unlink drops the internal pad.
1818
1819 2005-06-27  Wim Taymans  <wim@fluendo.com>
1820
1821         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
1822         (gst_bin_change_state):
1823         Cleanup the get_state() function a little, make sure it
1824         iterates the same set of elements.
1825         Added stub iterate_state_order().
1826
1827 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1828
1829         * docs/gst/gstreamer-docs.sgml:
1830         * docs/gst/gstreamer-sections.txt:
1831         * docs/gst/gstreamer.types:
1832         * docs/gst/tmpl/gstbasesink.sgml:
1833         * docs/gst/tmpl/gstbasesrc.sgml:
1834         * docs/gst/tmpl/gstbasetransform.sgml:
1835         * docs/gst/tmpl/gstelement.sgml:
1836         * docs/gst/tmpl/gstiterator.sgml:
1837         * gst/base/gstbasesrc.c:
1838         * gst/base/gstbasesrc.h:
1839         * gst/base/gstbasetransform.h:
1840         * gst/gstelement.c:
1841         * gst/gstiterator.h:
1842           adding basetransform and iterator docs
1843
1844 2005-06-27  Andy Wingo  <wingo@pobox.com>
1845
1846         * docs/design/part-activation.txt: Notes on how activation should
1847         work -- not quite implemented yet.
1848
1849 2005-06-25  Wim Taymans  <wim@fluendo.com>
1850
1851         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
1852         At least get the chain function correct, needs more
1853         fixing.
1854
1855 2005-06-25  Wim Taymans  <wim@fluendo.com>
1856
1857         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1858         (gst_basesink_handle_object), (gst_basesink_event),
1859         (gst_basesink_do_sync), (gst_basesink_handle_event),
1860         (gst_basesink_change_state):
1861         * gst/gsttask.h:
1862         Right, two problems here: ghostpads don't take locks and
1863         glib _rec_mutex_lock_full() with depth==0 still locks.
1864         Catch illegal locking and g_warn them.
1865
1866 2005-06-25  Wim Taymans  <wim@fluendo.com>
1867
1868         * check/states/sinks.c: (START_TEST), (gst_object_suite):
1869         Have to check for completion now...
1870
1871 2005-06-25  Wim Taymans  <wim@fluendo.com>
1872
1873         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1874         (gst_basesink_handle_object), (gst_basesink_event),
1875         (gst_basesink_do_sync), (gst_basesink_handle_event),
1876         (gst_basesink_change_state):
1877         * gst/gstpad.h:
1878         Unlock STREAM_LOCK whatever the recursion was.
1879
1880 2005-06-25  Wim Taymans  <wim@fluendo.com>
1881
1882         * gst/base/gstbasesink.c: (gst_basesink_set_property),
1883         (gst_basesink_preroll_queue_empty),
1884         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
1885         (gst_basesink_event), (gst_basesink_do_sync),
1886         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
1887         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
1888         (gst_basesink_change_state):
1889         Reworked the base sink, handle event and buffer serialisation
1890         correctly and removed possible deadlock.
1891         Handle EOS correctly.
1892
1893 2005-06-25  Wim Taymans  <wim@fluendo.com>
1894
1895         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
1896         (gst_pipeline_change_state):
1897         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1898         Allow elements to post EOS in the state change function.
1899         Fix up -launch, make it exit the poll loop when the
1900         pipeline actually changed state.
1901         Fix up warning parsing in -launch.
1902
1903 2005-06-25  Wim Taymans  <wim@fluendo.com>
1904
1905         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
1906         (gst_tee_sink_activate):
1907         Core takes STREAM_LOCK for us now.
1908
1909 2005-06-25  Wim Taymans  <wim@fluendo.com>
1910
1911         * gst/gstelement.c: (gst_element_get_state_func),
1912         (gst_element_set_state):
1913         * gst/gstelement.h:
1914         * gst/gstmessage.c: (gst_message_parse_error),
1915         (gst_message_parse_warning):
1916         Keep track of current target state while performing a state
1917         change so that subclasses can do something interesting.
1918         Fix parsing of warning/error messages when GError is NULL.
1919
1920 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1921
1922         * docs/gst/Makefile.am:
1923         * docs/gst/gstreamer-docs.sgml:
1924         * docs/gst/gstreamer-sections.txt:
1925         * docs/gst/gstreamer.types:
1926         * docs/gst/tmpl/gstbasesink.sgml:
1927         * docs/gst/tmpl/gstbasesrc.sgml:
1928         * docs/gst/tmpl/gstbin.sgml:
1929         * docs/gst/tmpl/gstcompat.sgml:
1930         * docs/gst/tmpl/gstfakesink.sgml:
1931         * docs/gst/tmpl/gstfakesrc.sgml:
1932         * docs/gst/tmpl/gstfilesink.sgml:
1933         * docs/gst/tmpl/gstfilesrc.sgml:
1934         * docs/gst/tmpl/gstindex.sgml:
1935         * docs/manual/appendix-quotes.xml:
1936         * gst/base/gstbasesrc.h:
1937         * gst/elements/gstfakesrc.h:
1938         * gst/gstmessage.h:
1939           start pulling in base classes and elements in our docs
1940
1941 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
1942
1943         * docs/gst/Makefile.am:
1944         * docs/libs/Makefile.am:
1945           fixed make distcheck with gtk-doc 1.3
1946
1947 2005-06-23  Wim Taymans  <wim@fluendo.com>
1948
1949         * gst/gstelement.c: (gst_element_get_state_func),
1950         (gst_element_set_state), (gst_element_change_state):
1951         When the state did not change, also report NO_PREROLL
1952         when it matters.
1953
1954 2005-06-23  Wim Taymans  <wim@fluendo.com>
1955
1956         * gst/gstpad.c: (gst_pad_event_default):
1957         * gst/gstqueue.c: (gst_queue_loop):
1958         No unsafe task pausing please.
1959
1960 2005-06-23  Wim Taymans  <wim@fluendo.com>
1961
1962         * gst/schedulers/threadscheduler.c:
1963         (gst_thread_scheduler_task_start),
1964         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
1965         Ref the task before pushing it on the threadpool. This
1966         makes sure that we have a ref when the threadfunction is
1967         actually called.
1968
1969 2005-06-23  Andy Wingo  <wingo@pobox.com>
1970
1971         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
1972         offset is greater than the file's size.
1973
1974         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
1975         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
1976         * gst/gstobject.c (gst_object_class_init): Make the class lock
1977         recursive. Wim won't let me drop deep_notify. Decodebin works
1978         again, whoopdy doo.
1979
1980         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
1981         internal pad, and hacks accordingly. Doesn't do it on the target
1982         pad because we change its caps. Probably catches all cases of
1983         interest tho.
1984         (gst_ghost_pad_set_property): Connect to notify::caps as
1985         appropritate.
1986
1987         * tests/network-clock.scm (plot-simulation): Pipe data to the
1988         elite python skript.
1989
1990         * tests/network-clock-utils.scm (define-parameter): New macro,
1991         defines a parameter that can be set via the command line.
1992         (set-parameter!, parse-parameter-arguments): Command line args
1993         parser.
1994
1995         * tests/plot-data: Simple matplotlib-based plotter, takes input on
1996         stdin.
1997
1998 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
1999
2000         * gst/elements/gsttypefindelement.c:
2001         (gst_type_find_element_handle_event):
2002           Don't restart typefinding on a discont.
2003         * gst/gstelement.c: (gst_element_set_state):
2004           Debug spelling fix.
2005         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
2006           Allow changing mode of an active pad.
2007           Debug output fixes.
2008         * gst/registries/gstlibxmlregistry.c: (load_feature):
2009           Don't cast a static pad template to a normal pad template.
2010
2011 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2012
2013         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2014         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2015           remove gst_strtoll completely, since it didn't actually do
2016           anything more than what g_ascii_strtoull already does.
2017           check for range errors when deserializing
2018           do a cast for the unsigned cases; but further fixing needs
2019           a decision on what the interpretation of "(int)" and
2020           deserialization should be for values that fall outside the
2021           type's boundaries (ie, refuse, or interpret as casting)
2022
2023 2005-06-23  Wim Taymans  <wim@fluendo.com>
2024
2025         * check/Makefile.am:
2026         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2027         * docs/design/part-live-source.txt:
2028         * docs/design/part-states.txt:
2029         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2030         (gst_basesrc_set_live), (gst_basesrc_is_live),
2031         (gst_basesrc_get_range), (gst_basesrc_activate),
2032         (gst_basesrc_change_state):
2033         * gst/base/gstbasesrc.h:
2034         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2035         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2036         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2037         * gst/gstelement.c: (gst_element_get_state_func),
2038         (gst_element_set_state):
2039         * gst/gstelement.h:
2040         * gst/gsttypes.h:
2041         * tools/gst-launch.c: (event_loop), (main):
2042         Added support for live sources and other elements that
2043         cannot do preroll.
2044         Updated design docs, added live-source design doc.
2045         Implemented live source functionality in basesrc
2046         Fix error condition in _bin_get_state()
2047         Implement live source handling in -launch.
2048         Added check for live sources.
2049         Fixed case in GstBin where elements were changed state
2050         multiple times.
2051
2052
2053 2005-06-23  Andy Wingo  <wingo@pobox.com>
2054
2055         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2056         borken refcounting.
2057
2058         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2059         gst_caps_replace takes care of this for us.
2060
2061         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2062         gst_pad_set_caps on the target, not just its setcaps() function.
2063
2064         * tests/network-clock.scm: 
2065         * tests/network-clock-utils.scm: A network clock simulator.
2066         Something of an algorithmic testbed before doing something in C.
2067
2068 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2069
2070         * check/Makefile.am:
2071         * check/gst/capslist.h:
2072           copy over from 0.8, and add two with bitmasks specified with
2073           (int) 0xFF...
2074         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2075           add test to parse everything from capslist.h
2076         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2077         (main):
2078           add test for structure deserialization
2079         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2080           add tests for deserialization of strings to int types
2081         * gst/gststructure.c: (gst_structure_nth_field_name):
2082         * gst/gststructure.h:
2083           add a way to get the name of a field referenced by index
2084         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2085           instead of checking if the resulting long long lies between
2086           min and max, we check if the long long would fit into
2087           a number of bytes for the final type.
2088           This fixes cases where a string represents 2^32 - 1, which
2089           when cast to int would be the (valid) -1, but is bigger than
2090           G_MAXINT
2091
2092 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2093
2094         * gst/parse/grammar.y:
2095           add a log line for type deserialization
2096
2097 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2098
2099         * check/gst/gstvalue.c: (START_TEST):
2100         * gst/gstvalue.c: (gst_value_deserialize):
2101           return long long, not int, so gint64 deserialization actually
2102           works.  Is there any flag that makes the compiler check this ?
2103           Fixes #308559
2104
2105 2005-06-22  Wim Taymans  <wim@fluendo.com>
2106
2107         * gst/gstbuffer.h:
2108         Added convenience macros for setting buffers in GValue.
2109
2110 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2111
2112         * check/gst/.cvsignore:
2113         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2114           add a test deserializing int64, and comment part out because
2115           it fails, yay !
2116
2117 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2118
2119         * check/Makefile.am:
2120         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2121         * testsuite/Makefile.am:
2122         * testsuite/caps/Makefile.am:
2123         * testsuite/caps/value_serialize.c:
2124         * testsuite/test_gst_init.c:
2125           move a value_serialize test over
2126
2127 2005-06-20  Wim Taymans  <wim@fluendo.com>
2128
2129         * gst/gstpad.c:
2130         Small doc updates.
2131         
2132         * gst/gstvalue.c: (gst_value_compare_buffer),
2133         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2134         (gst_value_compare_flags), (gst_value_serialize_flags),
2135         (gst_value_deserialize_flags), (_gst_value_initialize):
2136         Fix serialisation of buffers, they are not boxed types anymore
2137
2138 2005-06-20  Wim Taymans  <wim@fluendo.com>
2139
2140         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2141         Testcase to show error in buffer-on-caps serialisation.
2142
2143 2005-06-20  Andy Wingo  <wingo@pobox.com>
2144
2145         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2146         will be adding to later.
2147
2148         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2149         if its socks fill with rocks.
2150         (gst_system_clock_obtain): Set the name on object construction.
2151         Avoid double-checked locking.
2152
2153 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2154
2155         * gst/gsturi.c: (gst_element_make_from_uri):
2156           Fix potential endless loop.
2157
2158 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2159
2160         * check/Makefile.am:
2161           add gsttag
2162         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2163         (main):
2164           move over from testsuite dir and clean up
2165         * configure.ac:
2166         * gst/gsttag.c:
2167         * testsuite/Makefile.am:
2168         * testsuite/tags/.cvsignore:
2169         * testsuite/tags/Makefile.am:
2170         * testsuite/tags/merge.c:
2171           remove testsuite/tags
2172
2173 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2174
2175         * docs/gst/gstreamer-sections.txt:
2176         * docs/gst/tmpl/gstenumtypes.sgml:
2177         * win32/gstenumtypes.c:
2178           clean up documentation build a little
2179
2180 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2181
2182         * check/gstcheck.h:
2183           add macros for checking refcounts on objects and caps
2184         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2185           add some more unit tests
2186         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2187         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2188           fix leaked refcounts (I hope :)) so unittest works
2189         * gst/gstpad.h:
2190           whitespace removal
2191
2192 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2193
2194         * configure.ac: back to HEAD
2195
2196 === release 0.9.1 ===
2197
2198 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2199
2200         * NEWS:
2201         * RELEASE:
2202           updated
2203
2204 2005-06-17  Andy Wingo  <wingo@pobox.com>
2205
2206         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2207         assert; it's always possible that the pad gets deactivated in
2208         between the checks in gstpad.c and the implementation. Rely on
2209         finish_preroll() to return a FLUSHING or similar instead of on the
2210         assert.
2211         
2212         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2213         clock and post an EOS message if we come out of finish_preroll in
2214         the playing state.
2215
2216 2005-06-16  David Schleef  <ds@schleef.org>
2217
2218         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2219         (gst_capsfilter_set_property): Allow NULL as possible value
2220         for filter_caps property, indicating GST_CAPS_ANY.
2221
2222 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2223
2224         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2225           fix debug output
2226         * gst/schedulers/Makefile.am:
2227           use libgst prefix
2228         * gstreamer.spec.in:
2229           fix spec for it
2230
2231 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2232
2233         * gstreamer.spec.in:
2234           clean up
2235
2236 2005-06-08  Andy Wingo  <wingo@pobox.com>
2237
2238         * gst/gstutils.c: RPAD fixes all around.
2239         (gst_element_link_pads): Refcounting fixes.
2240
2241         * tools/gst-inspect.c:
2242         * tools/gst-xmlinspect.c:
2243         * parse/grammar.y:
2244         * gst/base/gsttypefindhelper.c:
2245         * gst/base/gstbasesink.c:
2246         * gst/gstqueue.c: RPAD fixes.
2247
2248         * gst/gstghostpad.h:
2249         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2250         pads. The tricky thing is they provide both source and sink
2251         interfaces, since they proxy the internal pad for the external
2252         pad, and vice versa. Implement with lower-level ProxyPad objects,
2253         with the interior proxy pad as a child of the exterior ghost pad.
2254         Should write a doc on this.
2255         
2256         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2257         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2258         gst_object API.
2259         
2260         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2261         pads are real pads. No ghost pads in this file. Not documenting
2262         the myriad s/RPAD/PAD/ and REALIZE fixes.
2263         (gst_pad_class_init): Add properties for "direction" and
2264         "template". Both are construct-only, so they can't change during
2265         the life of the pad. Fixes properly deriving from GstPad.
2266         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2267         derived objects, just set properties when creating the objects via
2268         g_object_new.
2269         (gst_pad_get_parent): Implement as a function, return NULL if the
2270         parent is not an element.
2271         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2272         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2273         
2274         * gst/gstobject.c (gst_object_class_init): Make name a construct
2275         property. Don't set it in the object init.
2276
2277         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2278         with UNKNOWN direction.
2279         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2280         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2281         (gst_element_remove_pad): Remove ghost-pad special cases.
2282         (gst_element_pads_activate): Remove rpad cruft.
2283
2284         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2285         catch the pad's-parent-not-an-element case.
2286
2287         * gst/gst.h: Include gstghostpad.h.
2288
2289         * gst/gst.c (init_post): No more real, ghost pads.
2290
2291         * gst/Makefile.am: Add gstghostpad.[ch].
2292
2293         * check/Makefile.am:
2294         * check/gst/gstbin.c:
2295         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2296         into a bin creates ghost pads, and that the refcounts are right.
2297         Partly moved from gstbin.c.
2298
2299 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2300
2301         * check/gst-libs/.cvsignore:
2302         * check/gst/.cvsignore:
2303         * check/pipelines/.cvsignore:
2304           ignore more
2305         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2306         (START_TEST), (cleanup_suite), (main):
2307           add some tests related to cleanup after running pipelines
2308
2309 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2310
2311         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2312           add a testsuite for GstBuffer
2313
2314 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2315
2316         * gst/gstminiobject.h:
2317           add defines for accessing the refcount
2318
2319 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2320
2321         * Makefile.am: added support for html unit test coverage reports
2322
2323 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2324
2325         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2326           Free existing caps if the capsfilter changes. Add a FIXME about
2327           setting those caps on the pads.
2328
2329         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2330           Before adding a ghost pad to a parent bin, check that there isn't
2331           already one for the element on the bin. Prevents infinite recursion
2332           when using decodebin in parse pipelines. Andy says he'll rewrite the
2333           way this works anyway, so ignore the hack.
2334
2335 2005-06-02  Andy Wingo  <wingo@pobox.com>
2336
2337         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2338         file size, pass it on to the type find helper.
2339
2340         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2341         segment_start and segment_end properly according to the seek
2342         method. Segment_end is still a bit flaky because offset can be
2343         negative for CUR and END cases, but it takes -1 as an "unset"
2344         value.
2345
2346 2005-06-02  Wim Taymans  <wim@fluendo.com>
2347
2348         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2349         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2350         (gst_basesink_activate):
2351         * gst/base/gstbasesink.h:
2352         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2353         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2354         (gst_pad_query), (gst_pad_start_task):
2355         * gst/gstpad.h:
2356         * gst/gstqueue.c: (gst_queue_bufferalloc),
2357         (gst_queue_handle_sink_event), (gst_queue_chain):
2358         Bufferalloc: return GstFlowReturn to more accuratly report
2359         why allocation failed.
2360
2361 2005-06-02  Wim Taymans  <wim@fluendo.com>
2362
2363         * gst/gstpipeline.c: (gst_pipeline_send_event):
2364         Take snapshot of state without blocking.
2365
2366 2005-06-02  Wim Taymans  <wim@fluendo.com>
2367
2368         * docs/design/part-TODO.txt:
2369         * docs/design/part-caps.txt:
2370         * docs/design/part-clocks.txt:
2371         * docs/design/part-negotiation.txt:
2372         * docs/design/part-preroll.txt:
2373         Small doc updates 
2374
2375 2005-05-30  Wim Taymans  <wim@fluendo.com>
2376
2377         * gst/elements/gstidentity.c: (gst_identity_event),
2378         (gst_identity_transform), (gst_identity_get_property):
2379         Protect last_message property as it is accessed from
2380         multiple threads.
2381
2382 2005-05-30  Wim Taymans  <wim@fluendo.com>
2383
2384         * gst/gstelement.c: (gst_element_init),
2385         (gst_element_pads_activate), (gst_element_change_state):
2386         Slicker pad activation code.
2387
2388 2005-05-30  Wim Taymans  <wim@fluendo.com>
2389
2390         * gst/Makefile.am:
2391         * gst/gstelement.h:
2392         * gst/gstelementfactory.h:
2393         * gst/gsttypes.h:
2394         Move elementfactory methods to separate .h file.
2395
2396 2005-05-30  Wim Taymans  <wim@fluendo.com>
2397
2398         * docs/design/part-overview.txt:
2399         * gst/gstsystemclock.h:
2400         Small typo fixes, doc updates.
2401
2402 2005-05-30  Wim Taymans  <wim@fluendo.com>
2403
2404         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2405         (init_popt_callback):
2406         Remove cpu-opt flag.
2407
2408 2005-05-30  Wim Taymans  <wim@fluendo.com>
2409
2410         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2411         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2412         * gst/gstbuffer.h:
2413         Avoid typechecking in places where not needed.
2414         Added accessor for malloc_data.
2415
2416 2005-05-30  Wim Taymans  <wim@fluendo.com>
2417
2418         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2419         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2420         (gst_pad_configure_sink), (gst_pad_configure_src),
2421         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2422         (gst_pad_start_task):
2423         Propagate errors from _set_caps() in configure_src/sink
2424         functions instead of returning TRUE.
2425         FLUSH events can travel up and downstream
2426
2427
2428 2005-05-30  Wim Taymans  <wim@fluendo.com>
2429
2430         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2431         (gst_basesink_activate):
2432         Handle EOS in preroll.
2433
2434 2005-05-30  Wim Taymans  <wim@fluendo.com>
2435
2436         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2437         (gst_queue_loop), (gst_queue_handle_src_event):
2438         Remove old pieces of code
2439         Flushing the queue in an upstream event is a very bad idea.
2440
2441 2005-05-26  Andy Wingo  <wingo@pobox.com>
2442
2443         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2444         gst_value_set_mini_object so as to add a ref on the object (which
2445         will be removed when the value is unset).
2446
2447         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2448         arg type in ::handoff.
2449
2450         * gst/gstelement.c (gst_element_change_state): Also deactivate
2451         pads in READY->NULL, just in case the element didn't make it to
2452         PAUSED. Wingo tested, Wim approved.
2453
2454 2005-05-26  Wim Taymans  <wim@fluendo.com>
2455
2456         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2457         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2458         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2459         A flushing pad cannot be used to alloc_buffer from.
2460
2461 2005-05-26  Wim Taymans  <wim@fluendo.com>
2462
2463         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2464         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2465         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2466         (gst_bus_create_watch), (gst_bus_add_watch_full):
2467         * gst/gstbus.h:
2468         Implement a real GSource and use g_main_context_wakeup() to
2469         signal new messages instead of the socketpair.
2470
2471 2005-05-25  Wim Taymans  <wim@fluendo.com>
2472
2473         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2474         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2475         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2476         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2477         (gst_pad_send_event), (gst_pad_start_task):
2478         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2479         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2480         (gst_queue_sink_activate), (gst_queue_src_activate),
2481         (gst_queue_change_state):
2482         * gst/gstqueue.h:
2483         Fix state changes for non sinks. We now change sinks, then elements
2484         with unconnected srcpads, then the rest.
2485         More efficient queue unlocking in flush and state changes.
2486         Set the pad activate mode even if it does not have an activate
2487         function.
2488
2489 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2490
2491         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2492           Don't go in pull mode for non-seekable sources.
2493         * gst/elements/gsttypefindelement.h:
2494         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2495         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2496         (free_entry), (stop_typefinding),
2497         (gst_type_find_element_handle_event), (find_peek),
2498         (gst_type_find_element_chain), (do_pull_typefind),
2499         (gst_type_find_element_change_state):
2500           Allow typefinding (w/o seeking) in push-mode, simplified version
2501           of what was in 0.8.
2502         * gst/gstutils.c: (gst_buffer_join):
2503         * gst/gstutils.h:
2504           gst_buffer_join() from 0.8.
2505
2506 2005-05-25  Wim Taymans  <wim@fluendo.com>
2507
2508         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2509         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2510         (gst_pad_send_event), (gst_pad_start_task):
2511         Disable attempt at mode switching until it is figured out.
2512
2513 2005-05-25  Wim Taymans  <wim@fluendo.com>
2514
2515         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2516         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2517         (gst_basesink_finish_preroll), (gst_basesink_chain),
2518         (gst_basesink_loop), (gst_basesink_activate),
2519         (gst_basesink_change_state):
2520         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2521         (gst_basesrc_get_range), (gst_basesrc_loop),
2522         (gst_basesrc_activate):
2523         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2524         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2525         (gst_real_pad_init), (gst_real_pad_set_property),
2526         (gst_real_pad_get_property), (gst_pad_set_active),
2527         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2528         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2529         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2530         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2531         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2532         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2533         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2534         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2535         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2536         (gst_pad_stop_task):
2537         * gst/gstpad.h:
2538         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2539         (gst_queue_loop), (gst_queue_src_activate):
2540         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2541         (gst_task_get_state):
2542         * gst/gsttask.h:
2543         * gst/schedulers/threadscheduler.c:
2544         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2545         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2546         in task function.
2547         Remove ACTIVE pad flag, use FLUSHING everywhere
2548         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2549         functions.
2550         Add locks around IS_FLUSHING when reading.
2551         Take STREAM lock in chain(), get_range() functions so plugins
2552         don't need to take it anymore.
2553         
2554
2555
2556 2005-05-25  Wim Taymans  <wim@fluendo.com>
2557
2558         * tools/gst-launch.c: (event_loop):
2559         Unref message after using its contents instead of
2560         before.
2561
2562 2005-05-24  Wim Taymans  <wim@fluendo.com>
2563
2564         * docs/design/draft-ghostpads.txt:
2565         * docs/design/draft-push-pull.txt:
2566         * docs/design/draft-query.txt:
2567         * docs/design/part-overview.txt:
2568         Docs updates, added general overview doc.
2569
2570 2005-05-21  David Schleef  <ds@schleef.org>
2571
2572         * docs/gst/tmpl/old/GstBin.sgml:
2573         * docs/gst/tmpl/old/GstBuffer.sgml:
2574         * docs/gst/tmpl/old/GstCaps.sgml:
2575         * docs/gst/tmpl/old/GstClock.sgml:
2576         * docs/gst/tmpl/old/GstCompat.sgml:
2577         * docs/gst/tmpl/old/GstData.sgml:
2578         * docs/gst/tmpl/old/GstElement.sgml:
2579         * docs/gst/tmpl/old/GstEvent.sgml:
2580         * docs/gst/tmpl/old/GstIndex.sgml:
2581         * docs/gst/tmpl/old/GstStructure.sgml:
2582         * docs/gst/tmpl/old/GstTag.sgml:
2583         * docs/gst/tmpl/old/cothreads.sgml:
2584         * docs/gst/tmpl/old/cothreads_compat.sgml:
2585         * docs/gst/tmpl/old/gettext.sgml:
2586         * docs/gst/tmpl/old/gobject2gtk.sgml:
2587         * docs/gst/tmpl/old/grammar.tab.sgml:
2588         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2589         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2590         * docs/gst/tmpl/old/gst_private.sgml:
2591         * docs/gst/tmpl/old/gstaggregator.sgml:
2592         * docs/gst/tmpl/old/gstarch.sgml:
2593         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2594         * docs/gst/tmpl/old/gstbufferstore.sgml:
2595         * docs/gst/tmpl/old/gstdata_private.sgml:
2596         * docs/gst/tmpl/old/gstdisksink.sgml:
2597         * docs/gst/tmpl/old/gstdisksrc.sgml:
2598         * docs/gst/tmpl/old/gstelementfactory.sgml:
2599         * docs/gst/tmpl/old/gstextratypes.sgml:
2600         * docs/gst/tmpl/old/gstfakesink.sgml:
2601         * docs/gst/tmpl/old/gstfakesrc.sgml:
2602         * docs/gst/tmpl/old/gstfdsink.sgml:
2603         * docs/gst/tmpl/old/gstfdsrc.sgml:
2604         * docs/gst/tmpl/old/gstfilesink.sgml:
2605         * docs/gst/tmpl/old/gstfilesrc.sgml:
2606         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2607         * docs/gst/tmpl/old/gstidentity.sgml:
2608         * docs/gst/tmpl/old/gstindexfactory.sgml:
2609         * docs/gst/tmpl/old/gstmarshal.sgml:
2610         * docs/gst/tmpl/old/gstmd5sink.sgml:
2611         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2612         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2613         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2614         * docs/gst/tmpl/old/gstpipefilter.sgml:
2615         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2616         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
2617         * docs/gst/tmpl/old/gstshaper.sgml:
2618         * docs/gst/tmpl/old/gstspider.sgml:
2619         * docs/gst/tmpl/old/gstspideridentity.sgml:
2620         * docs/gst/tmpl/old/gststatistics.sgml:
2621         * docs/gst/tmpl/old/gsttee.sgml:
2622         * docs/gst/tmpl/old/gsttimecache.sgml:
2623         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
2624         * docs/gst/tmpl/old/gstxmlregistry.sgml:
2625         * docs/gst/tmpl/old/gthread-cothreads.sgml:
2626         * docs/gst/tmpl/old/types.sgml:
2627           I didn't intend to add these or check them in.
2628
2629 2005-05-19  David Schleef  <ds@schleef.org>
2630
2631         * configure.ac: Use -no-common everywhere.  In a sane world, it
2632           would be the default in libtool, because without it, you can't
2633           build DLLs on Windows.
2634         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
2635         * docs/gst/gstreamer-sections.txt:
2636         * docs/gst/tmpl/gstcpu.sgml:
2637         * docs/gst/tmpl/gstdata.sgml:
2638         * docs/gst/tmpl/gstthread.sgml:
2639
2640 2005-05-19  David Schleef  <ds@schleef.org>
2641
2642         * gst/gstminiobject.c: (gst_value_set_mini_object),
2643         (gst_value_take_mini_object), (gst_value_get_mini_object):
2644         * gst/gstminiobject.h: Add GValue set/get functions.
2645
2646 2005-05-19  Wim Taymans  <wim@fluendo.com>
2647
2648         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
2649         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
2650         (gst_subbuffer_init), (gst_buffer_is_span_fast):
2651         * gst/gstbuffer.h:
2652         * gst/gstbus.c: (gst_bus_post):
2653         * gst/gstelement.c: (gst_element_get_random_pad):
2654         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
2655         Make subbufer unref the parent in finalize.
2656         some more debugging info.
2657
2658
2659 2005-05-19  Wim Taymans  <wim@fluendo.com>
2660
2661         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2662         (gst_basesink_init), (gst_basesink_finalize),
2663         (gst_basesink_activate), (gst_basesink_change_state):
2664         Don't free preroll queue too early.
2665
2666 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2667
2668         * gst/Makefile.am:
2669         * gst/ROADMAP:
2670           Hi, I'm outdated. Please shoot me.
2671
2672 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2673
2674         * gst/gstpipeline.c: (gst_pipeline_send_event):
2675           Do not access variables after they have been deleted.
2676
2677 2005-05-19  Wim Taymans  <wim@fluendo.com>
2678
2679         * tools/gst-inspect.c: (print_plugin_features):
2680         A plugin feature does unfortunatly not use the
2681         object name yet...
2682
2683 2005-05-18  Wim Taymans  <wim@fluendo.com>
2684
2685         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
2686         Port _span() functions to new subbuffers.
2687
2688 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2689
2690         * gst/gstbin.c: (gst_bin_add_func):
2691           Fix clock settery in bins when adding kids after the clock has
2692           been selected.
2693
2694 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2695
2696         * gst/elements/gstidentity.c: (gst_identity_class_init):
2697           Workaround until signals support GstMiniObject.
2698
2699 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
2700
2701         * gst/gstbuffer.c:
2702         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
2703
2704 2005-05-18  Wim Taymans  <wim@fluendo.com>
2705
2706         * gst/base/Makefile.am:
2707         * gst/base/gstadapter.c: (gst_adapter_base_init),
2708         (gst_adapter_class_init), (gst_adapter_init),
2709         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
2710         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
2711         (gst_adapter_flush), (gst_adapter_available),
2712         (gst_adapter_available_fast):
2713         * gst/base/gstadapter.h:
2714         Ported and added adapter to the base classes.
2715
2716 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2717
2718         * gst/gst.c:
2719         * gst/gstmessage.c:
2720           Make sure the class is reffed/unreffed once before threads can be
2721           used.  Fixes #304551.
2722
2723 2005-05-17  Wim Taymans  <wim@fluendo.com>
2724
2725         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
2726         (gst_basesink_chain_unlocked), (gst_basesink_activate):
2727         * gst/gstminiobject.c: (gst_mini_object_get_type),
2728         (gst_mini_object_free):
2729         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
2730         (gst_pad_push), (gst_pad_push_event):
2731         * gst/gstqueue.c: (gst_queue_change_state):
2732         Don't queue buffers in basesink when we are flushing.
2733         Unref buffer when flushing in basesink.
2734         Flush queue when going to READY
2735         Unref buffer when _push() returns an error.
2736         Don't free MiniObject instance when refcount is incremented
2737         in _finalize() so that we can recover objects.
2738
2739 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2740
2741         * docs/manual/advanced-schedulers.xml:
2742         * docs/manual/appendix-checklist.xml:
2743         * docs/pwg/advanced-clock.xml:
2744         * docs/pwg/advanced-interfaces.xml:
2745         * docs/pwg/advanced-request.xml:
2746         * docs/pwg/advanced-types.xml:
2747         * docs/pwg/intro-preface.xml:
2748         * examples/plugins/example.c: (gst_example_get_type),
2749         (gst_example_class_init), (gst_example_chain),
2750         (gst_example_set_property), (gst_example_get_property),
2751         (gst_example_change_state), (plugin_init):
2752         * examples/plugins/example.h:
2753           small doc fixes
2754
2755 2005-05-17  Wim Taymans  <wim@fluendo.com>
2756
2757         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
2758         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
2759         * gst/gstqueue.c: (gst_queue_change_state):
2760         Clear queue when going to READY.
2761         Remove IN_SETCAPS flag too.
2762
2763 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
2764
2765         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
2766           Remove implicit cast from gboolean to GstElementStateReturn;
2767           make sure we still return failure in paused => ready case if
2768           the parent class fails to change state and our own stop 
2769           vfunc succeeds.
2770
2771 2005-05-17  Wim Taymans  <wim@fluendo.com>
2772
2773         * tools/gst-launch.c: (event_loop):
2774         Message was unreffed too soon.
2775
2776 2005-05-16  Andy Wingo  <wingo@pobox.com>
2777
2778         * gst/gstbin.c (sink_iterator_filter): Err... um...
2779
2780         * check/gst/gstbin.c (test_ghost_pads): New test for the
2781         ghosting-if-elements-not-in-same-bin behavior.
2782
2783 2005-05-16  David Schleef  <ds@schleef.org>
2784
2785         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
2786         accessing refcount directly.
2787
2788 2005-05-15  David Schleef  <ds@schleef.org>
2789
2790         * check/Makefile.am: remove GstData checks
2791         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
2792         * gst/Makefile.am: add miniobject, remove data
2793         * gst/gst.h: add miniobject, remove data
2794         * gst/gstdata.c: remove
2795         * gst/gstdata.h: remove
2796         * gst/gstdata_private.h: remove
2797         * gst/gsttypes.h: remove GstEvent and GstMessage
2798         * gst/gstelement.c: (gst_element_post_message): fix for API changes
2799         * gst/gstmarshal.list: change BOXED -> OBJECT
2800
2801         Implement GstMiniObject.
2802         * gst/gstminiobject.c:
2803         * gst/gstminiobject.h:
2804
2805         Modify to be subclasses of GstMiniObject.
2806         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
2807         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
2808         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
2809         (gst_subbuffer_get_type), (gst_subbuffer_init),
2810         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
2811         (gst_buffer_span):
2812         * gst/gstbuffer.h:
2813         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
2814         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
2815         (_gst_event_copy), (gst_event_new):
2816         * gst/gstevent.h:
2817         * gst/gstmessage.c: (_gst_message_initialize),
2818         (gst_message_get_type), (gst_message_class_init),
2819         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
2820         (gst_message_new), (gst_message_new_error),
2821         (gst_message_new_warning), (gst_message_new_tag),
2822         (gst_message_new_state_changed), (gst_message_new_application):
2823         * gst/gstmessage.h:
2824         * gst/gstprobe.c: (gst_probe_perform),
2825         (gst_probe_dispatcher_dispatch):
2826         * gst/gstprobe.h:
2827         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
2828         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
2829         (_gst_query_copy), (gst_query_new):
2830
2831         Update elements for GstData -> GstMiniObject changes
2832         * gst/gstquery.h:
2833         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
2834         (gst_queue_chain), (gst_queue_loop):
2835         * gst/elements/gstbufferstore.c:
2836         (gst_buffer_store_add_buffer_func),
2837         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
2838         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2839         (gst_fakesink_render):
2840         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2841         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
2842         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
2843         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
2844         (gst_filesrc_create_read):
2845         * gst/elements/gstidentity.c: (gst_identity_class_init):
2846         * gst/elements/gsttypefindelement.c:
2847         (gst_type_find_element_src_event), (free_entry_buffers),
2848         (gst_type_find_element_handle_event):
2849         * libs/gst/dataprotocol/dataprotocol.c:
2850         (gst_dp_header_from_buffer):
2851         * libs/gst/dataprotocol/dataprotocol.h:
2852         * libs/gst/dataprotocol/dp-private.h:
2853
2854 2005-05-15  David Schleef  <ds@schleef.org>
2855
2856         * gst/elements/gstelements.c: Don't include headers that were
2857         just removed.
2858
2859 2005-05-15  David Schleef  <ds@schleef.org>
2860
2861         * gst/elements/Makefile.am: Remove some elements that don't
2862         need to be in the core (or even exist at all).
2863         * gst/elements/gstaggregator.c:
2864         * gst/elements/gstaggregator.h:
2865         * gst/elements/gstmd5sink.c:
2866         * gst/elements/gstmd5sink.h:
2867         * gst/elements/gstmultifilesrc.c:
2868         * gst/elements/gstmultifilesrc.h:
2869         * gst/elements/gstpipefilter.c:
2870         * gst/elements/gstpipefilter.h:
2871         * gst/elements/gstshaper.c:
2872         * gst/elements/gstshaper.h:
2873         * gst/elements/gststatistics.c:
2874         * gst/elements/gststatistics.h:
2875         * po/POTFILES.in: Remove above files.
2876
2877 2005-05-14  Andy Wingo  <wingo@pobox.com>
2878
2879         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
2880         so as to get the refs right.
2881         (sink_iterator_filter): New function, wraps bin_element_is_sink,
2882         unreffing objects that don't pass the filter.
2883
2884         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
2885         gst_element_set_bus.
2886         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
2887         normal cases, this will destroy the bus.
2888
2889         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
2890         object.
2891
2892         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
2893         has no sinks.
2894
2895 2005-05-13  Andy Wingo  <wingo@pobox.com>
2896
2897         * gst/gstutils.c (gst_element_link_pads): Instead of calling
2898         gst_pad_link, call pad_link_maybe_ghosting,
2899         (pad_link_maybe_ghosting): Links pads, making sure that the
2900         elements being linked are in the same bin.
2901         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
2902         Helpers for pad_link_maybe_ghosting.
2903
2904 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2905
2906         * configure.ac:
2907           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
2908
2909 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2910
2911         * docs/design/part-element-source.txt:
2912           Mention GstPushSrc
2913
2914 2005-05-12  Wim Taymans  <wim@fluendo.com>
2915
2916         * gst/base/gstbasesink.c: (gst_basesink_init),
2917         (gst_basesink_activate):
2918         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
2919         (gst_basesrc_is_seekable):
2920         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
2921         (bin_element_is_sink), (gst_bin_change_state):
2922         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2923         * gst/gstelement.h:
2924         Identify sinks by their flag to avoid overly complicated
2925         checks (fow now).
2926         Do state changes even for elements not reachable from the
2927         sinks.
2928         BaseSink is a sink now :)
2929         Some more debugging info in the basesrc.
2930
2931
2932 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2933
2934         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
2935           Implement _query on a bin, similar to _send_event.
2936
2937 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
2938
2939         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
2940           Discont event offset format should be GST_FORMAT_BYTES,
2941           not GST_FORMAT_TIME.
2942
2943 2005-05-12  Wim Taymans  <wim@fluendo.com>
2944
2945         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
2946         Same fix as Ronald's but without the signal. 
2947
2948 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2949
2950         * gst/gstutils.c: (gst_element_query_position):
2951           No, an element is not a pad.
2952
2953 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2954
2955         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
2956         (gst_bin_get_state):
2957           If a child is removed from a bin while we remove the child from
2958           the bin and while we're retrieving its state, signal this to the
2959           get_state function so we abort the wait (instead of waiting for
2960           a timeout) and can immediately re-iterate over all other elements.
2961
2962 2005-05-12  Wim Taymans  <wim@fluendo.com>
2963
2964         * gst/base/Makefile.am:
2965         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
2966         (gst_basesrc_start):
2967         * gst/base/gstbasesrc.h:
2968         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
2969         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
2970         (gst_pushsrc_init), (gst_pushsrc_create):
2971         * gst/base/gstpushsrc.h:
2972         Added is_seekable to BaseSrc
2973         Added simple PushSrc.
2974
2975 2005-05-11  Wim Taymans  <wim@fluendo.com>
2976
2977         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2978         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2979         (gst_element_link_pads), (gst_element_query_position),
2980         (gst_element_query_convert), (intersect_caps_func),
2981         (gst_pad_query_position), (gst_pad_query_convert):
2982         Fix refcounting in utils function.
2983         No point in trying to activate a pad when it's added, it could
2984         be added from the state change function and then we deadlock, the
2985         element has to decide what to do.
2986
2987 2005-05-10  Andy Wingo  <wingo@pobox.com>
2988
2989         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
2990         *all* the arguments.
2991
2992         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
2993         stream lock if it's a FLUSH_DONE; normal flushes don't get the
2994         lock (according to the docs -- if this is wrong change the docs).
2995
2996         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
2997         flush messages in the NULL state.
2998
2999         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
3000         message immediately and return.
3001         (gst_bus_set_flushing): New function. If a bus is flushing, it
3002         flushes out any queued messages and immediately unrefs new
3003         messages. This is so when an element goes to NULL, all of the
3004         unhandled messages coming from it can be freed, and their
3005         references to the element dropped. In other words: message source
3006         ref considered harmful :P
3007
3008         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
3009         we're finished with it.
3010
3011         * gst/gstmessage.c (gst_message_new_state_changed): 
3012
3013 2005-05-10  Wim Taymans  <wim@fluendo.com>
3014
3015         * gst/gstvalue.c: (gst_value_compare_flags),
3016         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3017         (_gst_value_initialize):
3018         Added flags serialize/deserialize/compare code.
3019
3020 2005-05-09  Andy Wingo  <wingo@pobox.com>
3021
3022         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3023         Intersect the peer's caps with our caps.
3024
3025 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3026
3027         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3028         * gst/elements/gsttypefindelement.c: (find_peek):
3029           Handle negative offsets better. Fixes decodebin.
3030
3031 2005-05-09  Wim Taymans  <wim@fluendo.com>
3032
3033         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3034         (gst_base_transform_event):
3035         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3036         Implement accept_caps.
3037         Fix silly lock/unlock mismatch in base class.
3038
3039 2005-05-09  Wim Taymans  <wim@fluendo.com>
3040
3041         * docs/design/draft-push-pull.txt:
3042         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3043         * gst/elements/gstfilesink.c: (gst_filesink_init),
3044         (gst_filesink_query):
3045         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3046         (gst_type_find_handle_src_query), (find_element_get_length):
3047         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3048         * gst/gstelement.h:
3049         * gst/gstmessage.c:
3050         * gst/gstmessage.h:
3051         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3052         (gst_real_pad_get_caps_unlocked),
3053         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3054         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3055         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3056         (gst_real_pad_dispose), (gst_real_pad_finalize),
3057         (gst_pad_load_and_link), (gst_pad_save_thyself),
3058         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3059         (gst_pad_check_pull_range), (gst_pad_pull_range),
3060         (gst_pad_template_get_type), (gst_pad_template_class_init),
3061         (gst_pad_template_init), (gst_pad_template_dispose),
3062         (name_is_valid), (gst_static_pad_template_get),
3063         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3064         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3065         (gst_pad_get_element_private), (gst_pad_start_task),
3066         (gst_pad_pause_task), (gst_pad_stop_task),
3067         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3068         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3069         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3070         (gst_ghost_pad_new):
3071         * gst/gstpad.h:
3072         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3073         (gst_query_new_position), (gst_query_set_position),
3074         (gst_query_parse_position), (gst_query_new_convert),
3075         (gst_query_set_convert), (gst_query_parse_convert):
3076         * gst/gstquery.h:
3077         * gst/gstqueryutils.c:
3078         * gst/gstqueryutils.h:
3079         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3080         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3081         (gst_queue_handle_src_query):
3082         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3083         (gst_element_query_position), (gst_element_query_convert),
3084         (intersect_caps_func), (gst_pad_query_position),
3085         (gst_pad_query_convert):
3086         * gst/gstutils.h:
3087         * tools/gst-inspect.c: (print_pad_info):
3088         * tools/gst-xmlinspect.c: (print_element_info):
3089         Remove old query functions. Ported old code.
3090         Added position/convert helper functions to gstutils.
3091         Reordered gstpad.c code, grouping relevant things.
3092         Remove gst_message_new(), always need to speficy a specific
3093         message.
3094
3095
3096 2005-05-09  Andy Wingo  <wingo@pobox.com>
3097
3098         * gst/gstiterator.h: Add some includes.
3099
3100         * gst/gstqueryutils.h: Include more headers.
3101
3102         * gst/gstpad.h:
3103         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3104         some uses of gst_pad_query.
3105
3106         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3107         NULL out parameters.
3108         (gst_query_new_position): New proc, allocates a new position
3109         query.
3110
3111         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3112         gstqueryutils.c to the build.
3113
3114         * gst/gststructure.c (gst_structure_set_valist): Implement with
3115         the generic G_VALUE_COLLECT.
3116         
3117 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3118
3119         * gst/Makefile.am: (gst_headers):
3120         Added gstqueryutils.h to the list of headers to install, that was
3121         a 'nachty' move wingo :)
3122
3123 2005-05-06  Andy Wingo  <wingo@pobox.com>
3124
3125         * gst/gstquery.h
3126         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3127         GstData, init a memchunk.
3128         (standard_definitions): Add a few query types, deprecate a few.
3129         (gst_query_get_type): New proc.
3130         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3131         implementation.
3132         (gst_query_new_application, gst_query_get_structure): New public
3133         procs.
3134
3135         * docs/design/draft-query.txt: Removed LINKS from the query types,
3136         because all the rest can be dispatched to other pads -- seemed
3137         ugly to have a query that couldn't be dispatched. internal_links
3138         is fine as a pad method.
3139
3140         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3141         in gstpad.c, but maintain binary compatibility for the moment.
3142         Will fix before 0.9 is out.
3143
3144         * gst/gstqueryutils.c: 
3145         * gst/gstqueryutils.h: New files, implement 3 methods for each
3146         query type: parse_query, parse_response, and set. Probably need an
3147         allocator as well.
3148
3149         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3150
3151         * gst/elements/gstfilesink.c (gst_filesink_query2):
3152         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3153         query_types, and formats methods.
3154
3155         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3156         (gst_pad_set_query2_function): New functions.
3157         (gst_real_pad_init): Set query2_default as the default query2
3158         function. Basically just dispatches to internally linked pads.
3159
3160         Needs review!
3161         
3162         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3163         without using the atomic operations. Only one thread can possibly
3164         be accessing the data at this point. Changed so as to avoid
3165         gst_atomic operations.
3166
3167 2005-05-06  Wim Taymans  <wim@fluendo.com>
3168
3169         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3170         Also set caps if we use the fallback buffer alloc.
3171
3172 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3173
3174         * docs/gst/Makefile.am:
3175         * docs/gst/gstreamer-docs.sgml:
3176         * docs/gst/gstreamer-sections.txt:
3177         * docs/gst/tmpl/gstatomic.sgml:
3178         * docs/gst/tmpl/gstmemchunk.sgml:
3179         * testsuite/elements/struct_i386.h:
3180         * win32/GStreamer.vcproj:
3181         * win32/Makefile:
3182           Purge GstAtomic stuff from docs and win32 makefiles as well
3183
3184 2005-05-06  Wim Taymans  <wim@fluendo.com>
3185
3186         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3187         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3188         * gst/gstpad.c: (gst_pad_peer_get_caps):
3189         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3190         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3191         (gst_queue_src_activate), (gst_queue_change_state):
3192         * gst/gstqueue.h:
3193         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3194         (intersect_caps_func):
3195         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3196         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3197         Some fixes for the peer_get_caps() change.
3198
3199 2005-05-06  Wim Taymans  <wim@fluendo.com>
3200
3201         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3202         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3203         (gst_basesink_activate):
3204         Actually do something with error codes returned from the push
3205         functions.
3206
3207 2005-05-06  Wim Taymans  <wim@fluendo.com>
3208
3209         * docs/design/part-element-sink.txt:
3210         * docs/design/part-element-source.txt:
3211         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3212         (gst_basesink_event), (gst_basesink_activate):
3213         * gst/base/gstbasesink.h:
3214         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3215         (gst_basesrc_activate):
3216         * gst/base/gstbasesrc.h:
3217         * gst/gstelement.c: (gst_element_pads_activate):
3218         Some more documentation.
3219         Fixed scheduling decision in _pads_activate().
3220
3221 2005-05-05  Andy Wingo  <wingo@pobox.com>
3222
3223         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3224         the test suite.
3225
3226 2005-05-05  Wim Taymans  <wim@fluendo.com>
3227
3228         * gst/base/Makefile.am:
3229         * gst/base/gstbasesink.h:
3230         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3231         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3232         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3233         (gst_collectpads_class_init), (gst_collectpads_init),
3234         (gst_collectpads_finalize), (gst_collectpads_new),
3235         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3236         (find_pad), (gst_collectpads_remove_pad),
3237         (gst_collectpads_is_active), (gst_collectpads_collect),
3238         (gst_collectpads_collect_range), (gst_collectpads_start),
3239         (gst_collectpads_stop), (gst_collectpads_peek),
3240         (gst_collectpads_pop), (gst_collectpads_available),
3241         (gst_collectpads_read), (gst_collectpads_flush),
3242         (gst_collectpads_chain):
3243         * gst/base/gstcollectpads.h:
3244         * gst/elements/Makefile.am:
3245         * gst/elements/gstelements.c:
3246         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3247         (gst_fakesink_get_times), (gst_fakesink_event),
3248         (gst_fakesink_preroll), (gst_fakesink_render):
3249         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3250         (gst_filesink_init), (gst_filesink_set_location),
3251         (gst_filesink_open_file), (gst_filesink_close_file),
3252         (gst_filesink_pad_query), (gst_filesink_event),
3253         (gst_filesink_render), (gst_filesink_change_state):
3254         * gst/elements/gstfilesink.h:
3255         Added object to help in making collect pad based elements.
3256         Ported filesink.
3257         Make event function in sink baseclass return gboolean.
3258
3259 2005-05-05  Wim Taymans  <wim@fluendo.com>
3260
3261         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3262         (gst_bin_get_by_name):
3263         * gst/gstbuffer.h:
3264         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3265         (gst_clock_finalize):
3266         * gst/gstdata.c: (gst_data_replace):
3267         * gst/gstdata.h:
3268         * gst/gstelement.c: (gst_element_request_pad),
3269         (gst_element_pads_activate):
3270         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3271         (gst_object_unref):
3272         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3273         (gst_pad_set_checkgetrange_function),
3274         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3275         (gst_pad_check_pull_range), (gst_pad_pull_range),
3276         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3277         (gst_pad_pause_task), (gst_pad_stop_task):
3278         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3279         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3280         Fix name lookup in GstBin.
3281         Added _data_replace() function and _buffer_replace()
3282         Use finalize method to clean up clock.
3283         Fix refcounting on request pads.
3284         Fix pad schedule mode error.
3285         Some more object refcounting debug info,
3286
3287
3288 2005-05-04  Andy Wingo <wingo@pobox.com>
3289
3290         * check/Makefile.am:
3291         * docs/gst/tmpl/gstatomic.sgml:
3292         * docs/gst/tmpl/gstplugin.sgml:
3293         * gst/base/gstbasesink.c: (gst_basesink_activate):
3294         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3295         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3296         (gst_basesrc_query), (gst_basesrc_set_property),
3297         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3298         (gst_basesrc_activate):
3299         * gst/base/gstbasesrc.h:
3300         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3301         (gst_base_transform_src_activate):
3302         * gst/elements/gstelements.c:
3303         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3304         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3305         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3306         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3307         (gst_type_find_element_checkgetrange),
3308         (gst_type_find_element_activate):
3309         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3310         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3311         (gst_caps_load_thyself):
3312         * gst/gstelement.c: (gst_element_pads_activate),
3313         (gst_element_save_thyself), (gst_element_restore_thyself):
3314         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3315         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3316         * gst/gstpad.h:
3317         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3318         (gst_xml_parse_file), (gst_xml_parse_memory),
3319         (gst_xml_get_element), (gst_xml_make_element):
3320         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3321         (_file_index_id_save_xml), (gst_file_index_commit):
3322         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3323         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3324         (load_paths):
3325         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3326         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3327         * tools/gst-complete.c: (main):
3328         * tools/gst-compprep.c: (main):
3329         * tools/gst-inspect.c: (print_element_properties_info):
3330         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3331         * tools/gst-xmlinspect.c: (print_element_properties):
3332         GCC 4 fixen.
3333         
3334 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3335
3336         * gst/gstplugin.c: (gst_plugin_check_module),
3337         (gst_plugin_check_file), (gst_plugin_load_file):
3338             apply patch from #172526 to make register work on MacOSX
3339
3340 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3341
3342         * docs/gst/tmpl/gstconfig.sgml:
3343         * gst/gstconfig.h.in:
3344           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3345         * testsuite/debug/printf_extension.c: (main):
3346           Do not use GST_PTR_FORMAT on pointers to types with
3347           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3348         * testsuite/elements/property.h:
3349           use correct printf format
3350
3351 2005-05-02  Wim Taymans  <wim@fluendo.com>
3352
3353         * docs/design/draft-push-pull.txt:
3354         * docs/design/draft-query.txt:
3355         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3356         (gst_basesrc_start):
3357         Added draft for new query API.
3358         Added draft for better selecting scheduling methods.
3359         Make basesrc ignore length if the subclass does not support
3360         it.
3361
3362 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3363
3364         * gst/Makefile.am:
3365           possible fixes for automake-1.5 - _LIBADD is reserved
3366
3367 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3368
3369         * docs/faq/Makefile.am:
3370         * docs/manual/Makefile.am:
3371         * docs/manuals.mak:
3372         * docs/pwg/Makefile.am:
3373         * gst/Makefile.am:
3374           possible fixes for automake-1.5
3375
3376 2005-04-28  Wim Taymans  <wim@fluendo.com>
3377
3378         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3379         (gst_basesink_pad_getcaps), (gst_basesink_init),
3380         (gst_basesink_do_sync):
3381         * gst/gstclock.c: (gst_clock_entry_new):
3382         * gst/gstevent.c: (gst_event_discont_get_value):
3383         * gst/gstpipeline.c: (pipeline_bus_handler),
3384         (gst_pipeline_change_state):
3385         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3386         Better debugging of clocking info.
3387         Allow NULL values when getting discont values.
3388
3389 2005-04-27  Wim Taymans  <wim@fluendo.com>
3390
3391         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3392         * check/gst/gstpad.c: (gst_pad_suite):
3393         Increase timeout for checks.
3394
3395 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3396
3397         * check/Makefile.am:
3398           fix the broken rule for cleanup.  Apparently this rule is
3399           only needed on FC2, so maybe this warrants further autotool
3400           inspection.
3401
3402 2005-04-26  Wim Taymans  <wim@fluendo.com>
3403
3404         * gst/gsttrashstack.h:
3405         Ooohh. a nasty one! After having a failed pop() from the stack,
3406         it's possible that the stack is empty. In that case, don't
3407         follow the NULL pointer.
3408
3409 2005-04-25  Wim Taymans  <wim@fluendo.com>
3410
3411         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3412         (gst_pad_set_checkgetrange_function),
3413         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3414         (gst_pad_check_pull_range), (gst_pad_pull_range),
3415         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3416         (gst_pad_pause_task), (gst_pad_stop_task):
3417         * gst/gstplugin.c: (gst_plugin_load):
3418         * gst/gstplugin.h:
3419         Remove gst_library_load as it does more harm than good with
3420         the new g_module flags.
3421         Revert bogus caps template check in pad linking, pad caps
3422         are important when linking not the template, which is more
3423         general than the current caps.
3424
3425 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3426
3427         * gst/autoplug/.cvsignore:
3428         * gst/autoplug/Makefile.am:
3429         * gst/autoplug/gstsearchfuncs.c:
3430         * gst/autoplug/gstsearchfuncs.h:
3431         * gst/autoplug/gstspider.c:
3432         * gst/autoplug/gstspider.h:
3433         * gst/autoplug/gstspideridentity.c:
3434         * gst/autoplug/gstspideridentity.h:
3435         * gst/autoplug/spidertest.c:
3436           Die, spider, die.
3437
3438 2005-04-25  Wim Taymans  <wim@fluendo.com>
3439
3440         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3441         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3442         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3443         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3444         * gst/gstpad.h:
3445         Added stubs for unimplemented functions. 
3446
3447 2005-04-24  David Schleef  <ds@schleef.org>
3448
3449         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3450         please fix.
3451
3452 2005-04-24  David Schleef  <ds@schleef.org>
3453
3454         Convert everything from GstAtomicInt to g_atomic_int_*, and
3455         remove gstatomic.
3456         * gst/Makefile.am:
3457         * gst/gstatomic.c:
3458         * gst/gstatomic.h:
3459         * gst/gstatomic_impl.h:
3460         * gst/gstbuffer.c:
3461         * gst/gstcaps.c:
3462         * gst/gstcaps.h:
3463         * gst/gstclock.c:
3464         * gst/gstclock.h:
3465         * gst/gstdata.c:
3466         * gst/gstdata.h:
3467         * gst/gstdata_private.h:
3468         * gst/gstevent.c:
3469         * gst/gstinfo.c:
3470         * gst/gstinfo.h:
3471         * gst/gstmessage.c:
3472         * gst/gstobject.c:
3473         * gst/gstobject.h:
3474         * gst/gststructure.c:
3475         * gst/gststructure.h:
3476         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3477         * gst/gstutils.h:
3478
3479 2005-04-24  David Schleef  <ds@schleef.org>
3480
3481         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3482         make the regressions tests work.  Remove some code that is no
3483         longer true.
3484         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3485         Disable warning for pads without templates.
3486
3487 2005-04-24  David Schleef  <ds@schleef.org>
3488
3489         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3490         functions that handle filtered links.
3491         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3492         removed functions.
3493         * gst/gstutils.c: Fix/remove utility functions that handle
3494         filtered caps.
3495         * gst/gstutils.h:
3496         * gst/gstvalue.c: Add serialization/deserialization of caps
3497         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3498         requires fixing so that the filter caps notation creates
3499         a capsfilter element and sets the filter_caps property.  I
3500         think everyone probably wants to keep the shorthand notation.
3501         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3502         * docs/gst/tmpl/gstpad.sgml:
3503
3504         * gst/elements/gstelements.c: Register capsfilter element.
3505         * gst/Makefile.am: fix spacing
3506         * docs/random/ds/0.9-suggested-changes: random
3507
3508 2005-04-23  David Schleef  <ds@schleef.org>
3509
3510         * gst/elements/Makefile.am:
3511         * gst/elements/gstcapsfilter.c: New element that acts like an
3512         identity, but filters caps.  Will eventually replace filtered
3513         caps in pad linking.
3514         * gst/gstutils.c: (gst_element_create_all_pads): New function
3515         to create all the ALWAYS pads that are registered with an
3516         element class.  This functionality should eventually be
3517         merged in with GstElement initialization.
3518         * gst/gstutils.h:
3519         * testsuite/trigger/README: part of trigger test code that should
3520         have been checked in a long time ago.
3521
3522 2005-04-23  David Schleef  <ds@schleef.org>
3523
3524         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3525         needed with new versions of libtool (nobody will confirm this),
3526         and hard to carry around.
3527         * gst/autoplug/Makefile.am:
3528         * gst/base/Makefile.am:
3529         * gst/elements/Makefile.am:
3530         * gst/indexers/Makefile.am:
3531         * gst/schedulers/Makefile.am:
3532         * libs/gst/bytestream/Makefile.am:
3533         * libs/gst/control/Makefile.am:
3534         * libs/gst/dataprotocol/Makefile.am:
3535         * libs/gst/getbits/Makefile.am:
3536
3537 2005-04-21  Wim Taymans  <wim@fluendo.com>
3538
3539         * docs/design/draft-push-pull.txt:
3540         * docs/design/part-MT-refcounting.txt:
3541         * docs/design/part-TODO.txt:
3542         * docs/design/part-caps.txt:
3543         * docs/design/part-events.txt:
3544         * docs/design/part-gstbus.txt:
3545         * docs/design/part-gstpipeline.txt:
3546         * docs/design/part-messages.txt:
3547         * docs/design/part-push-pull.txt:
3548         * docs/design/part-query.txt:
3549         Some more docs.
3550
3551 2005-04-21  Wim Taymans  <wim@fluendo.com>
3552
3553         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3554         (gst_message_new), (gst_message_new_error),
3555         (gst_message_new_warning), (gst_message_new_tag),
3556         (gst_message_new_state_changed), (gst_message_new_application),
3557         (gst_message_get_structure):
3558         * gst/gstmessage.h:
3559         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3560         (gst_structure_copy_conditional):
3561         Use parent refcount in GstMessage to ensure GstStructure
3562         consistency.
3563         Cleaned up headers a bit.
3564         
3565
3566 2005-04-20  Wim Taymans  <wim@fluendo.com>
3567
3568         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3569         (gst_basesink_pad_getcaps), (gst_basesink_init),
3570         (gst_basesink_chain_unlocked):
3571         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3572         (gst_type_find_helper):
3573         * gst/elements/gsttypefindelement.c:
3574         (gst_type_find_element_have_type), (gst_type_find_element_init),
3575         (stop_typefinding), (gst_type_find_element_handle_event),
3576         (find_suggest), (gst_type_find_element_chain),
3577         (gst_type_find_element_checkgetrange),
3578         (gst_type_find_element_getrange), (do_typefind),
3579         (gst_type_find_element_activate):
3580         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3581         (gst_buffer_default_free), (gst_buffer_default_copy),
3582         (gst_buffer_set_caps):
3583         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3584         (gst_caps_replace):
3585         * gst/gstmessage.c: (gst_message_new),
3586         (gst_message_new_state_changed):
3587         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3588         (gst_pad_set_checkgetrange_function),
3589         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3590         (gst_pad_set_caps), (gst_pad_check_pull_range),
3591         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3592         * gst/gstpad.h:
3593         * gst/gsttypefind.c: (gst_type_find_register):
3594         Make gst_caps_replace() work like other _replace() functions.
3595         Use _caps_replace() where possible.
3596         Make sure _message_new() initialises its field.
3597         Add gst_static_pad_template_get_caps()
3598
3599
3600 2005-04-18  Andy Wingo  <wingo@pobox.com>
3601
3602         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3603         on the peer, not the pad. I think that was a typo. Pass an extra
3604         arg to see if random access is possible. Activate the pads as
3605         PULL_RANGE if possible.
3606
3607         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3608
3609         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3610         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3611         to PROP_....
3612
3613 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3614
3615         * docs/faq/using.xml:
3616           Add note on gstreamer-properties (#154996).
3617
3618 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3619
3620         * docs/random/bbb/optional-properties:
3621           Some analysis on optional properties.
3622
3623 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3624
3625         * docs/gst/tmpl/gstelementfactory.sgml:
3626         * gst/gstelement.h:
3627         * gst/gstelementfactory.c: (gst_element_factory_init),
3628         (gst_element_factory_cleanup), (gst_element_register),
3629         (__gst_element_factory_add_static_pad_template),
3630         (gst_element_factory_get_static_pad_templates),
3631         (gst_element_factory_can_src_caps),
3632         (gst_element_factory_can_sink_caps):
3633         * gst/registries/Makefile.am:
3634         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
3635         (gst_xml_registry_class_init), (gst_xml_registry_init),
3636         (gst_xml_registry_new), (gst_xml_registry_set_property),
3637         (gst_xml_registry_get_property), (get_time), (make_dir),
3638         (gst_xml_registry_get_perms_func),
3639         (plugin_times_older_than_recurse), (plugin_times_older_than),
3640         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
3641         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
3642         (add_to_char_array), (read_string), (read_uint), (read_enum),
3643         (load_pad_template), (load_feature), (load_plugin), (load_paths),
3644         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
3645         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
3646         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
3647         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
3648         (gst_xml_registry_rebuild):
3649         * gst/registries/gstlibxmlregistry.h:
3650         * tools/gst-compprep.c: (main):
3651         * tools/gst-inspect.c: (print_pad_templates_info):
3652         * tools/gst-xmlinspect.c: (print_element_info):
3653           Use libxml2 for registry parsing, use staticpadtemplates in
3654           elementfactories. Makes gst_init() +/- 10x faster.
3655
3656 2005-04-12  Wim Taymans  <wim@fluendo.com>
3657
3658         * gst/base/Makefile.am:
3659         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3660         (gst_basesink_pad_getcaps), (gst_basesink_init),
3661         (gst_basesink_event), (gst_basesink_change_state):
3662         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3663         (gst_basesrc_init), (gst_basesrc_query),
3664         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3665         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3666         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3667         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3668         (gst_basesrc_stop), (gst_basesrc_activate),
3669         (gst_basesrc_change_state):
3670         * gst/base/gsttypefindhelper.c: (helper_find_peek),
3671         (helper_find_suggest), (gst_type_find_helper):
3672         * gst/base/gsttypefindhelper.h:
3673         * gst/elements/Makefile.am:
3674         * gst/elements/gstelements.c:
3675         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3676         (gst_fakesink_get_times), (gst_fakesink_event),
3677         (gst_fakesink_preroll), (gst_fakesink_render):
3678         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3679         (gst_fakesrc_init), (gst_fakesrc_event_handler),
3680         (gst_fakesrc_get_property), (gst_fakesrc_create),
3681         (gst_fakesrc_start), (gst_fakesrc_stop):
3682         * gst/elements/gstfakesrc.h:
3683         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
3684         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3685         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3686         (gst_filesrc_create_read), (gst_filesrc_create),
3687         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
3688         (gst_filesrc_start):
3689         * gst/elements/gsttypefindelement.c:
3690         (gst_type_find_element_have_type), (gst_type_find_element_init),
3691         (start_typefinding), (stop_typefinding), (push_buffer_store),
3692         (gst_type_find_element_handle_event),
3693         (gst_type_find_element_chain),
3694         (gst_type_find_element_checkgetrange),
3695         (gst_type_find_element_getrange), (do_typefind),
3696         (gst_type_find_element_activate),
3697         (gst_type_find_element_change_state):
3698         * gst/elements/gsttypefindelement.h:
3699         * gst/gstpipeline.c: (pipeline_bus_handler):
3700         Added typefind helper.
3701         Small preroll fix in the base sink.
3702         Disable typefind code in basesrc.
3703         Crude port of typefindelement.
3704         Fakesrc cleanups.
3705
3706
3707 2005-04-11  Wim Taymans  <wim@fluendo.com>
3708
3709         * check/gst/gstbus.c: (gstbus_suite):
3710         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
3711         * check/gstcheck.h:
3712           Fix up the timeout so that the test does not fail.
3713
3714 2005-04-06  Wim Taymans  <wim@fluendo.com>
3715
3716         * gst/base/README:
3717         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3718         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
3719         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3720         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3721         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3722         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3723         (gst_basesrc_stop), (gst_basesrc_activate),
3724         (gst_basesrc_change_state), (basesrc_find_peek),
3725         (basesrc_find_suggest), (gst_basesrc_type_find):
3726         * gst/base/gstbasesrc.h:
3727         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
3728         (gst_filesrc_class_init), (gst_filesrc_init),
3729         (gst_filesrc_finalize), (gst_filesrc_set_location),
3730         (gst_filesrc_set_property), (gst_filesrc_get_property),
3731         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3732         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3733         (gst_filesrc_create_read), (gst_filesrc_create),
3734         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
3735         * gst/elements/gstfilesrc.h:
3736         * gst/gstelement.c: (gst_element_get_state_func),
3737         (gst_element_lost_state), (gst_element_pads_activate):
3738         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3739         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3740         (gst_pad_pull_range):
3741         * gst/gstpad.h:
3742         More work on the generic source base class, implement seeking,
3743         query.
3744         Make filesrc extend the base source class.
3745         Added gst_pad_set_checkgetrange_function to GstPad.
3746
3747 2005-04-06  Andy Wingo  <wingo@pobox.com>
3748
3749         * pkgconfig/gstreamer-base.pc.in:
3750         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
3751
3752         * pkgconfig/Makefile.am:
3753         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
3754
3755 2005-04-04  Wim Taymans  <wim@fluendo.com>
3756
3757         * gst/base/Makefile.am:
3758         * gst/base/README:
3759         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3760         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3761         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3762         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
3763         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3764         (gst_basesrc_base_init), (gst_basesrc_class_init),
3765         (gst_basesrc_init), (gst_basesrc_get_formats),
3766         (gst_basesrc_get_query_types), (gst_basesrc_query),
3767         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
3768         (gst_basesrc_set_property), (gst_basesrc_get_property),
3769         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
3770         (gst_basesrc_loop), (gst_basesrc_activate),
3771         (gst_basesrc_change_state):
3772         * gst/base/gstbasesrc.h:
3773         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
3774         (gst_fakesrc_class_init), (gst_fakesrc_init),
3775         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
3776         (gst_fakesrc_get_property), (gst_fakesrc_create):
3777         * gst/elements/gstfakesrc.h:
3778         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
3779         (gst_filesrc_open_file), (gst_filesrc_loop),
3780         (gst_filesrc_activate), (filesrc_find_peek),
3781         (gst_filesrc_type_find):
3782         Made base source class, make fakesrc extend it.
3783         Add comments to basesink class.
3784         Some filesrc cleanup.
3785
3786 2005-03-31  David Schleef  <ds@schleef.org>
3787
3788         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
3789         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
3790         expected to link against libgstreamer.
3791         * gst/base/Makefile.am: link against libgstreamer
3792         * gst/elements/Makefile.am: same
3793
3794 2005-03-31  Andy Wingo  <wingo@pobox.com>
3795
3796         * tests/instantiate/Makefile.am:
3797         * tests/instantiate/caps.c: Add test to test speed of caps copy
3798         and free.
3799
3800         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
3801         GMemChunk to be fair.
3802
3803         * gst/gsttrashstack.h: Remove warning about using the fallback
3804         trash stack implementation, it's still faster than malloc.
3805
3806 2005-03-30  Andy Wingo  <wingo@pobox.com>
3807
3808         * tests/complexity.c: Add a copyright.
3809
3810 2005-03-31  Wim Taymans  <wim@fluendo.com>
3811
3812         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
3813         (gst_base_transform_class_init), (gst_base_transform_init),
3814         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
3815         (gst_base_transform_get_property),
3816         (gst_base_transform_sink_activate),
3817         (gst_base_transform_src_activate),
3818         (gst_base_transform_change_state):
3819         * gst/base/gstbasetransform.h:
3820         * gst/elements/gstidentity.c: (gst_identity_class_init),
3821         (gst_identity_event), (gst_identity_check_perfect),
3822         (gst_identity_transform), (gst_identity_start),
3823         (gst_identity_stop):
3824         Added start/stop methods to transform base class so subclasses 
3825         don't need to deal with state changes even.
3826
3827 2005-03-31  Wim Taymans  <wim@fluendo.com>
3828
3829         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
3830         (gst_event_new_discontinuous), (gst_event_discont_get_value):
3831         * gst/gstevent.h:
3832         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3833         (gst_pad_pull_range):
3834         Added rate to the discont event to prepare for variable speed
3835         and reverse playback.
3836
3837 2005-03-29  David Schleef  <ds@schleef.org>
3838
3839         * configure.ac:
3840         * testsuite/trigger/Makefile.am:
3841         * testsuite/trigger/trigger.c: A little example program to show
3842         how trigger-based elements can work.
3843
3844 2005-03-29  Wim Taymans  <wim@fluendo.com>
3845
3846         * gst/base/Makefile.am:
3847         * gst/base/README:
3848         * gst/base/gstbasesink.c: (gst_basesink_get_type),
3849         (gst_basesink_base_init), (gst_basesink_class_init),
3850         (gst_basesink_pad_getcaps), (gst_basesink_init),
3851         (gst_basesink_activate), (gst_basesink_change_state):
3852         * gst/base/gstbasesink.h:
3853         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
3854         (gst_base_transform_base_init), (gst_base_transform_finalize),
3855         (gst_base_transform_class_init), (gst_base_transform_init),
3856         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
3857         (gst_base_transform_event), (gst_base_transform_getrange),
3858         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
3859         (gst_base_transform_set_property),
3860         (gst_base_transform_get_property),
3861         (gst_base_transform_sink_activate),
3862         (gst_base_transform_src_activate),
3863         (gst_base_transform_change_state):
3864         * gst/base/gstbasetransform.h:
3865         * gst/elements/gstidentity.c: (gst_identity_finalize),
3866         (gst_identity_class_init), (gst_identity_init),
3867         (gst_identity_event), (gst_identity_check_perfect),
3868         (gst_identity_transform), (gst_identity_set_property),
3869         (gst_identity_get_property), (gst_identity_change_state):
3870         * gst/elements/gstidentity.h:
3871         * gst/gstelement.c: (gst_element_get_state_func),
3872         (gst_element_lost_state), (gst_element_pads_activate):
3873         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3874         (gst_pad_check_pull_range), (gst_pad_pull_range):
3875         * gst/gstpad.h:
3876         Simplify pad activation.
3877         Added function to check if pull_range can be performed.
3878         Error out when pulling inactive or flushing pads.
3879         Removed const from refcounted types as it does not make sense.
3880         Simplify pad templates in basesink
3881         Added base class for simple 1-to-1 transforms.
3882         Make identity subclass the base transform.
3883
3884 2005-03-29  Andy Wingo  <wingo@pobox.com>
3885
3886         * docs/libs/gstreamer-libs-overrides.txt: 
3887         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
3888         really don't understand what's going on, but like whatever. I want
3889         green buildbot!
3890
3891         * docs/gst/Makefile.am:
3892         * docs/libs/Makefile.am: Dist the overrides files.
3893
3894         * check/Makefile.am (clean-local): Remove .libs directories.
3895
3896         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
3897         elements to EXTRA_DIST, so po/ files are happy.
3898
3899         * po/POTFILES.in: Er, remove it here.
3900
3901         * po/POTFILES: Remove gstspider.c.
3902
3903         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
3904
3905         * docs/libs/gstreamer-libs-docs.sgml: 
3906         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
3907         bytestream.
3908
3909         * tests/complexity.c (main): Set the length of the preroll queue
3910         on the sinks to prevent a lockup.
3911
3912         * libs/gst/dataprotocol/Makefile.am: 
3913         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
3914         the same as the one in check/gst-libs/gdp.c.
3915
3916         * po/, docs/gst/: Commit automatic changes to docs and po files.
3917
3918         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
3919         the versioned libgstbase.
3920
3921         * check/Makefile.am: Depend on an unversioned gst-register, seems
3922         to make autoconf happier.
3923
3924         * gst/base/Makefile.am: Make libgstbase a versioned lib.
3925
3926 2005-03-28  Wim Taymans  <wim@fluendo.com>
3927
3928         * configure.ac:
3929         * docs/design/part-gstelement.txt:
3930         * docs/design/part-negotiation.txt:
3931         * docs/design/part-preroll.txt:
3932         * docs/design/part-scheduling.txt:
3933         * docs/design/part-states.txt:
3934         * gst/Makefile.am:
3935         * gst/base/Makefile.am:
3936         * gst/base/README:
3937         * gst/base/gstbasesink.c: (gst_basesink_get_template),
3938         (gst_basesink_base_init), (gst_basesink_class_init),
3939         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3940         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3941         (gst_basesink_set_pad_functions),
3942         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
3943         (gst_basesink_set_property), (gst_basesink_get_property),
3944         (gst_base_sink_get_template), (gst_base_sink_get_caps),
3945         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
3946         (gst_basesink_preroll_queue_push),
3947         (gst_basesink_preroll_queue_empty),
3948         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
3949         (gst_basesink_event), (gst_basesink_get_times),
3950         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
3951         (gst_basesink_chain_unlocked), (gst_basesink_chain),
3952         (gst_basesink_loop), (gst_basesink_activate),
3953         (gst_basesink_change_state):
3954         * gst/base/gstbasesink.h:
3955         * gst/elements/Makefile.am:
3956         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
3957         (gst_fakesink_class_init), (gst_fakesink_init),
3958         (gst_fakesink_set_property), (gst_fakesink_get_property),
3959         (gst_fakesink_get_times), (gst_fakesink_event),
3960         (gst_fakesink_preroll), (gst_fakesink_render),
3961         (gst_fakesink_change_state):
3962         * gst/elements/gstfakesink.h:
3963         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3964         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
3965         * gst/gstelement.c: (gst_element_add_pad),
3966         (gst_element_get_state_func), (gst_element_abort_state),
3967         (gst_element_commit_state), (gst_element_lost_state),
3968         (gst_element_set_state), (gst_element_pads_activate):
3969         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
3970         * gst/gstpipeline.c: (gst_pipeline_send_event),
3971         (gst_pipeline_change_state):
3972         Added state change code.
3973         Added/updated docs.
3974         Added sink base class, make fakesink extend the base class.
3975         Small cleanups in GstPipeline.
3976
3977 2005-03-26  David Schleef  <ds@schleef.org>
3978
3979         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
3980         is broken and should be implemented in a different library.
3981         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
3982         * gst/gst.h: remove gstcpu.h
3983         * gst/gstcpu.c: remove
3984         * gst/gstcpu.h: remove
3985         * gst/Makefile.am.future: Remove this file.  It's ancient.
3986
3987 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3988
3989         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3990         (gst_bin_send_event):
3991           Add default event/set_manager handlers. The set_manager handler
3992           takes care that the manager is distributed over kids that were
3993           already in the bin before the manager was set. The event handler
3994           is a utility virtual function that sends the event over all sinks,
3995           so that gst_element_send_event (bin, event); has the expected
3996           behaviour.
3997         * gst/gstpad.c: (gst_pad_event_default):
3998           Re-install default event handling for discontinuities, so that
3999           seeking works without requiring hacks in applications or extra
4000           code in sinks.
4001         * gst/gstpipeline.c: (gst_pipeline_class_init),
4002         (gst_pipeline_send_event):
4003           Half hack, half utility: set a pipeline to PAUSED for seek events,
4004           since that is the only way we can guarantee a/v sync. Means that
4005           you can do gst_element_seek (pipeline, method, pos); on a pipeline
4006           and it "just works".
4007
4008 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4009
4010         * gst/gstpipeline.c: (gst_pipeline_use_clock):
4011           Lock/unlock mismatch.
4012
4013 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4014
4015         * docs/faq/gst-uninstalled:
4016           add gst-plugins-base
4017         * docs/gst/Makefile.am:
4018           don't error out until docs are fixed
4019         * docs/gst/gstreamer.types:
4020           remove thread
4021
4022 2005-03-22  Wim Taymans  <wim@fluendo.com>
4023
4024         * check/Makefile.am:
4025         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4026         * gst/gststructure.c: (gst_structure_set_valist),
4027         (gst_structure_copy_conditional):
4028         Activated more tests.
4029         Added message test.
4030         Added G_TYPE_POINTER to GstStructure.
4031         
4032
4033 2005-03-22  Wim Taymans  <wim@fluendo.com>
4034
4035         * docs/design/part-TODO.txt:
4036         * docs/design/part-events.txt:
4037         * docs/design/part-gstbin.txt:
4038         * docs/design/part-gstbus.txt:
4039         * docs/design/part-gstpipeline.txt:
4040         * docs/design/part-messages.txt:
4041         * gst/gstbus.c:
4042         * gst/gstmessage.c:
4043         Docs updates
4044
4045 2005-03-21  Wim Taymans  <wim@fluendo.com>
4046
4047         * gst/gstbus.c: (gst_bus_post):
4048         Fix copy-and-paste error.
4049
4050 2005-03-21  Wim Taymans  <wim@fluendo.com>
4051
4052         * check/Makefile.am:
4053         * gst/Makefile.am:
4054         * gst/elements/Makefile.am:
4055         * gst/elements/gstelements.c:
4056         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4057         (gst_fakesink_event), (gst_fakesink_chain):
4058         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4059         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4060         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4061         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4062         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4063         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4064         (gst_fakesrc_loop), (gst_fakesrc_activate),
4065         (gst_fakesrc_change_state):
4066         * gst/elements/gstfakesrc.h:
4067         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4068         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4069         (gst_filesrc_open_file), (gst_filesrc_loop),
4070         (gst_filesrc_activate), (gst_filesrc_change_state),
4071         (filesrc_find_peek), (filesrc_find_suggest),
4072         (gst_filesrc_type_find):
4073         * gst/elements/gstidentity.c: (gst_identity_finalize),
4074         (gst_identity_class_init), (gst_identity_init),
4075         (gst_identity_proxy_getcaps), (identity_queue_push),
4076         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4077         (gst_identity_getrange), (gst_identity_chain),
4078         (gst_identity_sink_loop), (gst_identity_src_loop),
4079         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4080         (gst_identity_set_property), (gst_identity_get_property),
4081         (gst_identity_change_state):
4082         * gst/elements/gstidentity.h:
4083         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4084         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4085         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4086         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4087         (gst_tee_sink_activate):
4088         * gst/elements/gsttee.h:
4089         * gst/gst.c: (gst_register_core_elements), (init_post):
4090         * gst/gst.h:
4091         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4092         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4093         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4094         (gst_bin_change_state):
4095         * gst/gstbin.h:
4096         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4097         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4098         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4099         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4100         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4101         (bus_watch_callback), (bus_watch_destroy),
4102         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4103         (poll_timeout), (gst_bus_poll):
4104         * gst/gstbus.h:
4105         * gst/gstcaps.h:
4106         * gst/gstdata.h:
4107         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4108         (gst_element_post_message), (gst_element_message_full),
4109         (gst_element_get_state_func), (gst_element_get_state),
4110         (gst_element_abort_state), (gst_element_commit_state),
4111         (gst_element_lost_state), (gst_element_set_state),
4112         (gst_element_pads_activate), (gst_element_change_state),
4113         (gst_element_dispose), (gst_element_set_manager_func),
4114         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4115         (gst_element_set_manager), (gst_element_get_manager),
4116         (gst_element_set_bus), (gst_element_get_bus),
4117         (gst_element_set_scheduler), (gst_element_get_scheduler):
4118         * gst/gstelement.h:
4119         * gst/gstevent.c: (gst_event_new_segment_seek),
4120         (gst_event_new_flush):
4121         * gst/gstevent.h:
4122         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4123         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4124         (gst_message_new_eos), (gst_message_new_error),
4125         (gst_message_new_warning), (gst_message_new_tag),
4126         (gst_message_new_state_changed), (gst_message_new_application),
4127         (gst_message_get_structure), (gst_message_parse_tag),
4128         (gst_message_parse_state_changed), (gst_message_parse_error),
4129         (gst_message_parse_warning):
4130         * gst/gstmessage.h:
4131         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4132         (gst_real_pad_set_property), (gst_pad_set_active),
4133         (gst_pad_is_active), (gst_pad_set_blocked_async),
4134         (gst_pad_set_blocked), (gst_pad_is_blocked),
4135         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4136         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4137         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4138         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4139         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4140         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4141         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4142         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4143         (gst_pad_set_caps), (gst_pad_configure_sink),
4144         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4145         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4146         (gst_real_pad_dispose), (gst_real_pad_finalize),
4147         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4148         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4149         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4150         * gst/gstpad.h:
4151         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4152         (pipeline_bus_handler), (gst_pipeline_change_state),
4153         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4154         * gst/gstpipeline.h:
4155         * gst/gstprobe.h:
4156         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4157         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4158         (gst_queue_link_src), (gst_queue_bufferalloc),
4159         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4160         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4161         (gst_queue_loop), (gst_queue_handle_src_event),
4162         (gst_queue_handle_src_query), (gst_queue_src_activate),
4163         (gst_queue_change_state):
4164         * gst/gstqueue.h:
4165         * gst/gstscheduler.c: (gst_scheduler_init),
4166         (gst_scheduler_dispose), (gst_scheduler_create_task),
4167         (gst_scheduler_factory_create):
4168         * gst/gstscheduler.h:
4169         * gst/gststructure.c: (gst_structure_get_type),
4170         (gst_structure_copy_conditional):
4171         * gst/gststructure.h:
4172         * gst/gsttaginterface.h:
4173         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4174         (gst_task_init), (gst_task_dispose), (gst_task_create),
4175         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4176         (gst_task_pause):
4177         * gst/gsttask.h:
4178         * gst/gstthread.c:
4179         * gst/gstthread.h:
4180         * gst/gsttypes.h:
4181         * gst/schedulers/Makefile.am:
4182         * gst/schedulers/cothreads_compat.h:
4183         * gst/schedulers/entryscheduler.c:
4184         * gst/schedulers/faircothreads.c:
4185         * gst/schedulers/faircothreads.h:
4186         * gst/schedulers/fairscheduler.c:
4187         * gst/schedulers/gstbasicscheduler.c:
4188         * gst/schedulers/gstoptimalscheduler.c:
4189         * gst/schedulers/gthread-cothreads.h:
4190         * gst/schedulers/threadscheduler.c:
4191         (gst_thread_scheduler_task_get_type),
4192         (gst_thread_scheduler_task_class_init),
4193         (gst_thread_scheduler_task_init),
4194         (gst_thread_scheduler_task_start),
4195         (gst_thread_scheduler_task_stop),
4196         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4197         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4198         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4199         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4200         (plugin_init):
4201         * libs/gst/Makefile.am:
4202         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4203         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4204         (gst_file_pad_parent_set):
4205         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4206         (gst_dp_event_from_packet):
4207         * tests/complexity.c: (main):
4208         * tests/mass_elements.c: (main):
4209         * testsuite/states/locked.c: (message_received), (main):
4210         * testsuite/states/parent.c: (main):
4211         * tools/gst-inspect.c: (print_element_flag_info),
4212         (print_implementation_info), (print_pad_info):
4213         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4214         (main):
4215         * tools/gst-md5sum.c: (event_loop), (main):
4216         * tools/gst-typefind.c: (main):
4217         * tools/gst-xmlinspect.c: (print_element_info):
4218         Next big merge.
4219         Added GstBus for mainloop integration.
4220         Added GstMessage for sending notifications on the bus.
4221         Added GstTask as an abstraction for pipeline entry points.
4222         Removed GstThread.
4223         Removed Schedulers.
4224         Simplified GstQueue for multithreaded core.
4225         Made _link threadsafe, removed old capsnego.
4226         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4227         Added pad blocking functions.
4228         Reworked scheduling functions in GstPad to prepare for
4229         scheduling updates soon.
4230         Moved events out of data stream.
4231         Simplified GstEvent types.
4232         Added return values to push/pull.
4233         Removed clocking from GstElement.
4234         Added prototypes for state change function for next merge.
4235         Removed iterate from bins and state change management.
4236         Fixed some elements, disabled others for now.
4237         Fixed -inspect and -launch.
4238         Added check for GstBus.
4239
4240 2005-03-10  Wim Taymans  <wim@fluendo.com>
4241
4242         * docs/design/part-MT-refcounting.txt:
4243         * docs/design/part-clocks.txt:
4244         * docs/design/part-gstelement.txt:
4245         * docs/design/part-gstobject.txt:
4246         * docs/design/part-standards.txt:
4247         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4248         (gst_bin_remove_func), (gst_bin_remove):
4249         * gst/gstbin.h:
4250         * gst/gstbuffer.c:
4251         * gst/gstcaps.h:
4252         * testsuite/clock/clock1.c: (main):
4253         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4254         (main):
4255         * testsuite/dlopen/loadgst.c: (do_test):
4256         * testsuite/refcounting/bin.c: (add_remove_test1),
4257         (add_remove_test2), (main):
4258         * testsuite/refcounting/element.c: (main):
4259         * testsuite/refcounting/element_pad.c: (main):
4260         * testsuite/refcounting/pad.c: (main):
4261         * tools/gst-launch.c: (sigint_handler_sighandler):
4262         * tools/gst-typefind.c: (main):
4263         Doc updates.
4264         Added doc about clock.
4265         removed gst_bin_iterate_recurse_up(), marked methods
4266         for removal.
4267         Fix more testsuites.
4268
4269 2005-03-09  Wim Taymans  <wim@fluendo.com>
4270
4271         * gst/gstpad.c: (gst_pad_get_direction),
4272         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4273         (gst_pad_collect_valist):
4274         * testsuite/bins/interface.c: (main):
4275         * testsuite/caps/audioscale.c: (test_caps):
4276         * testsuite/caps/caps.c: (test1), (test2), (test3):
4277         * testsuite/caps/deserialize.c: (main):
4278         * testsuite/caps/enumcaps.c: (main):
4279         * testsuite/caps/filtercaps.c: (main):
4280         * testsuite/caps/intersect2.c: (main):
4281         * testsuite/caps/random.c: (main):
4282         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4283         * testsuite/caps/sets.c: (check_caps):
4284         * testsuite/caps/simplify.c: (check_caps), (main):
4285         * testsuite/caps/subtract.c: (check_caps):
4286         Fix _pad_get_direction wrt ghostpads.
4287         Fix caps testsuite.
4288
4289 2005-03-09  Wim Taymans  <wim@fluendo.com>
4290
4291         * check/Makefile.am:
4292         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4293         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4294         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4295         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4296         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4297         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4298         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4299         (bin_element_is_sink), (gst_bin_iterate_sinks),
4300         (gst_bin_iterate_all_by_interface):
4301         * gst/gstbin.h:
4302         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4303         (gst_element_change_state), (gst_element_dispose),
4304         (gst_element_finalize), (gst_element_set_loop_function):
4305         * gst/gstelement.h:
4306         * gst/gstiterator.c: (find_custom_fold_func):
4307         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4308         (gst_pad_collectv), (gst_pad_collect_valist),
4309         (gst_pad_template_new):
4310         * gst/gstpipeline.c: (gst_pipeline_class_init),
4311         (gst_pipeline_dispose), (gst_pipeline_set_property),
4312         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4313         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4314         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4315         * gst/gstutils.h:
4316         * gst/schedulers/entryscheduler.c:
4317         * gst/schedulers/gstbasicscheduler.c:
4318         (gst_basic_scheduler_cothreaded_chain),
4319         (gst_basic_scheduler_chain_add_element):
4320         * testsuite/bins/interface.c: (main):
4321         Added GstBin test.
4322         Added GstSystemClock test.
4323         Implemented clock distribution code in GstBin.
4324         Implemented iterate sinks method for future use.
4325         Rearranged gstelement.h
4326         Fix GstIterator comparison bug.
4327         Moved some code to GstPipeline, mostly clocking related.
4328
4329 2005-03-09  Wim Taymans  <wim@fluendo.com>
4330
4331         * configure.ac:
4332         * gst/gst_private.h:
4333         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4334         (gst_bin_remove_func), (gst_bin_remove),
4335         (gst_bin_get_by_name_recurse_up):
4336         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4337         (gst_clock_id_compare_func), (gst_clock_id_wait),
4338         (gst_clock_id_wait_async), (gst_clock_init),
4339         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4340         * gst/gstelement.h:
4341         * gst/gstinfo.c: (_gst_debug_init):
4342         * gst/gstobject.h:
4343         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4344         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4345         * gst/gstpad.h:
4346         Bump version number, we're now 0.9.0
4347         Add future debugging category.
4348         Fix NULL _unref() in _get_by_name_recurse_up
4349         Rearrange gstpad.h.
4350         Update some docs.
4351
4352 2005-03-08  Wim Taymans  <wim@fluendo.com>
4353
4354         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4355         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4356         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4357         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4358         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4359         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4360         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4361         * gst/elements/gstidentity.c: (gst_identity_class_init):
4362         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4363         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4364         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4365         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4366         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4367         (gst_tee_link):
4368         * gst/gstelement.c: (gst_element_class_init),
4369         (gst_element_base_class_init), (gst_element_init),
4370         (gst_element_get_random_pad), (gst_element_wait_state_change),
4371         (gst_element_change_state), (gst_element_dispose),
4372         (gst_element_finalize), (gst_element_set_loop_function):
4373         * gst/gstelement.h:
4374         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4375         * gst/gstthread.c: (gst_thread_class_init),
4376         (gst_thread_release_children_locks), (gst_thread_change_state):
4377         * gst/schedulers/gstbasicscheduler.c:
4378         (gst_basic_scheduler_loopfunc_wrapper),
4379         (gst_basic_scheduler_chain_wrapper),
4380         (gst_basic_scheduler_src_wrapper),
4381         (gst_basic_scheduler_remove_element):
4382         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4383         Remove threadsafe properties. Fix elements because GObject
4384         complains when installing a property before declaring a
4385         set/get_property handler.
4386         Rearrange gstelement.h file, use STATE macros for state locks.
4387         Free mutexes in the finalize method instead of dispose.
4388
4389 2005-03-08  Wim Taymans  <wim@fluendo.com>
4390
4391         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4392         * gst/gstthread.c: (gst_thread_release_children_locks):
4393         Added parentage check.
4394         Fix build og GstThread again.
4395
4396 2005-03-08  Wim Taymans  <wim@fluendo.com>
4397
4398         * docs/design/part-MT-refcounting.txt:
4399         * docs/design/part-conventions.txt:
4400         * docs/design/part-gstobject.txt:
4401         * docs/design/part-relations.txt:
4402         * docs/design/part-standards.txt:
4403         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4404         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4405         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4406         (gst_bin_iterate_all_by_interface):
4407         * gst/gstbuffer.h:
4408         * gst/gstclock.h:
4409         * gst/gstelement.c: (gst_element_class_init),
4410         (gst_element_change_state), (gst_element_set_loop_function):
4411         * gst/gstelement.h:
4412         * gst/gstiterator.c:
4413         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4414         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4415         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4416         (gst_object_set_parent), (gst_object_unparent),
4417         (gst_object_check_uniqueness):
4418         * gst/gstobject.h:
4419         Docs updates, clean up some headers.
4420
4421 2005-03-07  Wim Taymans  <wim@fluendo.com>
4422
4423         * check/.cvsignore:
4424         * check/Makefile.am:
4425         * check/gst-libs/.cvsignore:
4426         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4427         * check/gst/.cvsignore:
4428         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4429         (START_TEST), (gstbus_suite), (main):
4430         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4431         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4432         (gst_data_suite), (main):
4433         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4434         (add_fold_func), (gstiterator_suite), (main):
4435         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4436         (thread_name_object), (thread_name_object_default),
4437         (gst_object_name_compare), (gst_object_suite), (main):
4438         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4439         (gst_pad_suite), (main):
4440         * check/gstcheck.c: (gst_check_log_message_func),
4441         (gst_check_log_critical_func), (gst_check_init):
4442         * check/gstcheck.h:
4443         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4444         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4445         Added checks.
4446
4447 2005-03-07  Wim Taymans  <wim@fluendo.com>
4448
4449         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4450         (gst_list_iterator_next), (gst_list_iterator_resync),
4451         (gst_list_iterator_free), (gst_iterator_new_list),
4452         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4453         (gst_iterator_free), (gst_iterator_push), (filter_next),
4454         (filter_resync), (filter_uninit), (filter_free),
4455         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4456         (gst_iterator_foreach), (find_custom_fold_func),
4457         (gst_iterator_find_custom):
4458         * gst/gstiterator.h:
4459         Added missing files.
4460
4461 2005-03-07  Wim Taymans  <wim@fluendo.com>
4462
4463         * Makefile.am:
4464         * configure.ac:
4465         * docs/design/part-MT-refcounting.txt:
4466         * docs/design/part-conventions.txt:
4467         * docs/design/part-gstobject.txt:
4468         * docs/design/part-relations.txt:
4469         * examples/mixer/mixer.c: (main):
4470         * examples/thread/thread.c: (eos), (main):
4471         * gst/Makefile.am:
4472         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4473         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4474         (gst_spider_plug_from_srcpad):
4475         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4476         (gst_spider_identity_change_state),
4477         (gst_spider_identity_sink_loop_type_finding):
4478         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4479         * gst/elements/gstidentity.c: (gst_identity_init):
4480         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4481         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4482         * gst/elements/gsttypefindelement.c: (free_entry):
4483         * gst/gst.c:
4484         * gst/gst.h:
4485         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4486         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4487         (gst_bin_set_index), (gst_bin_set_element_sched),
4488         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4489         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4490         (gst_bin_iterate_elements), (iterate_child_recurse),
4491         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4492         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4493         (compare_interface), (gst_bin_get_by_interface),
4494         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4495         * gst/gstbin.h:
4496         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4497         (gst_buffer_default_free), (gst_buffer_default_copy),
4498         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4499         (gst_buffer_create_sub):
4500         * gst/gstbuffer.h:
4501         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4502         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4503         (gst_caps_unref), (gst_static_caps_get),
4504         (gst_caps_remove_and_get_structure), (gst_caps_append),
4505         (gst_caps_append_structure), (gst_caps_remove_structure),
4506         (gst_caps_copy_nth), (gst_caps_set_simple),
4507         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4508         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4509         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4510         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4511         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4512         (gst_caps_structure_figure_out_union),
4513         (gst_caps_switch_structures), (gst_caps_do_simplify),
4514         (gst_caps_replace), (gst_caps_from_string),
4515         (gst_caps_copy_conditional):
4516         * gst/gstcaps.h:
4517         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4518         (_gst_clock_id_free), (gst_clock_id_unref),
4519         (gst_clock_id_compare_func), (gst_clock_id_wait),
4520         (gst_clock_id_wait_async), (gst_clock_class_init),
4521         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4522         (gst_clock_get_time), (gst_clock_set_time_adjust),
4523         (gst_clock_set_property), (gst_clock_get_property):
4524         * gst/gstclock.h:
4525         * gst/gstcompat.h:
4526         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4527         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4528         * gst/gstdata.h:
4529         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4530         (gst_element_requires_clock), (gst_element_provides_clock),
4531         (gst_element_set_clock), (gst_element_clock_wait),
4532         (gst_element_wait), (gst_element_set_time_delay),
4533         (gst_element_is_indexable), (gst_element_add_pad),
4534         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4535         (pad_compare_name), (gst_element_get_static_pad),
4536         (gst_element_request_pad), (gst_element_get_request_pad),
4537         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4538         (gst_element_class_get_pad_template_list),
4539         (gst_element_class_get_pad_template), (gst_element_error_func),
4540         (gst_element_get_random_pad), (gst_element_get_event_masks),
4541         (gst_element_send_event), (gst_element_seek),
4542         (gst_element_get_query_types), (gst_element_query),
4543         (gst_element_get_formats), (gst_element_convert),
4544         (gst_element_is_locked_state), (gst_element_set_locked_state),
4545         (gst_element_sync_state_with_parent), (gst_element_change_state),
4546         (gst_element_finalize), (gst_element_yield),
4547         (gst_element_interrupt), (gst_element_set_scheduler),
4548         (gst_element_get_scheduler), (gst_element_set_loop_function):
4549         * gst/gstelement.h:
4550         * gst/gstevent.h:
4551         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4552         (gst_format_get_by_nick), (gst_format_get_details),
4553         (gst_format_iterate_definitions):
4554         * gst/gstformat.h:
4555         * gst/gstindex.c: (gst_index_gtype_resolver):
4556         * gst/gstinfo.c:
4557         * gst/gstinfo.h:
4558         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4559         (gst_mem_chunk_free):
4560         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4561         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4562         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4563         (gst_object_dispatch_properties_changed),
4564         (gst_object_set_name_default), (gst_object_set_name),
4565         (gst_object_get_name), (gst_object_set_name_prefix),
4566         (gst_object_get_name_prefix), (gst_object_set_parent),
4567         (gst_object_get_parent), (gst_object_unparent),
4568         (gst_object_check_uniqueness), (gst_object_save_thyself),
4569         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4570         (gst_object_set_property), (gst_object_get_property),
4571         (gst_object_get_path_string):
4572         * gst/gstobject.h:
4573         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4574         (gst_real_pad_init), (gst_real_pad_get_property),
4575         (gst_pad_custom_new), (gst_pad_get_direction),
4576         (gst_pad_set_active), (gst_pad_is_active),
4577         (gst_pad_set_event_function), (gst_pad_is_linked),
4578         (gst_pad_link_free), (gst_pad_link_intersect),
4579         (gst_pad_link_fixate), (gst_pad_set_caps),
4580         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4581         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4582         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4583         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4584         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4585         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4586         (gst_pad_realize), (gst_pad_get_allowed_caps),
4587         (gst_real_pad_dispose), (gst_real_pad_finalize),
4588         (gst_pad_collectv), (gst_pad_collect_valist),
4589         (gst_pad_template_dispose), (gst_pad_template_new),
4590         (gst_pad_get_internal_links):
4591         * gst/gstpad.h:
4592         * gst/gstpipeline.c: (gst_pipeline_dispose),
4593         (gst_pipeline_change_state):
4594         * gst/gstpipeline.h:
4595         * gst/gstplugin.c:
4596         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4597         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4598         * gst/gstpluginfeature.h:
4599         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4600         * gst/gstquery.c: (_gst_query_type_initialize),
4601         (gst_query_type_register), (gst_query_type_get_by_nick),
4602         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4603         * gst/gstquery.h:
4604         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4605         * gst/gstscheduler.c: (gst_scheduler_add_element),
4606         (gst_scheduler_factory_create):
4607         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4608         (gst_structure_free), (gst_structure_set_name),
4609         (gst_structure_id_set_value), (gst_structure_set_value),
4610         (gst_structure_set_valist), (gst_structure_remove_field),
4611         (gst_structure_remove_fields),
4612         (gst_structure_remove_fields_valist),
4613         (gst_structure_remove_all_fields), (gst_structure_foreach),
4614         (gst_structure_map_in_place),
4615         (gst_caps_structure_fixate_field_nearest_int),
4616         (gst_caps_structure_fixate_field_nearest_double):
4617         * gst/gststructure.h:
4618         * gst/gstsystemclock.c: (gst_system_clock_class_init),
4619         (gst_system_clock_init), (gst_system_clock_dispose),
4620         (gst_system_clock_async_thread),
4621         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
4622         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
4623         * gst/gstsystemclock.h:
4624         * gst/gsttag.c: (gst_tag_list_add_value_internal),
4625         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
4626         * gst/gsttaginterface.c:
4627         * gst/gstthread.c: (gst_thread_dispose),
4628         (gst_thread_release_children_locks), (gst_thread_change_state),
4629         (gst_thread_main_loop):
4630         * gst/gsttrashstack.h:
4631         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
4632         * gst/gsttypes.h:
4633         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4634         (gst_element_request_pad), (gst_element_get_pad_from_template),
4635         (gst_element_request_compatible_pad),
4636         (gst_element_get_compatible_pad_filtered),
4637         (gst_element_get_compatible_pad), (gst_element_state_get_name),
4638         (gst_element_link_pads_filtered), (gst_element_link_filtered),
4639         (gst_element_link_many), (gst_element_link),
4640         (gst_element_link_pads), (gst_element_unlink_pads),
4641         (gst_element_unlink_many), (gst_element_unlink),
4642         (gst_pad_can_link_filtered), (gst_pad_can_link),
4643         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
4644         (gst_object_default_error), (gst_bin_add_many),
4645         (gst_bin_remove_many), (gst_element_populate_std_props),
4646         (gst_element_class_install_std_props), (gst_buffer_merge),
4647         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
4648         (link_fold_func), (gst_pad_proxy_setcaps):
4649         * gst/gstutils.h:
4650         * gst/gstvalue.c: (gst_value_deserialize_string):
4651         * gst/parse/grammar.y:
4652         * gst/schedulers/gstbasicscheduler.c:
4653         (gst_basic_scheduler_cothreaded_chain),
4654         (gst_basic_scheduler_chain_recursive_add),
4655         (gst_basic_scheduler_pad_link):
4656         * gst/schedulers/gstoptimalscheduler.c:
4657         (get_group_schedule_function),
4658         (gst_opt_scheduler_state_transition),
4659         (gst_opt_scheduler_add_element), (element_get_reachables_func):
4660         * libs/gst/bytestream/bytestream.c:
4661         * libs/gst/dataprotocol/dataprotocol.c:
4662         (gst_dp_header_from_buffer):
4663         * po/nb.po:
4664         * po/ru.po:
4665         * tests/threadstate/threadstate2.c: (eos):
4666         * tools/gst-compprep.c: (main):
4667         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
4668         (print_pad_info), (print_children_info):
4669         * tools/gst-launch.c: (idle_func), (main):
4670         * tools/gst-md5sum.c: (idle_func), (main):
4671         * tools/gst-xmlinspect.c: (print_element_info):
4672         First THREADED backport attempt, focusing on adding locks and
4673         making sure the API is threadsafe. Needs more work. More docs
4674         follow this week.
4675
4676 2005-02-24  Andy Wingo  <wingo@pobox.com>
4677
4678         * tests/bench-complexity.scm:
4679         * tests/complexity.gnuplot: New files, good for running complexity
4680         benchmarks.
4681
4682         * tests/Makefile.am:
4683         * tests/complexity.c: New test, sets up N elements, at each level
4684         teeing into M streams per element. Eeeenteresting.
4685
4686         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
4687         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
4688         running bench-mass_elements.scm.
4689
4690         * tests/bench-mass_elements.scm: New script, runs mass_elements
4691         for various numbers of identities, outputting the results to a
4692         file. Requires guile 1.6. Just for testing.
4693
4694 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4695
4696         * gst/schedulers/fairscheduler.c:
4697           compile with debug disabled
4698
4699 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
4700
4701         * configure.ac:
4702           hunting season on 0.9 is now OPEN
4703
4704 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
4705
4706         * docs/libs/tmpl/gstcontrol.sgml:
4707         * docs/libs/tmpl/gstdparam.sgml:
4708         * docs/libs/tmpl/gstdplinint.sgml:
4709         * docs/libs/tmpl/gstdpman.sgml:
4710         * docs/libs/tmpl/gstdpsmooth.sgml:
4711         * docs/libs/tmpl/gstunitconvert.sgml:
4712           more docs for the state of dparams
4713
4714 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4715
4716         * gst/gstelementfactory.c: (gst_element_factory_create):
4717         * gst/gstobject.c: (gst_object_init),
4718         (gst_object_set_name_default), (gst_object_set_name):
4719           name objects by default, not in gst_element_factory_create. Allows
4720           using elements created with g_object_new. (fixes #167283)
4721
4722 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4723
4724         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
4725           make the time that debugging functions print relative to when
4726           gst_init was called
4727
4728 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
4729
4730         * gst/gsttaginterface.c:
4731           Fix inline docs: tag setter vararg functions are NULL-terminated,
4732           GST_TAG_INVALID doesn't exist any more.
4733
4734 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4735
4736         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
4737         Allocate the 1 byte more memory that was forgotten!!!!!
4738         fixes memory corruption on 64bit platforms
4739
4740 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
4741
4742         * docs/pwg/building-pads.xml:
4743         * docs/pwg/intro-basics.xml:
4744           fixed a few typos, relabeled introductionary list of types
4745         * docs/random/ensonic/dparams.txt:
4746           more notes abut dparam changes
4747         * libs/gst/control/dparam.c: (gst_dparam_attach):
4748         * libs/gst/control/dparammanager.c:
4749         * libs/gst/control/dparammanager.h:
4750           - many comments and notes on dparam implementation
4751           - new dparams are were not initialized to the default value
4752             from param spec
4753
4754 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
4755
4756         submitted by: Peter Astakhov
4757
4758         * po/LINGUAS:
4759         * po/ru.po:
4760           adding Russian translation
4761
4762 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4763
4764         * configure.ac:
4765         * docs/gst/Makefile.am:
4766         * docs/libs/Makefile.am:
4767           make sure popt is added to gtk-doc flags.  Fixes #147782.
4768
4769 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
4770
4771         * docs/faq/using.xml:
4772           Fix typo in FAQ (artssink => artsdsink)
4773
4774 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4775
4776         * tools/gst-launch.1.in:
4777           Fix typo (#166699).
4778
4779 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
4780
4781         * docs/faq/using.xml:
4782           Add -v argument to fakesrc/fakesink gst-launch line,
4783           so that the promised output will actually show up.
4784
4785 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4786
4787         * gst/gstthread.c: (gst_thread_change_state):
4788           Implement state-change error handling (#166073).
4789
4790 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4791
4792         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4793           Release interrupt after handling (#166250).
4794
4795 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4796
4797         * configure.ac:
4798           back to HEAD
4799
4800 === release 0.8.9 ===
4801
4802 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4803
4804         * NEWS:
4805         * RELEASE:
4806         * configure.ac:
4807           releasing 0.8.9, "Like Eating Glass"
4808
4809 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4810
4811         submitted by: Clytie Siddall
4812
4813         * po/vi.po: Added Vietnamese translation
4814
4815 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4816
4817         patch by: Tim Philipp-Müller
4818
4819         * configure.ac:
4820         * gst/gstpad.c:
4821           unref data when probe function returns FALSE.  Fixes #166362
4822
4823 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4824
4825         * gst/gst.c: (gst_init_get_popt_table):
4826           Fix typo (#166269).
4827
4828 2005-02-04  Andy Wingo  <wingo@pobox.com>
4829
4830         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
4831         the debugging on whether the caps are compatible.
4832
4833 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4834
4835         * docs/manual/basics-elements.xml:
4836           Fix two typos.
4837
4838 2005-02-02  Wim Taymans  <wim@fluendo.com>
4839
4840         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
4841         (schedule_chain), (get_invalid_call), (chain_invalid_call),
4842         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
4843         Remove some FIXMEs after analysing and commenting why they
4844         are not issues.
4845
4846 2005-02-02  Wim Taymans  <wim@fluendo.com>
4847
4848         * gst/schedulers/gstoptimalscheduler.c:
4849         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
4850         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
4851         (get_invalid_call), (chain_invalid_call),
4852         (get_group_schedule_function), (loop_group_schedule_function),
4853         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
4854         (gst_opt_scheduler_state_transition),
4855         (gst_opt_scheduler_add_element),
4856         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
4857         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
4858         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
4859         (gst_opt_scheduler_show):
4860         Added lock to protect scheduler data structures.
4861
4862 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4863
4864         * testsuite/threads/threadi.c: (cb_data):
4865           Fix buglet in test.
4866
4867 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4868
4869         * testsuite/threads/Makefile.am:
4870         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
4871           On Wim's request, split the test in three separately-compiled
4872           tests that each test a very specific bug. Two of them still fail,
4873           will create bugs for those. threadi.c indicates why they fail.
4874
4875 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4876
4877         * gst/schedulers/gstoptimalscheduler.c:
4878         (get_group_schedule_function):
4879           Try to work with the threading mess that queue_link is.
4880
4881 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4882
4883         * gst/gstbin.c: (gst_bin_remove_func):
4884           Explicitely make an element release locks in a group when being
4885           remove from a bin.
4886         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4887           If there's no scheduler, always return immediately (similar to
4888           gst_element_interrupt).
4889
4890 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4891
4892         * gst/gstbin.c: (gst_bin_child_state_change_func):
4893           Remove a piece of code that could never be reached.
4894         * docs/gst/gstreamer-sections.txt:
4895         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
4896         (gst_pad_call_get_function):
4897         * gst/gstpad.h:
4898         * testsuite/pad/Makefile.am:
4899           Fix #150546, enable tests.
4900
4901 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4902
4903         * docs/pwg/advanced-types.xml:
4904           Fix description for buffer-frames=0.
4905         * docs/gst/tmpl/gstbin.sgml:
4906         * gst/gstbin.c: (gst_bin_child_state_change_func),
4907         (gst_bin_change_state), (gst_bin_change_state_norecurse):
4908         * gst/gstbin.h:
4909         * testsuite/threads/Makefile.am:
4910         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
4911         (cb_state), (cb_play), (main):
4912           Fix non-recursive state changes to *really* change the state
4913           of the object, and not just call parent_class->state_change.
4914           Fix a lot of lockups caused by this. Fixes #132775. Add test
4915           for the problem. Also enable test to show #142588 (fixed).
4916         * gst/gstthread.c: (gst_thread_change_state),
4917         (gst_thread_child_state_change):
4918           Don't exit the thread if we go to NULL and are inside thread
4919           context. Instead, return control to the main thread context
4920           and exit from there.
4921         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
4922           Don't unset virtual functions, since those may still be used.
4923           That's not necessarily correct, but suffices for now.
4924         * configure.ac:
4925         * testsuite/Makefile.am:
4926         * testsuite/pad/Makefile.am:
4927         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
4928         (gst_test_sink_base_init), (gst_test_sink_chain),
4929         (gst_test_sink_init), (main):
4930         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
4931         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
4932         (main):
4933         * testsuite/pad/link.c: (gst_test_element_class_init),
4934         (gst_test_element_base_init), (gst_test_src_get),
4935         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
4936         (gst_test_filter_loop), (gst_test_filter_init),
4937         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
4938         (cb_error), (main):
4939           Add tests to show #150546. Pass, but should fail (currently
4940           disabled from the testsuite).
4941         * gst/gstscheduler.c: (gst_scheduler_dispose):
4942           Dereference child schedulers on dispose (#94464).
4943         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
4944           Fix typo.
4945         * testsuite/threads/thread.c: (main):
4946           Add more debug.
4947
4948 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4949
4950         * gst/gstpad.c: (gst_pad_push):
4951           Oops, revert previous commit, broke testsuite...
4952
4953 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4954
4955         * gst/gstpad.c: (gst_pad_push):
4956           Add check that the pad on which the push is performed is not a
4957           get-based pad (#150546).
4958
4959 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4960
4961         * gst/elements/gsttypefindelement.c:
4962         (gst_type_find_element_handle_event):
4963           Fix buffer pushing if stream EOSes during typefinding.
4964
4965 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
4966
4967         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4968
4969         * gst/gstvalue.c: (gst_string_wrap):
4970           Allow NULL-strings as argument (#165365).
4971
4972 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
4973
4974         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4975
4976         * gst/schedulers/faircothreads.c:
4977         (gst_fair_scheduler_cothread_queue_show):
4978           Fix build without debug enabled.
4979
4980 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
4981
4982         * docs/gst/gstreamer-sections.txt:
4983         * docs/libs/gstreamer-libs-docs.sgml:
4984         * docs/libs/gstreamer-libs-sections.txt:
4985         * docs/libs/tmpl/gstcontrol.sgml:
4986         * docs/libs/tmpl/gstdparam.sgml:
4987         * docs/libs/tmpl/gstdplinint.sgml:
4988         * docs/libs/tmpl/gstdpman.sgml:
4989         * docs/libs/tmpl/gstdpsmooth.sgml:
4990         * docs/libs/tmpl/gstputbits.sgml:
4991         * docs/libs/tmpl/gstunitconvert.sgml:
4992         * libs/gst/control/dparam.c:
4993         * libs/gst/control/dparam.h:
4994         * libs/gst/control/dparammanager.c:
4995         (gst_dpman_add_required_dparam_callback),
4996         (gst_dpman_add_required_dparam_direct),
4997         (gst_dpman_add_required_dparam_array),
4998         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
4999         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
5000         (gst_dpman_get_manager)
5001           restructured DParam docs
5002
5003 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
5004
5005         * gst-element-check.m4:
5006           Only check for gst-inspect if we haven't already
5007           found it in previous element check runs
5008
5009 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
5010
5011         * docs/gst/Makefile.am:
5012         * docs/libs/Makefile.am:
5013           fixed install rules to treat style.css as optional
5014
5015 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5016
5017         * docs/gst/Makefile.am:
5018         * docs/libs/Makefile.am:
5019           install style.css along with docs
5020         * docs/gst/tmpl/gstbin.sgml:
5021         * docs/gst/tmpl/gstclock.sgml:
5022         * docs/gst/tmpl/gstdata.sgml:
5023         * docs/gst/tmpl/gstelement.sgml:
5024         * gst/gstbin.h:
5025         * gst/gstelement.c: (gst_element_class_init):
5026         * gst/gstelement.h:
5027           fixing incomplete docs
5028
5029 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5030
5031         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5032           Don't unref seek event twice when fflush() fails
5033           
5034 2005-01-22  David Schleef  <ds@schleef.org>
5035
5036         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5037
5038 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5039
5040         * docs/gst/Makefile.am:
5041         * docs/libs/Makefile.am:
5042           added params for deprecation guards
5043         * gst/gst.c:
5044         * gst/gst.h:
5045         * gst/gsterror.c: (_gst_resource_errors_init),
5046         (_gst_stream_errors_init):
5047         * gst/gsterror.h:
5048           documented some more enums
5049
5050 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5051         * gst/autoplug/gstspideridentity.c:
5052         Cosmetic fix - spider_find_peek should be static
5053         * gst/parse/parse.l:
5054         Applying fix for #164261
5055
5056 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5057
5058         * docs/gst/gstreamer-sections.txt:
5059         * docs/gst/tmpl/gstplugin.sgml:
5060         * docs/libs/gstreamer-libs-sections.txt:
5061         * docs/libs/tmpl/gstcontrol.sgml:
5062         * gst/gstbuffer.h:
5063         * gst/gsttag.h:
5064         * gst/gstvalue.c:
5065           added docs for the TAG defines
5066
5067 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5068
5069         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5070           Only unref entry if there is an entry.
5071
5072 2005-01-17  Wim Taymans  <wim@fluendo.com>
5073
5074         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5075         (remove_from_group), (schedule_group), (normalize_group),
5076         (gst_opt_scheduler_iterate):
5077         Also ref/unref decoupled elements before iterating the
5078         group since they are not added to the list of elements.
5079
5080 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5081
5082         * docs/manual/highlevel-components.xml:
5083           Add subtitle/streamselection as new features to playbin.
5084
5085 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5086
5087         * docs/manual/manual.xml:
5088           Re-enable dataaccess docs (oops).
5089
5090 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5091
5092         * docs/pwg/advanced-types.xml:
5093         * docs/random/mimetypes:
5094           Add documentation on libsndfile types (#163309), by Steve Baker
5095           <steve@stevebaker.org>.
5096         * gst/gstelement.c: (gst_element_release_request_pad):
5097           If an element has no explicit function, just remove the pad.
5098
5099 2005-01-17  Luca Ognibene  <luogni@tin.it>
5100
5101         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5102
5103         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5104           Fix memleak (#163801).
5105
5106 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5107
5108         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5109           I think this is actually more correct...
5110
5111 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5112
5113         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5114           Another workaround for memory access while destroyed in callback.
5115           Please, someone with refcount knowledge, have a look at this.
5116
5117 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5118
5119         * docs/faq/faq.xml:
5120         * docs/faq/legal.xml:
5121           move the legal Q&A here
5122
5123 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5124
5125         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5126         (gst_tee_request_new_pad):
5127           Fix negotiation.
5128
5129 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5130
5131         * docs/random/omega/caps2:
5132         * testsuite/caps/caps_strings:
5133           replace framerate aproximations by their real value
5134           (24000/1001, 30000/1001, 60000/1001)
5135           Partially fixes bug #164049
5136
5137 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5138
5139         * docs/gst/Makefile.am:
5140           don't fail on the stupid GstPoptOption
5141
5142 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5143
5144         * gst/gstpad.h:
5145         * gst/gstprobe.c:
5146           allow probes to work on ghost pads by realizing the pad
5147           probe debugging
5148
5149 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5150
5151         * docs/gst/gstreamer-sections.txt:
5152         * docs/gst/tmpl/gstpad.sgml:
5153         * gst/gstpad.c: (gst_pad_set_active_recursive):
5154         * gst/gstpad.h:
5155           Add gst_pad_set_active_recursive().
5156
5157 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5158
5159         * docs/random/release:
5160           updates
5161         * gst/gst_private.h:
5162         * gst/gstinfo.c:
5163         * gst/gstobject.c:
5164           move deep_notify logging to a new category
5165         * gst/gstprobe.c:
5166         * gst/gstprobe.h:
5167           add stuff so bindings can wrap probes
5168
5169 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5170
5171         * gst/gstplugin.c: (gst_plugin_load):
5172           Fix plugin loading if plugin/lib was already loaded. Fixes
5173           #163383
5174
5175 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5176
5177         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5178
5179         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5180           Protect plugin loading by a mutex so it's threadsafe. Fixes
5181           #163234.
5182
5183 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5184
5185         * gst/gstevent.c: (_gst_event_copy):
5186           Reference source object when copying events, since it'll be
5187           dereferenced on event dereferencing as well.
5188
5189 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5190
5191         * docs/gst/gstreamer-sections.txt:
5192         * docs/gst/tmpl/gstevent.sgml:
5193         * gst/gstevent.c: (gst_event_new_filler_stamped),
5194         (gst_event_filler_get_duration):
5195         * gst/gstevent.h:
5196           Add two new functions for filler events (which are used to
5197           synchronize streams if one of them is not having any data
5198           for a while) without interrupting the actual data-stream.
5199           Basically a no-op.
5200         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5201         (gst_queue_link_sink), (gst_queue_link_src),
5202         (gst_queue_change_state):
5203           Allow for renegotiation while filled. Required for stream
5204           switching while playing.
5205
5206 2005-01-08  Benjamin Otte  <otte@gnome.org>
5207
5208         * gst/gstelement.c: (gst_element_link_many):
5209           fix up g_return_if_fail's
5210         * po/LINGUAS:
5211         * po/de.po:
5212           add German translation, that was somehow not included
5213
5214 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5215
5216         * docs/random/mimetypes:
5217           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5218           do not add them to riff-lib as they are not common
5219
5220 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5221
5222         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5223           Check for existence of probe after performing the probe before
5224           re-accessing it to prevent segfaults caused by removal of the
5225           probe in the callback.
5226
5227 2005-01-05  David Schleef  <ds@schleef.org>
5228
5229         * testsuite/registry/Makefile.am:
5230         * testsuite/registry/gst-print-formats.c:
5231         (print_pad_templates_info), (print_element_list),
5232         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5233         (g_list_uniqify), (get_pad_templates_info),
5234         (get_element_mime_list), (print_mime_list), (main): A little
5235         program that looks through the registry to find elements of
5236         a given type.  Not particularly interesting as a test, except
5237         that there's no other test covering the same area.
5238
5239 2005-01-05  David Schleef  <ds@schleef.org>
5240
5241         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5242         (fault_handler_sigaction), (fault_spin),
5243         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5244         in signal.h-type signal handlers by not calling forbidden functions,
5245         including gst_element_set_state().
5246
5247 2005-01-05  David Schleef  <ds@schleef.org>
5248
5249         * gst/gstvalue.h: Mark _gst_reserved[] as private
5250
5251 2005-01-05  David Schleef  <ds@schleef.org>
5252
5253         * gst/gstvalue.c: Fix doc build problem.
5254
5255 2005-01-05  David Schleef  <ds@schleef.org>
5256
5257         * gst/gstvalue.c: Add some documentation
5258
5259 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5260
5261         * docs/README:
5262           another shell oneliner for empty return value docs
5263         * gst/gstcaps.c:
5264         * gst/gstvalue.c:
5265         * libs/gst/control/dparam.c:
5266           more doc fixes (parameters and return values)
5267
5268 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5269
5270         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5271
5272         * gst/gstregistry.h:
5273         * gst/registries/gstxmlregistry.c:
5274           Fix macro's for Mingw (fixes #162276).
5275
5276 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5277
5278         * docs/README:
5279           quick shell oneliner to find undocumented members
5280         * docs/gst/tmpl/gstplugin.sgml:
5281         * docs/gst/tmpl/gstscheduler.sgml:
5282         * docs/gst/tmpl/gstthread.sgml:
5283           more enumtypes cleanup
5284         * gst/gsterror.h:
5285           activated documentation comments, now someone needs to document
5286           the enums :(
5287
5288 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5289
5290         * docs/manual/manual.xml:
5291           Add dataaccess part (doh!).
5292
5293 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5294
5295         * docs/manual/advanced-autoplugging.xml:
5296           Fix typo (intiate -> initiate).
5297
5298 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5299
5300         * docs/random/bbb/streamselection:
5301           Add some notes on how to handle multi-subtitle/-audio streams.
5302
5303 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5304
5305         * docs/gst/gstreamer-docs.sgml:
5306         * docs/gst/gstreamer-sections.txt:
5307         * docs/gst/tmpl/gstenumtypes.sgml:
5308         * docs/gst/tmpl/gsterror.sgml:
5309         * docs/gst/tmpl/gstevent.sgml:
5310         * docs/gst/tmpl/gstpad.sgml:
5311         * docs/gst/tmpl/gstpadtemplate.sgml:
5312         * docs/gst/tmpl/gstthread.sgml:
5313           removed gstenumtypes section from docs and put all the enums into
5314           their sections
5315
5316 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5317
5318         * gst/gstplugin.c:
5319           document gst_library_load a bit more (riff special case + return
5320           value if already loaded)
5321         * testsuite/bytestream/filepadsink.c:
5322           plugin name is 'gstbytestream', not 'bytestream'
5323
5324 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5325
5326         * docs/random/bbb/subtitles:
5327           Add some first mind rumblings on proper subtitle support.
5328
5329 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5330
5331         * po/ca.po:
5332         * po/sv.po:
5333           updated translations
5334
5335 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5336
5337         * docs/manual/advanced-dataaccess.xml:
5338           Add section on how to use fakesrc/fakesink/identity in your
5339           application, plus section on how to embed plugins. Also mention
5340           probes.
5341         * docs/manual/appendix-checklist.xml:
5342         * docs/manual/appendix-debugging.xml:
5343         * docs/manual/appendix-gnome.xml:
5344         * docs/manual/appendix-integration.xml:
5345           Debug -> checklist, GNOME -> integration, add sections on Linux,
5346           KDE integration and add other things useful for application
5347           development.
5348         * docs/manual/manual.xml:
5349           Remove some fixmes, update some file pointers.
5350         * docs/pwg/appendix-checklist.xml:
5351           Fix typo.
5352         * docs/pwg/building-boiler.xml:
5353           Remove ugly header and add commented fixme.
5354         * docs/pwg/pwg.xml:
5355           Add fixme.
5356         * examples/manual/Makefile.am:
5357           Add example for added docs.
5358
5359 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5360
5361         * configure.ac:
5362           back to HEAD
5363
5364 === release 0.8.8 ===
5365
5366 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5367
5368         * NEWS:
5369         * RELEASE:
5370         * configure.ac:
5371           Releasing 0.8.8, "I'll Take Care Of You"
5372
5373 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5374
5375         * configure.ac:
5376           second prerelease
5377
5378 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5379
5380         patch by: Wim Taymans
5381
5382         * gst/gstbin.c:
5383           Fix for #159852 - make iterate emission threadsafe
5384
5385 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5386
5387         * docs/faq/cvs.xml:
5388           notes about new fdo account request
5389
5390 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5391
5392         * docs/gst/gstreamer-docs.sgml:
5393         * docs/gst/tmpl/gstenumtypes.sgml:
5394         * docs/gst/tmpl/gstplugin.sgml:
5395         * docs/libs/gstreamer-libs-docs.sgml:
5396           Added missing short docs. Added ids for navigation.
5397
5398 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5399
5400         * docs/manual/advanced-autoplugging.xml:
5401         * docs/manual/advanced-schedulers.xml:
5402         * docs/manual/advanced-threads.xml:
5403           Rewrites. Remove cothreads, go a bit into opt specifically,
5404           document threads and their gotchas, and do some technical stuff
5405           on autoplugging plus add some working examples. Fixes #157395.
5406         * examples/manual/Makefile.am:
5407           Add typefind/autoplugger example (one that actually works).
5408           Remove queue example since it's a duplicate of the thread one.
5409
5410 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5411
5412         * gst/gstvalue.c: (gst_value_deserialize_string):
5413           use deprecated g_value_set_string_take_ownership to keep compatible
5414           with glib 2.2
5415
5416 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5417
5418         * gst/gstvalue.c: (gst_value_deserialize_string):
5419           revert last patch, only dom a g_utf8_validate now before accepting
5420           the string - caps parsing strips " from strings so we can't rely on
5421           them
5422         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5423           disable a test that tested the above and comment it
5424
5425 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5426
5427         Patch reviewed by David Schleef  <ds@schleef.org>
5428
5429         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5430         bug #153882)
5431         * win32/gstenumtypes.h: same
5432
5433 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5434
5435         * gst/gstpad.c: (gst_pad_query):
5436           Do query on realized pad, similar to how convert/send_event handle
5437           this. Also makes sense, since this pad belongs to the function to
5438           which this query will be sent. Fixes #158163.
5439
5440 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5441
5442         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5443
5444 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5445
5446         * docs/faq/general.xml: fix pipeline to actually work
5447
5448 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5449
5450         * gst/gstvalue.c: (gst_value_deserialize_string):
5451           check that a simple string that gets deserialized does not contain
5452           invalid characters
5453         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5454           remove a test that tested a wring behaviour
5455
5456 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5457
5458         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5459
5460         * docs/manual/intro-motivation.xml:
5461           Fix typos.
5462
5463 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5464
5465         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5466
5467         * docs/gst/tmpl/gstprobe.sgml:
5468           Fix documentation of probe callback - it is supposed to return
5469           FALSE, not TRUE, to remove data from the stream (#159087).
5470
5471 2004-12-16  Daniel Gazard  <dany42@free.fr>
5472
5473         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5474
5475         * gst/gstelementfactory.c: (gst_element_factory_create):
5476           Fix compile failure if compiling without libxml2 support (#149936).
5477
5478 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5479
5480         * docs/manual/advanced-autoplugging.xml:
5481         * docs/manual/highlevel-components.xml:
5482           Move spider from autoplugging to components. Autoplugging is for
5483           internals, not for solutions. ;-).
5484
5485 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5486
5487         * docs/random/ds/0.9-suggested-changes:
5488           Make note on device/location/uri property names.
5489
5490 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5491
5492         * docs/manual/advanced-autoplugging.xml:
5493         * docs/manual/advanced-clocks.xml:
5494         * docs/manual/advanced-interfaces.xml:
5495         * docs/manual/advanced-metadata.xml:
5496         * docs/manual/advanced-position.xml:
5497         * docs/manual/advanced-schedulers.xml:
5498         * docs/manual/advanced-threads.xml:
5499         * docs/manual/appendix-gnome.xml:
5500         * docs/manual/appendix-programs.xml:
5501         * docs/manual/appendix-quotes.xml:
5502         * docs/manual/autoplugging.xml:
5503         * docs/manual/basics-bins.xml:
5504         * docs/manual/basics-data.xml:
5505         * docs/manual/basics-elements.xml:
5506         * docs/manual/basics-helloworld.xml:
5507         * docs/manual/basics-init.xml:
5508         * docs/manual/basics-pads.xml:
5509         * docs/manual/basics-plugins.xml:
5510         * docs/manual/bins-api.xml:
5511         * docs/manual/bins.xml:
5512         * docs/manual/buffers-api.xml:
5513         * docs/manual/buffers.xml:
5514         * docs/manual/clocks.xml:
5515         * docs/manual/components.xml:
5516         * docs/manual/cothreads.xml:
5517         * docs/manual/debugging.xml:
5518         * docs/manual/dparams-app.xml:
5519         * docs/manual/dynamic.xml:
5520         * docs/manual/elements-api.xml:
5521         * docs/manual/elements.xml:
5522         * docs/manual/factories.xml:
5523         * docs/manual/gnome.xml:
5524         * docs/manual/goals.xml:
5525         * docs/manual/helloworld.xml:
5526         * docs/manual/helloworld2.xml:
5527         * docs/manual/highlevel-components.xml:
5528         * docs/manual/highlevel-xml.xml:
5529         * docs/manual/init-api.xml:
5530         * docs/manual/intro-basics.xml:
5531         * docs/manual/intro-motivation.xml:
5532         * docs/manual/intro-preface.xml:
5533         * docs/manual/intro.xml:
5534         * docs/manual/links-api.xml:
5535         * docs/manual/links.xml:
5536         * docs/manual/manual.xml:
5537         * docs/manual/motivation.xml:
5538         * docs/manual/pads-api.xml:
5539         * docs/manual/pads.xml:
5540         * docs/manual/plugins-api.xml:
5541         * docs/manual/plugins.xml:
5542         * docs/manual/programs.xml:
5543         * docs/manual/queues.xml:
5544         * docs/manual/quotes.xml:
5545         * docs/manual/schedulers.xml:
5546         * docs/manual/states-api.xml:
5547         * docs/manual/states.xml:
5548         * docs/manual/threads.xml:
5549         * docs/manual/typedetection.xml:
5550         * docs/manual/win32.xml:
5551         * docs/manual/xml.xml:
5552           Try 2. This time, include a short preface as a "general
5553           introduction", also add code blocks around all code samples
5554           so they get compiled. We still need a way to tell readers
5555           the filename of the code sample. In some cases, don't show
5556           all code in the documentation, but do include it in the generated
5557           code. This allows for focussing on specific bits in the docs,
5558           while still having a full test application available.
5559         * examples/manual/Makefile.am:
5560           Fix up examples for new ADM. Add several of the new examples that
5561           were either added or were missing from the build system.
5562         * examples/manual/extract.pl:
5563           Allow nameless blocks.
5564
5565 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5566
5567         * docs/manual/elements-api.xml:
5568         * docs/manual/helloworld.xml:
5569         * examples/manual/extract.pl:
5570           fix last example.  Add example of adding code blocks that are not
5571           shown in docbook output.
5572
5573 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5574
5575         * docs/manual/dynamic.xml:
5576         * docs/manual/elements-api.xml:
5577         * docs/manual/gnome.xml:
5578         * docs/manual/helloworld2.xml:
5579         * docs/manual/init-api.xml:
5580         * docs/manual/queues.xml:
5581         * docs/manual/threads.xml:
5582         * docs/manual/xml.xml:
5583         * examples/manual/extract.pl:
5584           Make it possible to extract example code from separate blocks.
5585           Should make Ronald happy.
5586
5587 2004-12-15  Wim Taymans  <wim@fluendo.com>
5588
5589         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5590         (remove_from_group), (group_elements_set_visited),
5591         (normalize_group), (gst_opt_scheduler_iterate):
5592         Fix bug where a flag was not updated on a decoupled entry point 
5593         because we were just checking the group element list and decoupled
5594         elements are not in that list..
5595
5596 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5597
5598         * docs/manual/advanced-autoplugging.xml:
5599         * docs/manual/advanced-clocks.xml:
5600         * docs/manual/advanced-dparams.xml:
5601         * docs/manual/advanced-interfaces.xml:
5602         * docs/manual/advanced-metadata.xml:
5603         * docs/manual/advanced-position.xml:
5604         * docs/manual/advanced-schedulers.xml:
5605         * docs/manual/advanced-threads.xml:
5606         * docs/manual/appendix-debugging.xml:
5607         * docs/manual/appendix-gnome.xml:
5608         * docs/manual/appendix-programs.xml:
5609         * docs/manual/appendix-quotes.xml:
5610         * docs/manual/appendix-win32.xml:
5611         * docs/manual/autoplugging.xml:
5612         * docs/manual/basics-bins.xml:
5613         * docs/manual/basics-data.xml:
5614         * docs/manual/basics-elements.xml:
5615         * docs/manual/basics-helloworld.xml:
5616         * docs/manual/basics-init.xml:
5617         * docs/manual/basics-pads.xml:
5618         * docs/manual/basics-plugins.xml:
5619         * docs/manual/bins-api.xml:
5620         * docs/manual/bins.xml:
5621         * docs/manual/buffers-api.xml:
5622         * docs/manual/buffers.xml:
5623         * docs/manual/clocks.xml:
5624         * docs/manual/components.xml:
5625         * docs/manual/cothreads.xml:
5626         * docs/manual/debugging.xml:
5627         * docs/manual/dparams-app.xml:
5628         * docs/manual/dynamic.xml:
5629         * docs/manual/elements-api.xml:
5630         * docs/manual/elements.xml:
5631         * docs/manual/factories.xml:
5632         * docs/manual/gnome.xml:
5633         * docs/manual/goals.xml:
5634         * docs/manual/helloworld.xml:
5635         * docs/manual/helloworld2.xml:
5636         * docs/manual/highlevel-components.xml:
5637         * docs/manual/highlevel-xml.xml:
5638         * docs/manual/init-api.xml:
5639         * docs/manual/intro-motivation.xml:
5640         * docs/manual/intro-preface.xml:
5641         * docs/manual/intro.xml:
5642         * docs/manual/links-api.xml:
5643         * docs/manual/links.xml:
5644         * docs/manual/manual.xml:
5645         * docs/manual/motivation.xml:
5646         * docs/manual/pads-api.xml:
5647         * docs/manual/pads.xml:
5648         * docs/manual/plugins-api.xml:
5649         * docs/manual/plugins.xml:
5650         * docs/manual/programs.xml:
5651         * docs/manual/queues.xml:
5652         * docs/manual/quotes.xml:
5653         * docs/manual/schedulers.xml:
5654         * docs/manual/states-api.xml:
5655         * docs/manual/states.xml:
5656         * docs/manual/threads.xml:
5657         * docs/manual/typedetection.xml:
5658         * docs/manual/win32.xml:
5659         * docs/manual/xml.xml:
5660           First try at rewriting the ADM. Needs lotsamore work, but some
5661           parts might already be somewhat useful.
5662         * docs/pwg/advanced-interfaces.xml:
5663           Remove properties interface, it never actually existed (except for
5664           on my HD...).
5665
5666 2004-12-13  David Schleef  <ds@schleef.org>
5667
5668         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
5669         be NULL (bug #160220).
5670
5671 2004-12-13  David Schleef  <ds@schleef.org>
5672
5673         * configure.ac: remove all mmx stuff, because it's not used.
5674         * docs/random/ds/0.9-suggested-changes: additional notes
5675         * include/Makefile.am: we don't use these anymore
5676         * include/mmx.h: remove
5677         * include/sse.h: remove
5678
5679 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5680
5681         * docs/random/mimetypes:
5682           Add FOURCC code for h264 codec (VSSH)
5683           Add alternate FOURCC codes for h263 related codecs
5684
5685 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
5686
5687         * docs/manual/programs.xml:
5688           Added more gst-launch examples.
5689
5690 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5691
5692         * gst/gstqueue.c: (gst_queue_handle_src_query):
5693           Check for availability again.
5694
5695 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5696
5697         * gst/gstcaps.c: (gst_caps_compare_structures):
5698           Simple caps go first. This has the nice side-effect of fixing an
5699           obscure warning.
5700
5701 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5702
5703         * gst/gstversion.h.in:
5704           Protect header.
5705
5706 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5707
5708         * gst/schedulers/gstoptimalscheduler.c:
5709         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
5710         (gst_opt_scheduler_get_wrapper):
5711           When we're recursing into a chain run, only run the directly
5712           related group, not all queued ones. This will fix a possible
5713           deadlock in chains with more than two groups.
5714
5715 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5716
5717         * autogen.sh:
5718           remove patch if autopoint fails
5719
5720 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5721
5722         * docs/gst/gstreamer-sections.txt:
5723           Document Thomas' addition, fix build, make Luis the sheriff happy.
5724
5725 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5726
5727         * gst/gstplugin.c:
5728         * gst/gstplugin.h:
5729           add accessor for version field
5730
5731 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5732
5733         submitted by: Luca Ferretti <elle.uca@infinito.it>
5734
5735         * po/LINGUAS:
5736         * po/it.po:
5737           New tranlation added: Italian
5738
5739 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5740
5741         * gst/gstpad.c: (gst_pad_is_negotiated),
5742         (gst_pad_get_negotiated_caps):
5743           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
5744           it doesn't actually check the contents), so be sure to hand it
5745           a RealPad else we'll crash.
5746
5747 2004-12-03  Wim Taymans  <wim@fluendo.com>
5748
5749         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5750         (gst_queue_link), (gst_queue_handle_src_query):
5751         Reverted to 1.110 until this makes the testsuite and various
5752         apps work.
5753
5754 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
5755
5756         * docs/upload.mak: fix included CVS conflict strings
5757
5758 2004-12-01  William Jon McCann  <mccann@jhu.edu>
5759
5760         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5761
5762         * gst/gstelement.c: (gst_element_error_full):
5763           Use g_error_new_literal because error text may have
5764           percentage signs in it. Fixes #160019.
5765
5766 2004-12-01  Benjamin Otte  <otte@gnome.org>
5767
5768         * gst/elements/gstbufferstore.c:
5769         (gst_buffer_store_add_buffer_func):
5770           don't try to make subbuffers bigger than they can be. (fixes
5771           #159970)
5772
5773 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5774
5775         * docs/gst/gstreamer-sections.txt:
5776         * docs/gst/tmpl/gstvalue.sgml:
5777           Add new function to docs to fix build.
5778
5779 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5780
5781         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
5782         * gst/gstpad.c: (_gst_pad_default_fixate_value),
5783         (_gst_pad_default_fixate_foreach):
5784         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
5785         * gst/gstvalue.h:
5786           Deprecate _type_is_fixed, use _value_is_fixed instead, since
5787           in some cases (arrays), the fixedness depends on the content.
5788         * gst/gstqueue.c: (gst_queue_handle_src_query):
5789           Check for availability before doing something.
5790
5791 2004-11-29  Wim Taymans  <wim@fluendo.com>
5792
5793         * testsuite/threads/Makefile.am:
5794         * testsuite/threads/signals.c: (gst_test_get_type),
5795         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
5796         (gst_test_set_property), (gst_test_get_property),
5797         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
5798         (gst_test_do_prop), (run_thread), (main):
5799         Added a bunch of testcases that show threadsafety bugs in glib.
5800
5801 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
5802
5803         * docs/manual/programs.xml:
5804           Added a first batch of gst-launch examples, as provided by Ronald
5805           and others from the devel-mlist
5806
5807 2004-11-28  Benjamin Otte  <otte@gnome.org>
5808
5809         * gst/gstelement.c: (gst_element_negotiate_pads):
5810           simplify
5811         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
5812         (gst_value_serialize_string), (gst_value_deserialize_string):
5813           add unwrapping of previously wrapped strings. Fix bug in wrapping
5814           while at it.
5815         * testsuite/caps/value_serialize.c: (test1),
5816         (test_string_serialization), (test_string_deserialization), (main):
5817           add tests for string (de)serialization
5818
5819 2004-11-26  Wim Taymans  <wim@fluendo.com>
5820
5821         * testsuite/threads/159566.c: (object_deep_notify), (main):
5822         * testsuite/threads/Makefile.am:
5823         Added testsuite to show bug #159566
5824
5825 2004-11-25  Wim Taymans  <wim@fluendo.com>
5826
5827         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
5828         (gst_thread_child_state_change), (gst_thread_main_loop):
5829         Ref the thread object in the GThread mainloop. Break out of the
5830         thread mainloop if it holds the last ref. This properly exits
5831         the threads when disposing the thread from its own context. It
5832         also avoids possible deadlocks in the dispose function.
5833
5834 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
5835
5836         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
5837         it is necessary to wait.
5838
5839 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5840
5841         * docs/pwg/building-boiler.xml:
5842           Make description somewhat clearer.
5843
5844 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5845
5846         * docs/upload.mak:
5847           Apparently docs changed location on FDO's server.
5848
5849 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5850
5851         * docs/pwg/appendix-checklist.xml:
5852           Add some random notes on things to check when writing an element.
5853           This list can be extended as people see fit.
5854
5855 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
5856
5857         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
5858         (gst_queue_link_src): Allow for renegotiating the caps of the sink
5859         pad. The queue will now wait until it is empty and forward the new
5860         caps to the source.
5861         * gst/gstbin.c (gst_bin_set_element_sched)
5862         (gst_bin_unset_element_sched): Make sure that all elements and
5863         links are registered and unregistered with the scheduler exactly
5864         once. This elaborates on a fix by Benjamin Otte, but
5865         guarantees that decoupled elements are also registered.
5866
5867 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5868
5869         * docs/manual/quotes.xml:
5870           add a quote
5871         * configure.ac:
5872         * gst/gst.c:
5873         * gst/gstinfo.c:
5874           add LIBDIR and move init message higher up so it's at the start
5875
5876 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5877
5878         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
5879         * gstreamer.spec.in: add fair
5880
5881 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5882
5883         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5884         * gst/elements/gstidentity.c: (gst_identity_class_init):
5885           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
5886           <teuf@gnome.org> (#157263).
5887         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
5888         (gst_type_find_handle_src_query):
5889           Subtract size of internally stored data from position queries.
5890
5891 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
5892
5893         * gst/schedulers/fairscheduler.c:
5894         * gst/schedulers/faircothreads.c:
5895         * gst/schedulers/faircothreads.h:
5896         New cothread based scheduler: Fair scheduler.
5897         * gst/schedulers/gthread-cothreads.h: 
5898         Add the standard #if around the whole file.
5899         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
5900         compilation of the functions defined in this file. This is
5901         necessary to be able to use this file as a normal header.
5902         * gst/schedulers/Makefile.am: Add compiling support for fair
5903         scheduler.
5904         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
5905         scheduler cothreads layer from documentation generation.
5906
5907 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5908
5909         * gst/autoplug/gstspideridentity.c:
5910         (gst_spider_identity_sink_loop_type_finding):
5911           Don't crash if that function is not implemented.
5912
5913 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5914
5915         * docs/pwg/advanced-types.xml:
5916           Another typo.
5917
5918 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5919
5920         * docs/pwg/intro-preface.xml:
5921           Hm, ok, so the brackets weren't really useful...
5922         * docs/pwg/other-ntoone.xml:
5923           Fix embarassing typo.
5924
5925 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5926
5927         * docs/pwg/intro-preface.xml:
5928           Rewrite preface.
5929
5930 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5931
5932         * docs/pwg/advanced-scheduling.xml:
5933         * docs/pwg/advanced-tagging.xml:
5934         * docs/pwg/advanced-types.xml:
5935         * docs/pwg/building-boiler.xml:
5936         * docs/pwg/building-chainfn.xml:
5937         * docs/pwg/building-signals.xml:
5938         * docs/pwg/building-state.xml:
5939         * docs/pwg/building-testapp.xml:
5940         * docs/pwg/intro-basics.xml:
5941         * docs/pwg/other-manager.xml:
5942         * docs/pwg/other-source.xml:
5943           Typo fixes.
5944         * docs/pwg/other-manager.xml:
5945           Add some first content. No example code yet.
5946         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5947           Remove double newlines.
5948
5949 2004-11-04  Wim Taymans  <wim@fluendo.com>
5950
5951         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5952         (remove_from_group), (normalize_group), (group_migrate_connected),
5953         (gst_opt_scheduler_iterate):
5954         * testsuite/schedulers/.cvsignore:
5955         * testsuite/schedulers/Makefile.am:
5956         * testsuite/schedulers/queue_link.c: (main):
5957         Added testcase for scheduler segfault.
5958         Fix scheduler segfault when removing a decoupled
5959         entry point as the last element from a group.
5960
5961 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5962
5963         * gst/gstmarshal.list: add missing marshaller, fixes build
5964
5965 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5966
5967         * docs/random/signal: added notes about using BOXED for GstBuffer
5968         signal marshallers, not POINTER
5969
5970 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5971
5972         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5973         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
5974         POINTER=>BOXED changes to marshal GstBuffers
5975
5976 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5977
5978         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
5979         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
5980
5981 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
5982
5983         * docs/gst/gstreamer-sections.txt:
5984         * docs/gst/tmpl/gstcaps.sgml:
5985         * docs/gst/tmpl/gsterror.sgml:
5986         * docs/gst/tmpl/gstinfo.sgml:
5987         * docs/gst/tmpl/gstmacros.sgml:
5988         * docs/gst/tmpl/gstutils.sgml:
5989         * docs/random/ensonic/interfaces.txt:
5990         * gst/gstinfo.h:
5991           added some more docs, removed two obsolete defines
5992
5993 2004-11-02  Kjartan Maraas <as at gnome.org>
5994
5995         reviewed by: Wim Taymans, Ronald Bultje.
5996
5997         * gst/cothreads.c: (cothread_create):
5998         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
5999         (gst_bin_child_state_change_func):
6000         * gst/gstbuffer.c: (gst_buffer_span):
6001         * gst/gstelement.c: (gst_element_get_index),
6002         (gst_element_get_event_masks), (gst_element_get_query_types),
6003         (gst_element_get_formats):
6004         * gst/gsterror.c: (_gst_core_errors_init),
6005         (_gst_library_errors_init), (_gst_resource_errors_init),
6006         (_gst_stream_errors_init):
6007         * gst/gstobject.c: (gst_object_default_deep_notify):
6008         * gst/gstpad.c: (gst_pad_get_event_masks),
6009         (gst_pad_get_internal_links_default):
6010         * gst/gstplugin.c: (gst_plugin_register_func),
6011         (gst_plugin_get_module):
6012         * gst/gststructure.c: (gst_structure_get_string),
6013         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6014         (gst_structure_to_abbr):
6015         * gst/gstutils.c: (gst_print_element_args):
6016         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6017         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6018         Aplied part of patch #157127: Cleanup of issues reported by 
6019         sparse.
6020         Also do not try to use cothreads when there is no cothread
6021         context yet.
6022
6023 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6024
6025         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6026         (gst_opt_scheduler_iterate):
6027         Applied patch #154061. Running a pipeline in which an element 
6028         calls GST_ELEMENT_ERROR in the chain function, the opt 
6029         scheduler doesn't unref the chain so it never gets freed.
6030
6031 2004-11-02  Wim Taymans  <wim@fluendo.com>
6032
6033         * gst/gststructure.c: (gst_structure_get_abbrs),
6034         (gst_structure_from_abbr), (gst_structure_to_abbr):
6035         Remove that ugly if-then thing in the code that converts
6036         between strings and types.
6037
6038 2004-11-02  Wim Taymans  <wim@fluendo.com>
6039
6040         * gst/gstscheduler.c: (gst_scheduler_add_element),
6041         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6042         Aplied clock distribution patch, this should fix bug
6043         #148787.
6044
6045 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6046
6047         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6048
6049         * po/LINGUAS:
6050         * po/nb.po:
6051           Added Norwegian Bokmaal translation
6052
6053 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6054
6055         * tools/gst-inspect.c: (print_signal_info):
6056           print signal arguments as pointers if they are
6057
6058 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6059
6060         * docs/pwg/building-boiler.xml:
6061           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6062
6063 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6064
6065         * gst/parse/parse.l:
6066         * testsuite/parse/parse1.c: (main):
6067         Since parse can do 'element name=a:b' make 'a:b.' work as
6068         well. 
6069         Added testcase to verify fix.
6070
6071 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6072
6073         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6074         Use the realpad when printing the direction.
6075         Add extra \n when printing extensions of typefind factories.
6076
6077 2004-10-13  David Schleef  <ds@schleef.org>
6078
6079         * examples/manual/Makefile.am: $< isn't portable in Makefile
6080         rules.
6081
6082 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6083
6084         * docs/gst/tmpl/gstobject.sgml:
6085         * docs/gst/tmpl/gstplugin.sgml:
6086         * docs/gst/tmpl/gstpluginfeature.sgml:
6087         * docs/gst/tmpl/gstregistry.sgml:
6088         * docs/gst/tmpl/gstversion.sgml:
6089         * gst/gstbin.c:
6090           more api documentation
6091         * gst/gstplugin.c: (gst_plugin_register_func),
6092         (gst_plugin_check_file), (gst_plugin_load_file):
6093           better error signaling and logging
6094
6095 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6096
6097         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6098           Subtract current queue contents from position queries.
6099
6100 2004-10-11  Johan Dahlin  <johan@gnome.org>
6101
6102         * gst/gsturi.c (gst_uri_get_location): unescape string
6103         (gst_uri_construct): escape string.
6104
6105 2004-10-11  Benjamin Otte  <otte@gnome.org>
6106
6107         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6108         (gst_pad_try_set_caps_nonfixed):
6109           allow renegotiation of unconnected pads (as inside spider). Simply
6110           return OK if unconnected - mimic try_set_caps there.
6111
6112 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6113
6114         * gst/gstbin.c: (gst_bin_sync_children_state):
6115           Add missing break.
6116
6117 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6118
6119         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6120         Set element to EOS before sending EOS event
6121
6122 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6123
6124         * gst/elements/gsttypefindelement.c:
6125         (gst_type_find_element_handle_event):
6126         Handle EOS events when doing the transition from
6127         typefind to data passing. This should fix the
6128         infinite loops in short files.
6129
6130 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6131
6132         * gst/gstthread.c: (gst_thread_change_state),
6133         (gst_thread_child_state_change):
6134         Make sure no iteration happens while performing
6135         the state change as it could mess up the internal
6136         consistency of the thread state.
6137
6138 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6139
6140         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6141         (gst_thread_change_state), (gst_thread_child_state_change):
6142         Do not try to grab the iterate lock in the state change method
6143         when we are in the same thread as the iterate or else we
6144         could deadlock. Some other cleanups.
6145
6146 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6147
6148         * configure.ac:
6149           bump nano to cvs
6150
6151 === release 0.8.7 ===
6152
6153 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6154
6155         * configure.ac:
6156         * NEWS:
6157         * RELEASE:
6158         * configure.ac:
6159           releasing 0.8.7, "A Cruise"
6160
6161 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6162
6163         * docs/random/mimetypes:
6164         Add an entry for Sony ATRAC3 audio format with mime-type
6165         used by rmdemux et riff-read
6166
6167 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6168
6169         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6170         Push the buffer store instead of clearing it in case that
6171         the stream is not seekable.
6172
6173 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6174
6175         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6176         (gst_thread_main_loop):
6177         Lock the iteration and the state change so that automatic
6178         negotiation and fixation does not happen at the same time
6179         as the in stream negotiation.
6180
6181 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6182
6183         * configure.ac:
6184           bump nano to cvs
6185
6186 === release 0.8.6 ===
6187
6188 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6189
6190         * configure.ac:
6191         * NEWS:
6192         * RELEASE:
6193         * configure.ac:
6194           releasing 0.8.6, "Narc"
6195
6196 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6197
6198         * configure.ac:
6199           prerel bump
6200
6201 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6202
6203         patch by: Steve Lhomme
6204
6205         * gst/elements/gstfakesrc.c:
6206         * gst/elements/gstidentity.c:
6207         * gst/gstthread.c:
6208           Fix for #153881
6209
6210 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6211
6212         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6213         Fix threadsafety of the crc checking function.
6214
6215 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6216
6217         patch by: Ronald Bultje
6218
6219         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6220         (gst_type_find_element_handle_event),
6221         (gst_type_find_element_chain):
6222         * gst/elements/gsttypefindelement.h:
6223          #153657.
6224          Filter out discont event from seekable sources when typefind
6225          asks them to seek.  Fixes typefind with demuxers for
6226          avi, asf and matroska.
6227
6228 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6229
6230         * docs/gst/gstreamer-sections.txt:
6231         * gst/gstcaps.c:
6232         * gst/gstcaps.h:
6233         * gst/gstpad.c:
6234           Revert preferred caps: (#147789)
6235
6236 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6237
6238         * win32/dirent.c:
6239           fix a memory leak
6240
6241 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6242
6243         * configure.ac:
6244           bump for prerelease
6245
6246 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6247
6248         * docs/Makefile.am:
6249         * docs/manual/elements-api.xml:
6250           restructure so that common stuff is shown first
6251         * docs/manual/init-api.xml:
6252           convert to examples
6253         * docs/manual/manual.xml:
6254         * docs/manuals.mak:
6255         * docs/url.entities:
6256           link to API on the website, possibly override later in build
6257         * examples/manual/.cvsignore:
6258           ignore more
6259         * examples/manual/Makefile.am:
6260           add more examples
6261         * examples/manual/extract.pl:
6262           error out on failure
6263
6264 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6265
6266         * docs/gst/tmpl/gstthread.sgml:
6267         * docs/manual/init-api.xml:
6268         * examples/manual/Makefile.am:
6269           convert two code bits to examples
6270
6271 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6272
6273         * gst/gstelement.c: (gst_element_change_state):
6274           Well, actually, I was about to remove this insane assert when
6275           I noticed Wim already did that. A warning is nice so we can
6276           fix actual ugs (using --g-fatal-warnings and backtraces), so
6277           I added that instead.
6278
6279 2004-09-06  Wim Taymans  <wim@fluendo.com>
6280
6281         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6282         (gst_element_threadsafe_properties_post_run),
6283         (gst_element_set_state), (gst_element_change_state):
6284         Added extra refcounting around various places. 
6285
6286 2004-09-06  Wim Taymans  <wim@fluendo.com>
6287
6288         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6289         Fix debug info.
6290
6291 2004-09-06  Wim Taymans  <wim@fluendo.com>
6292
6293         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6294         (remove_from_group):
6295         Some more debug info.
6296
6297 2004-09-03  Wim Taymans  <wim@fluendo.com>
6298
6299         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6300         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6301         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6302         (gst_fakesrc_get), (gst_fakesrc_change_state):
6303         * gst/elements/gstfakesrc.h:
6304         * gst/elements/gstidentity.c: (gst_identity_class_init),
6305         (gst_identity_init), (gst_identity_chain),
6306         (gst_identity_set_property), (gst_identity_get_property),
6307         (gst_identity_change_state):
6308         * gst/elements/gstidentity.h:
6309         Added datarate properties to limit the datarate.
6310
6311 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6312
6313         * gst/autoplug/gstspider.c: (plugin_init):
6314           don't set a rank. We don't want to autoplug by inserting spiders.
6315
6316 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6317
6318         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6319         (gst_spider_identity_plug):
6320           add a template for spider's sink
6321         * gst/gst.c: (gst_register_core_elements):
6322           queue's rank should be NULL, we don't want spider to add it.
6323
6324 2004-08-18  David Schleef  <ds@schleef.org>
6325
6326         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6327         * docs/libs/Makefile.am: same
6328         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6329         * docs/random/ds/0.9-planning: random additions
6330         * docs/random/ds/0.9-suggested-changes: same
6331         * gst/gstxml.h: remove vestigal GstXMLNs definition
6332
6333         Preferred caps: (#147789)
6334         * docs/gst/gstreamer-sections.txt: Add symbols
6335         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6336         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6337         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6338         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6339         (gst_caps_get_preferred), (gst_caps_set_preferred),
6340         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6341         (gst_caps_use_preferred): Handle caps preferences
6342         * gst/gstcaps.h: Add caps preferences
6343         * gst/gstpad.c: (gst_pad_link_get_preferred),
6344         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6345         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6346         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6347         negotiation.
6348
6349 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6350
6351         * gst/autoplug/gstspideridentity.c:
6352         (gst_spider_identity_request_new_pad):
6353         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6354         (gst_aggregator_init):
6355         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6356         (gst_fakesink_init):
6357         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6358         (gst_fakesrc_init):
6359         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6360         (gst_fdsink_init):
6361         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6362         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6363         (gst_filesink_init):
6364         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6365         (gst_filesrc_init):
6366         * gst/elements/gstidentity.c: (gst_identity_base_init),
6367         (gst_identity_init):
6368         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6369         (gst_multifilesrc_init):
6370         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6371         (gst_pipefilter_init):
6372         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6373         (gst_statistics_init):
6374         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6375         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6376           s/gst_pad_new/&_from_template/
6377           register pad templates in the base_init function
6378           add static pad template definitions
6379
6380 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6381
6382         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6383         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6384         * testsuite/refcounting/pad.c: (main):
6385         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6386           s/gst_pad_new/&_from_template/
6387           prepare deprecation of gst_pad_new
6388
6389 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6390
6391         patch by: Luca Ognibene <skaboy81@virgilio.it>
6392
6393         * gst/gstcaps.c:
6394         * gst/gstelement.c:
6395         * gst/gstpad.c:
6396         * gst/gstxml.c:
6397           fix memleaks.  Fixes #150001
6398
6399 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6400
6401         * docs/random/ds/0.9-suggested-changes:
6402           add notes - mostly about pad templates
6403
6404 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6405
6406         * win32/GStreamer.vcproj:
6407           temporary locale files are .gmo not .mo
6408
6409 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6410
6411         * configure.ac: bump nano to cvs
6412
6413 === release 0.8.5 ===
6414
6415 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6416
6417         * configure.ac:
6418           releasing 0.8.5, "Stuttgart"
6419         * NEWS:
6420         * RELEASE:
6421         * configure.ac:
6422         * docs/random/release:
6423           updates for release
6424
6425 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6426
6427         patch by: Wim Taymans (wim@fluendo.com)
6428
6429         * gst/gstbuffer.c:
6430         * gst/gstindex.h:
6431         * libs/gst/dataprotocol/dataprotocol.c:
6432           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6433
6434 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6435
6436         * Makefile.am:
6437         * win32/MANIFEST:
6438           add win32 dir to the build.  Fixes #149981.
6439
6440 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6441
6442         * configure.ac:
6443           bump libtool versioning
6444         * gst/gststructure.c:
6445           mark function as static
6446         * po/af.po:
6447         * po/az.po:
6448         * po/ca.po:
6449         * po/cs.po:
6450         * po/en_GB.po:
6451         * po/fr.po:
6452         * po/nl.po:
6453         * po/sq.po:
6454         * po/sr.po:
6455         * po/sv.po:
6456         * po/tr.po:
6457         * po/uk.po:
6458           translations update
6459         * win32/README.txt:
6460           trademark protection
6461
6462 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6463
6464         * configure.ac:
6465           fix GST_ORIGIN
6466           set GST_PACKAGE to source, and distinguish between release and other
6467         * tools/gst-inspect.c:
6468           print out plugin an element factory is part of so we see this info
6469
6470 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6471
6472         * docs/gst/gstreamer-sections.txt:
6473         * docs/gst/tmpl/gstbuffer.sgml:
6474         * docs/gst/tmpl/gstschedulerfactory.sgml:
6475           reorder docs a little, make GstBuffer's more sensible.
6476         * gst/gstbuffer.h:
6477           API: added GST_BUFFER_FLAG_DELTA_UNIT
6478         * gst/gstscheduler.c:
6479           comment API addition
6480
6481 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6482
6483         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6484           work with non-regular files that can be mmapped (like /dev/zero)
6485         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6486           get rid of typefinds that require a seek when we can't seek instead
6487           of trying them over and over again
6488         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6489           return non-zero failure value when the pipeline was interrupted or
6490           an error occurred
6491
6492 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6493
6494         * win32/config.h:
6495         * win32/GStreamer.vcproj:
6496           compile and install the locales
6497
6498 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6499
6500         * gst/gstvalue.c:
6501           fix a possible memory leak under Windows
6502
6503 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6504
6505         * win32/GStreamer.vcproj:
6506           fix a memory leak that occured under Windows
6507         * win32/gstreamer.def:
6508           add gst_scheduler_register
6509
6510 2004-08-11  Benjamin Otte  <otte@gnome.org>
6511
6512         * docs/gst/gstreamer-sections.txt:
6513         * gst/gstscheduler.c: (gst_scheduler_register):
6514         * gst/gstscheduler.h:
6515           API:
6516           add gst_scheduler_register shortcut similar to gst_element_register
6517         * gst/schedulers/entryscheduler.c: (plugin_init):
6518         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6519         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6520           use it
6521
6522 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6523
6524         * gst/gstvalue.h:
6525           fix a memory leak that occured under Windows
6526
6527 2004-08-10  Colin Walters  <walters@redhat.com>
6528
6529         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6530         Don't use O_EXCL to open temporary registry.  It will prevent
6531         registry creation if a temporary one already exists, which
6532         is unnecessary.
6533
6534 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6535
6536         * docs/gst/gstreamer-sections.txt:
6537         * docs/gst/tmpl/gstvalue.sgml:
6538           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6539
6540 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6541
6542         * win32/gstbytestream.vcproj:
6543         * win32/gstelements.vcproj:
6544         * win32/gstgetbits.vcproj:
6545         * win32/gst-inspect.vcproj:
6546         * win32/gst-launch.vcproj:
6547         * win32/gstoptimalscheduler.vcproj:
6548         * win32/GStreamer.vcproj:
6549         * win32/gst-register.vcproj:
6550         * win32/gstspider.vcproj:
6551           update the include and lib dirs to fit standard libraries as
6552           described in the Win32 manual
6553
6554 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6555
6556         * win32/config.h:
6557         * win32/gstversion.h:
6558           enable NLS again, push the version number for the coming 0.8.5 release
6559
6560 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6561
6562         * gst/gstvalue.h:
6563           export gst_type_XXX for windows DLLs
6564
6565 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6566
6567         * docs/faq/gst-uninstalled:
6568           fix PKG_CONFIG_PATH and PYTHONPATH
6569         * gst/schedulers/Makefile.am:
6570           cleanup
6571         * libs/gst/bytestream/bytestream.c:
6572           remove newline
6573         * po/LINGUAS:
6574         * po/sq.po:
6575           adding Albanian translation (Laurent Dhima)
6576         * po/cs.po:
6577           updated
6578
6579 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6580
6581         * po/ca.po:
6582         * po/sv.po:
6583           updated translations
6584
6585 2004-08-04  Benjamin Otte  <otte@gnome.org>
6586
6587         * tests/mass_elements.c: (main):
6588           allow specifying src and sink element explicitly, so I can test
6589           videotestsrc instead of fakesrc
6590
6591 2004-08-04  Benjamin Otte  <otte@gnome.org>
6592
6593         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6594         (gst_structure_id_empty_new), (gst_structure_empty_new),
6595         (gst_structure_copy):
6596           add gst_structure_id_empty_new_with_size to allow preallocating
6597           value array sizes. Use this in gst_structure_copy to get rid of
6598           reallocs.
6599           don't do quark=>string=>quark when copying structures
6600
6601 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6602
6603         * docs/manual/win32.xml:
6604         * win32/README.txt:
6605           update documentation with the clean version of dependencies
6606
6607 2004-08-03  Benjamin Otte  <otte@gnome.org>
6608
6609         * gst/schedulers/entryscheduler.c:
6610         (gst_entry_scheduler_remove_element):
6611           fix for GST_DISABLE_DEBUG
6612         * tools/gst-launch.c: (print_tag):
6613           fixes for G_DISABLE_ASSERT
6614
6615 2004-08-03  Benjamin Otte  <otte@gnome.org>
6616
6617         * gst/gst.c: (gst_register_core_elements):
6618           fix for G_DISABLE_ASSERT
6619         * gst/gstinfo.c: (__gst_in_valgrind):
6620           add for GST_DISABLE_DEBUG
6621
6622 2004-08-03  Benjamin Otte  <otte@gnome.org>
6623
6624         * gst/parse/parse.l:
6625           fix for G_DISABLE_ASSERT
6626
6627 2004-08-03  Wim Taymans  <wim@fluendo.com>
6628
6629         * gst/gstbin.c: (gst_bin_get_type),
6630         (gst_bin_child_state_change_func):
6631         * gst/gstthread.c: (gst_thread_change_state):
6632         Backported some debug logging from a reverted patch
6633         Don't try to destroy the thread twice. Added some more
6634         debugging in GstThread. Unlock and signal even if we
6635         are in the thread context.
6636
6637 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6638
6639         * po/uk.po:
6640           updated translation
6641
6642 2004-07-30  David Schleef  <ds@schleef.org>
6643
6644         * gst/gstatomic_impl.h: Enable atomic code for x86_64
6645
6646 2004-07-29  David Schleef  <ds@schleef.org>
6647
6648         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
6649         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
6650
6651 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6652
6653         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6654         (gst_bin_add_func), (gst_bin_remove_func),
6655         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
6656         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
6657         (gst_bin_change_state_norecurse), (gst_bin_dispose),
6658         (gst_bin_sync_children_state):
6659         * gst/gstbin.h:
6660         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
6661         (gst_thread_change_state):
6662         * testsuite/states/Makefile.am:
6663           revert state change patches as agreed so we can rework them
6664           gradually
6665
6666 2004-07-29  Benjamin Otte  <otte@gnome.org>
6667
6668         * libs/gst/control/Makefile.am:
6669           link to libgstreamer (fixes Debian bug 262019, see
6670           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
6671
6672 2004-07-29  Wim Taymans  <wim@fluendo.com>
6673
6674         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6675         (check_from_fraction_convert), (transform_test), (main):
6676         Make the test less pedantic about float roundoff errors.
6677
6678 2004-07-29  Benjamin Otte  <otte@gnome.org>
6679
6680         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
6681         (gst_filesrc_srcpad_event):
6682           make seek events to before start/after end of file not fail, but
6683           seek to start/end instead
6684         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
6685           add more output
6686
6687 2004-07-29  Benjamin Otte  <otte@gnome.org>
6688
6689         * gst/gstpad.c: (gst_pad_set_explicit_caps):
6690           check that caps are fixed
6691         * gst/gstpad.c: (gst_pad_template_new):
6692           don't try to simplify caps, costs too much time on gst_init
6693         * gst/gstplugin.c: (gst_plugin_add_feature):
6694           G_ERROR if features are added twice
6695         * gst/gsttypefind.c: (gst_type_find_register):
6696         * gst/gstelementfactory.c: (gst_element_register):
6697           don't add features twice
6698         * docs/random/ds/0.9-suggested-changes:
6699           add note about possible gst_init optimization
6700
6701 2004-07-28  David Schleef  <ds@schleef.org>
6702
6703         * testsuite/elements/Makefile.am:
6704         * testsuite/elements/struct_i386.h:
6705         * testsuite/elements/struct_size.c: (main):  A little test
6706         to keep distcheck from working if someone changes a structure
6707         size accidentally.
6708
6709 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6710
6711         * docs/libs/Makefile.am:
6712         * docs/libs/gstreamer-libs-docs.sgml:
6713         * docs/libs/gstreamer-libs-sections.txt:
6714         * docs/libs/tmpl/gstbytestream.sgml:
6715         * docs/libs/tmpl/gstcontrol.sgml:
6716         * docs/libs/tmpl/gstdataprotocol.sgml:
6717         * docs/libs/tmpl/gstgetbits.sgml:
6718         * libs/gst/bytestream/Makefile.am:
6719         * libs/gst/bytestream/bytestream.c:
6720         * libs/gst/bytestream/bytestream.h:
6721         * libs/gst/control/Makefile.am:
6722         * libs/gst/dataprotocol/Makefile.am:
6723         * libs/gst/getbits/Makefile.am:
6724         * libs/gst/getbits/getbits.h:
6725           various doc and style fixes, adding bytestream to libs docs.
6726
6727 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6728
6729         * docs/gst/gstreamer-docs.sgml:
6730         * docs/libs/Makefile.am:
6731         * docs/libs/gstreamer-libs-docs.sgml:
6732         * docs/libs/gstreamer-libs-sections.txt:
6733         * libs/gst/control/dparam.c:
6734           more doc fixes.  gst-libs docs now build the same way as gst.
6735
6736 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6737
6738         * configure.ac:
6739         * testsuite/Makefile.am:
6740         * testsuite/bins/Makefile.am:
6741         * testsuite/caps/Makefile.am:
6742         * testsuite/cleanup/Makefile.am:
6743         * testsuite/clock/Makefile.am:
6744         * testsuite/debug/Makefile.am:
6745         * testsuite/dlopen/Makefile.am:
6746         * testsuite/dynparams/Makefile.am:
6747         * testsuite/elements/.cvsignore:
6748         * testsuite/elements/Makefile.am:
6749         * testsuite/enumcaps/Makefile.am:
6750         * testsuite/enumcaps/enumcaps.c:
6751         * testsuite/ghostpads/Makefile.am:
6752         * testsuite/indexers/Makefile.am:
6753         * testsuite/negotiation/Makefile.am:
6754         * testsuite/parse/Makefile.am:
6755         * testsuite/plugin/Makefile.am:
6756         * testsuite/refcounting/Makefile.am:
6757         * testsuite/schedulers/.cvsignore:
6758         * testsuite/states/Makefile.am:
6759         * testsuite/tags/Makefile.am:
6760         * testsuite/threads/Makefile.am:
6761           fold enumcaps into caps dir
6762           clean up Makefile.am's for testsuite
6763
6764 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6765
6766         * docs/gst/Makefile.am:
6767         * docs/libs/Makefile.am:
6768           clean up docs build.  Fixes needless rebuilding of template files.
6769
6770 2004-07-28  Wim Taymans  <wim@fluendo.com>
6771
6772         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
6773         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
6774         Make sure that a bin state change tries to keep the children
6775         in sync. 
6776         Added debug logging to the thread.
6777
6778 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6779
6780         * win32/GStreamer.vcproj:
6781         * win32/gstreamer.def:
6782           more exports for the plugins
6783
6784 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6785
6786         * win32/gstgetbits.vcproj:
6787         * win32/gstgetbits.def:
6788         * win32/msvc71.sln:
6789           add support for the getbits plugin
6790
6791 2004-07-27  Wim Taymans  <wim@fluendo.com>
6792
6793         * gst/gstvalue.c: (gst_value_transform_double_fraction),
6794         (gst_value_transform_fraction_double), (_gst_value_initialize):
6795         * testsuite/caps/Makefile.am:
6796         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6797         (check_from_fraction_convert), (transform_test), (main):
6798         Added transform functions between double and fraction.
6799         Added testcase to verify transforms
6800
6801 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6802
6803         * win32/GStreamer.vcproj:
6804           rename GStreamer-0.8.lib to libgstreamer.lib
6805
6806 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6807
6808         * win32/gstelements.vcproj:
6809         * win32/gstoptimalscheduler.vcproj:
6810           fixes for the Release build
6811
6812 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6813
6814         * win32/config.h:
6815           update the version number
6816
6817 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6818
6819         * win32/GStreamer.vcproj:
6820           add gstinterface to the build
6821
6822 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6823
6824         * win32/gstreamer.def:
6825           add many definitions needed by plugins,
6826           GST_CAT_DEFAULT only available in the Debug build ?
6827
6828 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6829
6830         * gst/gstelement.c: (gst_element_set_eos_recursive):
6831           various whitespace fixes.
6832           doc fix, fixes #148497
6833
6834 2004-07-25  Benjamin Otte  <otte@gnome.org>
6835
6836         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
6837           don't delay links on the sink elements, it causes unnegotiated
6838           links.
6839         * gst/elements/gsttypefindelement.c:
6840         (gst_type_find_element_base_init):
6841           add our padtemplates, we indeed do have some.
6842         * gst/elements/gsttypefindelement.c:
6843         (gst_type_find_element_handle_event),
6844         (gst_type_find_element_chain):
6845           don't push data when typefinding failed.
6846         * gst/gstpad.c: (gst_pad_link_fixate):
6847           check that no fixate function returns empty caps.
6848         * gst/gstpad.c: (gst_pad_push):
6849           check that the link is negotiated before data gets pushed.
6850         * tools/gst-register.c: (main):
6851           don't assert (fixes #148283)
6852
6853 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6854
6855         * docs/gst/gstreamer-sections.txt:
6856         * docs/gst/tmpl/gstconfig.sgml:
6857           add GST_PLUGIN_EXPORT definition
6858
6859 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6860
6861         * gst/gstplugin.h:
6862         * gst/gstconfig.h.in:
6863         * win32/gstconfig.h:
6864         * win32/gstelements.def:
6865         * win32/gstelements.vcproj:
6866         * win32/gstoptimalscheduler.def:
6867         * win32/gstoptimalscheduler.vcproj:
6868         * win32/gstspider.def:
6869         * win32/gstspider.vcproj:
6870           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
6871
6872 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6873
6874         * docs/gst/gstreamer-sections.txt:
6875           remove GST_CAT_DEFAULT because the type has changed
6876
6877 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6878
6879         * win32/gstbytestream.vcproj:
6880         * win32/gstelements.vcproj:
6881         * win32/gst-inspect.vcproj:
6882         * win32/gst-launch.vcproj:
6883         * win32/gstoptimalscheduler.vcproj:
6884         * win32/GStreamer.vcproj:
6885         * win32/gst-register.vcproj:
6886         * win32/gstspider.vcproj:
6887         * win32/msvc71.sln:
6888           Copy the files where needed after building, The testsuite will be
6889           built separately
6890
6891 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6892
6893         * win32/config.h:
6894         * win32/README.txt:
6895         * docs/manual/win32.xml:
6896         Fixed the plugin and GStreamer location
6897
6898 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6899
6900         * win32/gstreamer.def:
6901         More exports for the plugins
6902
6903 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6904
6905         * gst/gstinfo.h:
6906         Marc was right, we need to export literally GST_CAT_DEFAULT
6907
6908 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6909
6910         * win32/config.h:
6911         NLS crashes in gettext, disabled until this is solved
6912
6913 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6914
6915         * win32/gst-inspect.vcproj:
6916         * win32/gst-launch.vcproj:
6917         Should use NLS when available
6918
6919 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6920
6921         * gst/registries/gstxmlregistry.c:
6922         removing the file doesn't seem to be a good idea on Linux
6923
6924 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6925
6926         * gst/registries/gstxmlregistry.c:
6927         Remove the registry before renaming the tempfile (needed for Windows)
6928
6929 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6930
6931         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
6932         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
6933         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
6934         * gst/elements/gstmultifilesrc.h:
6935         Added newmedia property so it generates newmedia events between each
6936         file when property is set, as well as fixed eos handling
6937
6938 2004-07-22  David Schleef  <ds@schleef.org>
6939
6940         * gst/gststructure.c: (gst_structure_id_empty_new),
6941         (gst_structure_empty_new):  Set type field correctly.
6942         * gst/gststructure.h: Check type field correctly.
6943         * testsuite/caps/Makefile.am:
6944         * testsuite/caps/structure.c: (test1), (main): Add a very small
6945         test for structures.
6946
6947 2004-07-22  David Schleef  <ds@schleef.org>
6948
6949         * docs/random/ds/0.9-suggested-changes: more comments
6950         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
6951
6952 2004-07-22  Benjamin Otte  <otte@gnome.org>
6953
6954         * gst/gstelementfactory.c: (gst_element_register):
6955           set the factory in the class struct, so gst_element_get_factory
6956           actually works
6957         * gst/parse/grammar.y:
6958           set element to playing when it gets unlocked as we can't rely on the
6959           bin state - all elements in the bin state might still be locked in
6960           NULL)
6961
6962 2004-07-22  Benjamin Otte  <otte@gnome.org>
6963
6964         * gst/gstelement.c: (gst_element_set_state_func):
6965           make this a static function
6966
6967 2004-07-22  Wim Taymans  <wim@fluendo.com>
6968
6969         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6970         (gst_opt_scheduler_pad_link):
6971         fix 147894-2 and the group_link problem.
6972
6973 2004-07-22  Wim Taymans  <wim@fluendo.com>
6974
6975         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6976         (handoff_identity), (main):
6977         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6978         (handoff_identity), (main):
6979         * testsuite/schedulers/Makefile.am:
6980         * testsuite/schedulers/group_link.c: (main):
6981         Show bug in scheduler when linking chain and loop based element 
6982         where the chain based element was not yet in a group.
6983
6984 2004-07-21  Benjamin Otte  <otte@gnome.org>
6985
6986         * gst/.cvsignore:
6987         * gst/autoplug/.cvsignore:
6988         * gst/elements/.cvsignore:
6989         * gst/indexers/.cvsignore:
6990         * libs/gst/bytestream/.cvsignore:
6991         * libs/gst/control/.cvsignore:
6992         * libs/gst/getbits/.cvsignore:
6993         * testsuite/states/.cvsignore:
6994         * testsuite/threads/.cvsignore:
6995           keep this up to date, since I seem to be the only one who cares
6996           about not missing files on commits (editor's note: no you don't,
6997           but feel free to change them at the time you add stuff instead
6998           of later on)
6999
7000 2004-07-21  Benjamin Otte  <otte@gnome.org>
7001
7002         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7003         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
7004         (gst_bin_child_state_change_func), (set_kid_state_func),
7005         (gst_bin_set_state), (gst_bin_change_state_norecurse):
7006           make state changes work correctly and reentrant (so removing
7007           elements from bins during state changes of bins doesn't cause
7008           segfaults or even wrong states)
7009           add debugging category and debugging output to print children states
7010         * gst/gstbin.c: (gst_bin_dispose): 
7011           add some assertion checks
7012         * gst/gstbin.h:
7013         * gst/gstbin.c: (gst_bin_sync_children_state):
7014           deprecate this function - it just does gst_bin_set_state (bin,
7015           GST_STATE (bin)) 
7016         * testsuite/threads/queue.c: (main):
7017           don't use gst_bin_sync_children_state anymore
7018         * testsuite/states/Makefile.am:
7019         * testsuite/states/bin.c:
7020           test that the state changes of bins work as expected
7021         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7022           some adjustments to change states correctly, too
7023         * gst/gstthread.c: (gst_thread_change_state):
7024           don't enable/disable "threadsafe" properties, they're unused and
7025           cause random segfaults
7026         * testsuite/threads/Makefile.am:
7027           the queue check randomly passes now, ignore it
7028
7029 2004-07-21  Benjamin Otte  <otte@gnome.org>
7030
7031         * gst/gstpad.c:
7032           check if data is NULL before outputting debug info. (fixes #145100)
7033
7034 2004-07-21  Benjamin Otte  <otte@gnome.org>
7035
7036         * gst/schedulers/entryscheduler.c:
7037         (gst_entry_scheduler_loop_wrapper),
7038         (gst_entry_scheduler_chain_wrapper),
7039         (gst_entry_scheduler_get_wrapper):
7040           reset the state when the cothread starts, so we don't get assertion
7041           failures on restarting of cothreads
7042
7043 2004-07-20  Benjamin Otte  <otte@gnome.org>
7044
7045         * gst/gstelement.c: (gst_element_link_pads_filtered):
7046           use correct sinkpad, if only sinkpad is specified, but not srcpad
7047           (fixes #147889)
7048         * gst/gstelement.c: (gst_element_set_state_func),
7049         (gst_element_change_state): ref/unref the element, signal handlers
7050         could get rid of the element otherwise
7051
7052 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7053
7054         * docs/random/ds/0.9-suggested-changes:
7055           Make note about renaming fixed-list to array.
7056         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7057         (_gst_value_initialize):
7058           Add array intersections.
7059         * testsuite/caps/intersect2.c: (main):
7060           Add test for array intersections.
7061
7062 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7063
7064         * configure.ac: back to cvs
7065
7066 === release 0.8.4 ===
7067
7068 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7069
7070         * configure.ac:
7071           releasing 0.8.4, "Paella"
7072           bump libtool versioning
7073
7074 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7075
7076         * po/LINGUAS:
7077         * po/ca.po:
7078           adding Catalan translation (Jordi Mallach)
7079
7080 2004-07-20  Wim Taymans  <wim@fluendo.com>
7081
7082         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7083         (handoff_identity), (main):
7084         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7085         (handoff_identity), (main):
7086         * testsuite/schedulers/Makefile.am:
7087         Added failing testcase for variant of #147894
7088
7089 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7090
7091         patch by: David Moore
7092
7093         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7094         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7095         (group_migrate_connected):
7096         * testsuite/schedulers/Makefile.am:
7097           fix for #142813 (Deadlock in optimal scheduler)
7098
7099 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7100
7101         patch by: Wim Taymans
7102
7103         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7104         (gst_opt_scheduler_schedule_run_queue),
7105         (gst_opt_scheduler_get_wrapper), (get_group),
7106         (group_migrate_connected):
7107         * testsuite/schedulers/Makefile.am:
7108           fix for #147819 (Add some checks in the opt scheduler)
7109
7110 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7111
7112         patch by: Benjamin Otte
7113
7114         * gst/gstelementfactory.c: (__gst_element_details_set):
7115           fix for #147929: running gst-register in non-utf8 locale can cause
7116           invalid registry
7117
7118 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7119
7120         patch by: Wim Taymans
7121
7122         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7123         (group_has_element), (element_get_reachables_func),
7124         (group_migrate_connected):
7125           fix for #147894 (opt scheduler decoupled elements mismanagement)
7126         * testsuite/schedulers/Makefile.am:
7127           testsuite app now passes
7128
7129 2004-07-19  Wim Taymans  <wim@fluendo.com>
7130
7131         * testsuite/schedulers/147819.c: (handoff_identity1),
7132         (handoff_identity2), (main):
7133         * testsuite/schedulers/Makefile.am:
7134         Added testcase for bug 147819
7135
7136 2004-07-19  Wim Taymans  <wim@fluendo.com>
7137
7138         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7139         (handoff_identity), (main):
7140         * testsuite/schedulers/Makefile.am:
7141         Added testcase for bug 147894
7142
7143 2004-07-16  Wim Taymans  <wim@fluendo.com>
7144
7145         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7146         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7147         * testsuite/schedulers/Makefile.am:
7148         Added testsuite for bug 142183 in its two incarnations. Refcount
7149         is not increased for scheduled elements and threadsafe properties
7150         mutexes are not properly unlocked.
7151
7152 2004-07-16  Wim Taymans  <wim@fluendo.com>
7153
7154         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7155         (create_chain), (destroy_chain), (create_group), (destroy_group),
7156         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7157         (group_dec_link), (gst_opt_scheduler_pad_link),
7158         (group_inc_links_for_element), (group_migrate_connected):
7159         Call group_inc_link with the proper src->sink ordering -- 
7160         break this, and we break sort_chain. patch from wingo for bug
7161         147713.
7162         Partially revert patch 1.89. When adding a loop based element to 
7163         the scheduler, the links to other groups are automatically followed
7164         and incremented. This should not happen because the bin will call
7165         pad_link explicitly for those connection, resulting in them counted 
7166         twice. Results in assertion failure on pipeline cleanup.
7167
7168 2004-07-16  Wim Taymans  <wim@fluendo.com>
7169
7170         * testsuite/schedulers/143777-2.c: (main):
7171         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7172         (main):
7173         * testsuite/schedulers/Makefile.am:
7174         Added cleanup code to testcase 143777-2.
7175         Added testcase to show bug 147713, does not really show the
7176         deadlock as I can't figure out how to trigger it, but it does
7177         demonstrate bad ordering in the scheduler.
7178
7179 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7180
7181         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7182           change strndup to g_strndup.  Fixes #147707
7183
7184 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7185
7186         * po/af.po:
7187         * po/az.po:
7188         * po/cs.po:
7189         * po/en_GB.po:
7190         * po/fr.po:
7191         * po/nl.po:
7192         * po/sr.po:
7193         * po/sv.po:
7194         * po/tr.po:
7195         * po/uk.po:
7196           updated translations
7197
7198 2004-07-16  Benjamin Otte  <otte@gnome.org>
7199
7200         * gst/gstvalue.c: (gst_greatest_common_divisor):
7201           use ints and return ints, fractions only use ints, too, so this
7202           avoids accidently casting multiplications to unsigned
7203         (gst_value_lcopy_fraction): it's ints, not uint32
7204         (gst_value_set_fraction): disallow minint, multiplying and negation
7205           are broken with it
7206         (gst_value_fraction_multiply): fix to make large numbers work and get
7207         rid of the assumption that the multiplication of two ints fits an
7208         int64 - dunno if that's true for all systems
7209         * testsuite/caps/Makefile.am:
7210         * testsuite/caps/fraction-multiply-and-zero.c:
7211         (check_multiplication), (check_equal), (zero_test), (main):
7212           add tests for all the stuff above
7213         * testsuite/caps/value_compare.c: (test1):
7214           fix comment
7215         * tests/.cvsignore:
7216         * testsuite/caps/.cvsignore:
7217         * testsuite/debug/.cvsignore:
7218         * testsuite/dlopen/.cvsignore:
7219         * testsuite/states/.cvsignore:
7220           get up to date
7221
7222 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7223
7224         * docs/manual/bins-api.xml:
7225         * docs/manual/factories.xml:
7226         * docs/manual/helloworld.xml:
7227         * docs/manual/links-api.xml: 
7228           fixes for out of date info, incorrect info and grammar
7229
7230 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7231
7232         * docs/manual/pads.xml:
7233         * docs/manual/pads-api.xml: grammar fix
7234
7235 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7236
7237         * docs/manual/pads-api.xml: typo + grammar fix
7238
7239 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7240
7241         * docs/gst/gstreamer-sections.txt:
7242           add new symbols
7243         * docs/gst/tmpl/gstelement.sgml:
7244         * docs/gst/tmpl/gstpad.sgml:
7245         * docs/gst/tmpl/gsttypes.sgml:
7246         * docs/gst/tmpl/gstvalue.sgml:
7247           update docs
7248         * gst/gststructure.c: (gst_structure_set_valist),
7249         (gst_structure_from_abbr), (gst_structure_to_abbr):
7250         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7251         (gst_greatest_common_divisor), (gst_value_init_fraction),
7252         (gst_value_copy_fraction), (gst_value_collect_fraction),
7253         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7254         (gst_value_get_fraction_numerator),
7255         (gst_value_get_fraction_denominator),
7256         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7257         (gst_value_deserialize_fraction),
7258         (gst_value_transform_fraction_string),
7259         (gst_value_transform_string_fraction),
7260         (gst_value_compare_fraction), (_gst_value_initialize):
7261         * gst/gstvalue.h:
7262           adding GstFraction GValue type, get/set, and multiply
7263         * testsuite/caps/Makefile.am:
7264         * testsuite/caps/fraction.c: (test), (main):
7265         * testsuite/caps/string-conversions.c: (main):
7266         * testsuite/caps/value_compare.c: (test1), (main):
7267           add regression tests for GstFraction
7268
7269 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7270         
7271         * docs/manual/init-api.xml: Grammar fix
7272
7273 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7274
7275         * docs/manual/states.xml: Fix inconsistent information
7276
7277 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7278
7279         * gst/gstelement.c: (gst_element_set_state):
7280         * gst/gstpad.c: (gst_pad_try_set_caps):
7281         * gst/gststructure.c:
7282         * gst/gstthread.c: (gst_thread_child_state_change):
7283         * gst/gstvalue.c: (gst_value_compare_double):
7284         * gst/gstvalue.h:
7285         * testsuite/parse/parse1.c: (main):
7286           debugging additions and style cleanups
7287
7288 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7289
7290         * docs/manual/states.xml: Grammar fix
7291
7292 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7293
7294         * docs/manual/pads.xml: Grammar fix
7295
7296 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7297
7298         * docs/manual/elements.xml: Fixed image reference
7299
7300 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7301
7302         * docs/manual/goals.xml: Grammar fix
7303
7304 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7305
7306         * docs/manual/motivation.xml:
7307         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7308
7309 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7310
7311         * docs/manual/motivation.xml: Fix spelling
7312
7313 2004-07-15  Benjamin Otte  <otte@gnome.org>
7314
7315         * gst/gstelement.h: 
7316           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7317           strings.
7318         * gst/gstelement.c (gst_element_class_init):
7319           GError's are boxed, not objects
7320         * gst/gstmarshal.list:
7321           update list for the fixed error signal
7322
7323 2004-07-14  Andy Wingo  <wingo@pobox.com>
7324
7325         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7326         there all along, but the function wasn't. (guile-gstreamer's build
7327         system uses the address of the function -- I wasn't actually
7328         trying to use this.)
7329
7330 2004-07-14  Andy Wingo  <wingo@pobox.com>
7331
7332         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7333         as gst_pad_proxy_pad_link) just link to every other pad when they
7334         are called. In the case where the graph has cycles, this will mean
7335         that a call to try_set_caps will recurse. Allow this recursion
7336         and return OK, while we wait for the first try_set_caps to give a
7337         proper return value.
7338         (gst_pad_link_call_link_functions): Since this function is the
7339         only one to set the NEGOTIATING flag on a pad, if the flag is set
7340         it means that the link functions have indirectly recursed. If this
7341         happens, error out to avoid infinite recursion and an eventual
7342         SEGV.
7343         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7344         (gst_pad_proxy_getcaps): Intersect the result with the template
7345         caps to ensure that the return value is valid.
7346
7347 2004-07-14  Andy Wingo  <wingo@pobox.com>
7348
7349         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7350         one refcount, the calling function is the owner of the buffer.
7351
7352 2004-07-14  Wim Taymans  <wim@fluendo.com>
7353
7354         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7355         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7356         Fix stupid warning when an element is to be migrated but
7357         is already migrated.
7358
7359 2004-07-14  Wim Taymans  <wim@fluendo.com>
7360
7361         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7362         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7363         Make sure that a single non-loop-based element does not 
7364         end up in a group. This fixes the testsuite again.
7365
7366 2004-07-14  Wim Taymans  <wim@fluendo.com>
7367
7368         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7369         (add_to_group), (merge_groups), (schedule_group),
7370         (gst_opt_scheduler_get_wrapper), (group_elements),
7371         (group_dec_link), (gst_opt_scheduler_pad_link),
7372         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7373         (gst_opt_scheduler_iterate):
7374         move isolated groups to a new chain.
7375         Emit a warning instead of segfaulting in some error cases.
7376         Fix a bug where the link count between groups was not calculated 
7377         correctly. Fixes #144510.
7378
7379 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7380         * gst/elements/gstfilesrc.c:
7381           Binary files support under Windows now OK
7382       
7383 2004-07-13  Benjamin Otte  <otte@gnome.org>
7384
7385           compatibility fixes for Solaris 8/gcc 2.95
7386         * configure.ac:
7387           include libintl libs in LDFLAGS
7388         * gstvalue.c (gst_value_deserialize_buffer):
7389           cast isxdigit stuff to int to silence compiler warning
7390
7391 2004-07-12  Benjamin Otte  <otte@gnome.org>
7392
7393         * gst/gsttypes.h:
7394           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7395           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7396           just causes support madness
7397         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7398           make it work without this
7399         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7400         (gst_file_index_commit):
7401           glib IO channels don't want binary mode
7402         * testsuite/bytestream/filepadsink.c: (main):
7403         * testsuite/bytestream/test1.c: (read_param_file):
7404           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7405
7406 2004-07-12  Benjamin Otte  <otte@gnome.org>
7407
7408         * gst/gstelement.c: (gst_element_class_init),
7409         (gst_element_set_state), (gst_element_set_state_func):
7410           virutalize gst_element_set_state, use set_state member in class
7411           struct that was already added in 0.7 for this.
7412         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7413         (gst_bin_change_state):
7414           make gst_bin_foreach works similar to other foreach functions, plug
7415           memleaks in it. Make functions using it work with the new approach.
7416           Document gst_bin_foreach, so it can be exported if we want to
7417         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7418           use virtualized set_state to make set_state on bins set the state of
7419           all its children.
7420
7421 2004-07-12  Benjamin Otte  <otte@gnome.org>
7422
7423         * configure.ac:
7424           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7425           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7426         * gst/gstpad.c: (gst_pad_alloc_buffer):
7427           allow buffer_alloc functions to return NULL and allocate a normal
7428           buffer in that case
7429
7430 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7431         * gst/elements/gstfilesink.c:
7432         * gst/elements/gstfilesrc.c:
7433         * gst/indexers/gstfileindex.c:
7434         * gst/gsttypes.h:
7435         * testsuite/bytestream/filepadsink.c:
7436         * testsuite/bytestream/test1.c:
7437           Handle binary files under Windows
7438
7439 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7440         * docs/manual/win32.xml:
7441         * win32/config.h:
7442         * win32/gst-register.vcproj:
7443         * win32/gstreamer.def:
7444           Update to another gettext public build
7445
7446 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7447         * gst/gstplugin.c:
7448           Fix an impossible C syntax
7449         * win32/config.h:
7450           Disable i18n under Windows for the moment
7451         * win32/gst-register.vcproj:
7452           Use this configuration
7453
7454 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7455         * docs/manual/quotes.xml:
7456           Keep the quotes file alive
7457         * docs/random/ds/0.9-suggested-changes:
7458           Add the suggestion of including a 'rowstride' as part of video
7459           format caps
7460
7461 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7462
7463         * gst/gstelement.c: (gst_element_set_state),
7464         (gst_element_change_state):
7465           d'oh.  Set PENDING state correctly before forcing bin to change.
7466         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7467         (gst_structure_parse_fixed_list):
7468         * gst/schedulers/gstoptimalscheduler.c:
7469         (gst_opt_scheduler_state_transition):
7470         * testsuite/states/parent.c: (main):
7471           remove comment now that it's fixed.
7472
7473 2004-07-11  Benjamin Otte  <otte@gnome.org>
7474
7475         * gst/gstclock.h:
7476           GST_SECOND shouldn't cause a conversion to unsigned.
7477         * testsuite/clock/.cvsignore:
7478         * testsuite/clock/Makefile.am:
7479         * testsuite/clock/signedness.c: (main):
7480           make sure it never will again
7481
7482 2004-07-11  Andy Wingo  <wingo@pobox.com>
7483
7484         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7485         whose state is higher than the bin state, raise the bin state to
7486         ensure that bin state := highest child state.
7487         
7488 2004-07-11  Andy Wingo  <wingo@pobox.com>
7489
7490         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7491         procedure on the children of a bin. Assumes that the procedure can
7492         change the set of children.
7493         (set_kid_state_func): New static function.
7494         (gst_bin_change_state): Use gst_bin_foreach to call
7495         set_kid_state_func. Fixes a bug: if a child had a state-change
7496         handler that removes it from the bin, there would be a segfault.
7497         Hopefully it should also work in the case where the state-change
7498         handler on one child adds or removes other children. In any case,
7499         fixes should go to gst_bin_foreach.
7500
7501 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7502
7503         * gst/gstelement.c: (gst_element_set_state):
7504           compatibility fix for latest plugins release.  Change loop back
7505           to while {}
7506
7507 2004-07-09  Wim Taymans  <wim@fluendo.com>
7508
7509         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7510         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7511         (gst_thread_main_loop):
7512         Since remove is virtual in GstBin we must not assume the 
7513         elements GList to have anothing useful.
7514         Add some more logging to GstThread and be a bit more paranoid
7515         when resetting the scheduler.
7516         Set the state of the bin to NULL before removing the children.
7517
7518 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7519
7520         * testsuite/threads/Makefile.am:
7521         * testsuite/threads/threadg.c:
7522           added test to check if problem when removing all elements from a
7523           GstThread before setting GstThread state to NULL
7524
7525 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7526
7527         * docs/gst/tmpl/gstelement.sgml:
7528         * docs/gst/tmpl/gsttypes.sgml:
7529         * gst/gstbin.c: (gst_bin_change_state):
7530         * gst/gstelement.c: (gst_element_set_state),
7531         (gst_element_change_state):
7532           rework so that for bins we try to set the state on all children
7533           as well even if the bin is in the correct state already.
7534           change while to do so at least one iteration is done.
7535           For regular elements, we fall back to the previous behaviour for
7536           now since we first need a new plugins release.
7537         * testsuite/states/parent.c: (main):
7538           test for this case
7539           Fixes #123774
7540
7541 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7542
7543         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7544         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7545         (gst_queue_release_locks), (gst_queue_change_state),
7546         (gst_queue_set_property):
7547           add proper lock debugging.  Change dispose to finalize, since
7548           we're freeing mutexes and other stuff which should happen only once.
7549
7550 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7551
7552         * docs/gst/tmpl/gstelement.sgml:
7553         * docs/gst/tmpl/gstplugin.sgml:
7554         * docs/gst/tmpl/gsttypes.sgml:
7555         * docs/pwg/building-state.xml:
7556         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7557         * gst/gstelement.c: (gst_element_change_state):
7558         * gst/gstthread.c: (gst_thread_change_state):
7559           catch wrong state changes in element base class.
7560
7561 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7562
7563         * gst/gstinfo.h:
7564           clean up layout a little.
7565
7566 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7567
7568         * configure.ac:
7569         * testsuite/Makefile.am:
7570         * testsuite/states/Makefile.am:
7571         * testsuite/states/parent.c: (main):
7572           re-enable states testsuite dir.  Add test for state changes and
7573           parent behaviour
7574
7575 2004-07-09  Wim Taymans  <wim@fluendo.com>
7576
7577         * gst/schedulers/gstoptimalscheduler.c:
7578         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7579         (element_get_reachables_func), (element_get_reachables),
7580         (debug_element), (rechain_group), (group_migrate_connected),
7581         (gst_opt_scheduler_pad_unlink):
7582         Do not try to migrate decoupled elements to a new group since
7583         they are not added to groups.
7584
7585 2004-07-08  Benjamin Otte  <otte@gnome.org>
7586
7587         * gst/gstelement.c: (gst_element_error_func):
7588           make reentrant (= allow removing elements in error handler)
7589
7590 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7591
7592         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7593         (gst_pad_send_event), (gst_pad_call_chain_function):
7594           events sent to elements below PAUSED cannot be handled, so
7595           don't try to
7596
7597 2004-07-08  Wim Taymans  <wim@fluendo.com>
7598
7599         * gst/schedulers/gstoptimalscheduler.c:
7600         (chain_recursively_migrate_group), (create_group),
7601         (schedule_group), (gst_opt_scheduler_pad_link),
7602         (group_elements_set_visited), (element_get_reachables_func),
7603         (element_get_reachables), (group_can_reach_group), (debug_element),
7604         (rechain_group), (group_migrate_connected),
7605         (gst_opt_scheduler_pad_unlink):
7606         * testsuite/schedulers/Makefile.am:
7607         Implemented group splitting and rechaining.
7608         Fixes 143777 and 143777-2 in the testsuite.
7609
7610 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7611
7612         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7613           extra debugging
7614         * gst/gstevent.h:
7615         * gst/gstinfo.c: (gst_debug_log_default):
7616           print time nicely.  add thread pointer until someone figures out
7617           a completely portable way of getting at thread id's.
7618         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
7619         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
7620         (gst_pad_call_chain_function):
7621           extra debugging
7622         * gst/schedulers/gstoptimalscheduler.c:
7623         (get_group_schedule_function), (loop_group_schedule_function),
7624         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
7625         (pad_clear_queued), (gst_opt_scheduler_iterate):
7626           rename BUFPEN and friends to DATAPEN since that's what they are.
7627
7628 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7629
7630         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7631         * gst/gstbuffer.h:
7632         * gst/gstpad.c:
7633           cleanups and debugging
7634
7635 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7636
7637         * configure.ac:
7638         * gst/gstvalue.c: (gst_value_compare_enum),
7639         (gst_value_serialize_enum), (gst_value_deserialize_enum),
7640         (gst_value_can_compare), (gst_value_compare):
7641         * testsuite/Makefile.am:
7642         * testsuite/enumcaps/Makefile.am:
7643         * testsuite/enumcaps/enumcaps.c:
7644           Fix enum serialization, deserialization, comparison in caps, add
7645           a test to ensure that this continues working in the future.
7646
7647 2004-07-06  David Schleef  <ds@schleef.org>
7648
7649         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7650         Fix memleak.
7651
7652 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7653
7654         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
7655         * gst/gstplugin.h:
7656         * gst/registries/gstxmlregistry.c:
7657         (plugin_times_older_than_recurse), (plugin_times_older_than),
7658         (gst_xml_registry_parse_padtemplate):
7659           only rebuild registry when actual plugins have a newer time than
7660           the registry.  Fixes #145520
7661
7662 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7663
7664         * docs/manual/manual.xml:
7665         * docs/manual/win32.xml:
7666           add chapter on win32 building.  fixes #142422
7667
7668 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7669
7670         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
7671
7672         * gst/autoplug/gstspider.c: (gst_spider_init),
7673         (gst_spider_dispose):
7674           fix spider memleaks.  fixes #137863
7675
7676 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7677
7678         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
7679
7680         * gst/schedulers/gstoptimalscheduler.c:
7681         (gst_opt_scheduler_pad_unlink):
7682           fix SIGBUS error, fixes #145338
7683
7684 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7685
7686         * gst/gstobject.c: (gst_object_replace):
7687         * gst/gstscheduler.c: (gst_scheduler_get_clock):
7688         * gst/gstsystemclock.c: (gst_system_clock_obtain):
7689           clean up clock lifecycle.  Fixes #109831
7690
7691 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7692
7693         * po/LINGUAS:
7694         * po/cs.po:
7695           added Czech translation (Miloslav Trmac)
7696
7697 2004-07-04  David Schleef  <ds@schleef.org>
7698
7699         * tools/Makefile.am:
7700         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
7701
7702 2004-07-04  David Schleef  <ds@schleef.org>
7703
7704         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
7705
7706 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7707
7708         * gst/gstbin.c: (gst_bin_restore_thyself):
7709           chain to parent restore so the bins get restored correctly
7710           in the editor
7711
7712 2004-07-03  David Schleef  <ds@schleef.org>
7713
7714         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7715         Actually do something in these functions, like before the big
7716         caps change.  (bug #145137)
7717
7718 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7719
7720         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
7721         (gst_element_get_compatible_pad_filtered):
7722         * gst/gstthread.c: (gst_thread_main_loop):
7723           more debugging
7724
7725 2004-07-02  David Schleef  <ds@schleef.org>
7726
7727         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
7728         * gst/gstobject.h:
7729         * gst/gstparse.h:
7730         * gst/gsttrace.h:
7731         * gst/gstxml.h:
7732
7733 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7734
7735         * gst/gstpad.c: (gst_pad_check_schedulers),
7736         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7737         (gst_pad_link_prepare):
7738           revert until testsuite is fixed
7739
7740 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7741
7742         * testsuite/Makefile.am:
7743         * testsuite/caps/filtercaps.c: (main):
7744         * testsuite/clock/clock1.c: (main):
7745         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
7746           fix some more tests
7747
7748 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7749
7750         * testsuite/cleanup/cleanup1.c: (create_pipeline):
7751         * testsuite/cleanup/cleanup2.c: (create_pipeline):
7752         * testsuite/cleanup/cleanup4.c: (main):
7753           fix testsuite
7754
7755 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7756
7757         * libs/gst/control/control.c:
7758         * libs/gst/control/dparam.c:
7759         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
7760         * libs/gst/control/dparammanager.c:
7761         * libs/gst/control/dparammanager.h:
7762         * testsuite/dynparams/Makefile.am:
7763         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
7764         (gst_dptest_change_state), (gst_dptest_chain), (main):
7765           fix testcase for dparams
7766           add debugging category
7767
7768 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7769
7770         * testsuite/Rules:
7771           change path
7772
7773 2004-07-02  Benjamin Otte  <otte@gnome.org>
7774
7775         * tests/.cvsignore:
7776         * tests/Makefile.am:
7777         * tests/mass_elements.c: (gst_get_current_time), (main):
7778           add simple benchmark to test various speeds of fakesrc ! identity !
7779           identity ! ... ! fakesink.
7780           Usage: mass_elements [num_identities] [num_buffers]
7781           If not specified they default to 1000.
7782
7783 2004-07-02  Benjamin Otte  <otte@gnome.org>
7784
7785         * gst/gstpad.c: (gst_pad_check_schedulers),
7786         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7787         (gst_pad_link_prepare):
7788           check that pads that get linked belong to the same manager. The old
7789           code allowed linking elements before putting them into bins, so it
7790           worked to link them and then put them in different threads, which
7791           lead to weird behaviour.
7792           Since this effectively disallows linking elements before putting
7793           them in a bin, some applications might not work after this and error
7794           out. If these applications are too critical, we might need to revert
7795           that patch. Please test this before the next release...
7796
7797 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7798
7799         * gst/gstpad.c: (gst_pad_get_caps):
7800           throw an error if the getcaps function does not return a subset of
7801           the template caps.
7802         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
7803           make disconts without position info an error in debugging
7804         * tests/spidey_bench.c: (handoff), (main):
7805           don't count first try when averaging
7806
7807 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7808
7809         * gst/gstplugin.c: (gst_plugin_load_file):
7810           figure out problem with dynamic test
7811
7812 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7813
7814         * docs/gst/Makefile.am:
7815           fix docs build
7816
7817 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7818
7819         * po/POTFILES.in:
7820         * po/af.po:
7821         * po/az.po:
7822         * po/en_GB.po:
7823         * po/fr.po:
7824         * po/nl.po:
7825         * po/sr.po:
7826         * po/sv.po:
7827         * po/tr.po:
7828         * po/uk.po:
7829         * tools/gst-register.c: (plugin_added_func), (main):
7830           i18n-ize -register, fix plural
7831
7832 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7833
7834         * gst/elements/gstidentity.c: (gst_identity_class_init),
7835         (gst_identity_init), (gst_identity_chain),
7836         (gst_identity_set_property), (gst_identity_get_property):
7837         * gst/elements/gstidentity.h:
7838           check for perfect stream
7839
7840 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7841
7842         * gst/elements/gstidentity.c: (gst_identity_chain):
7843           print offset_end
7844
7845 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7846
7847         * docs/gst/Makefile.am:
7848         * docs/gst/gstreamer-docs.sgml:
7849           doc fixes
7850
7851 2004-06-24  David Schleef  <ds@schleef.org>
7852
7853         * autogen.sh:  Remove call to env, since the buildbot isn't
7854         broken anymore.
7855
7856 2004-06-24  Wim Taymans  <wim@fluendo.com>
7857
7858         * gst/elements/Makefile.am:
7859         * gst/elements/gstelements.c:
7860         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
7861         (gst_multifdsink_class_init), (gst_multifdsink_init),
7862         (gst_multifdsink_add), (gst_multifdsink_remove),
7863         (gst_multifdsink_clear), (gst_multifdsink_chain),
7864         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
7865         * gst/elements/gstmultifdsink.h:
7866         Added an element that writes to multiple filedescriptors at once.
7867
7868 2004-06-24  Benjamin Otte  <otte@gnome.org>
7869
7870         * gst/parse/grammar.y:
7871           don't try to link elements before they have been added to bins
7872
7873 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7874
7875         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
7876         (gst_file_pad_get_length):
7877         * libs/gst/bytestream/filepad.h:
7878           add 2 new functions
7879
7880 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7881
7882         * docs/gst/gstreamer-sections.txt:
7883         remove from docs, the define that Benjamin removed from gstelement.h
7884
7885 2004-06-22  Benjamin Otte  <otte@gnome.org>
7886
7887         * gst/gstelement.h:
7888           remove define that referenced a nonexisting GstElement struct member
7889
7890 2004-06-20  Benjamin Otte  <otte@gnome.org>
7891
7892         * gst/gstdata.c: (gst_data_is_writable):
7893           whoops, return values were wrong, so writable data was marked as
7894           non-writable and vice versa. (fixes #143953, spotted by Francis
7895           Labonte)
7896           Shows how rarely we need to copy data ;)
7897
7898 2004-06-20  Benjamin Otte  <otte@gnome.org>
7899
7900         * testsuite/schedulers/.cvsignore:
7901         * testsuite/schedulers/Makefile.am:
7902         * testsuite/schedulers/143777-2.c: (main):
7903           add test for opt breakage in bug #143777
7904
7905 2004-06-20  Benjamin Otte  <otte@gnome.org>
7906
7907         * gst/gstpad.c: (gst_pad_call_chain_function):
7908           check for if we were unlinked while inside the chainfunction (fixes
7909           entrygthread having issues with #143777)
7910         * testsuite/schedulers/143777.c: (main):
7911         * testsuite/schedulers/Makefile.am:
7912           add a test for that fix
7913
7914 2004-06-20  Benjamin Otte  <otte@gnome.org>
7915
7916         * gst/gstvalue.c: (gst_value_set_int_range):
7917           test that start is smaller then end
7918         * libs/gst/bytestream/Makefile.am:
7919         * libs/gst/bytestream/filepad.c: 
7920         * libs/gst/bytestream/filepad.h:
7921           add GstFilePad - a pad that behaves like a FILE*
7922         * testsuite/bytestream/.cvsignore:
7923         * testsuite/bytestream/Makefile.am:
7924         * testsuite/bytestream/filepadsink.c: 
7925           test for the GstFilePad
7926
7927 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7928
7929         * gst/elements/gstidentity.c: (gst_identity_class_init),
7930         (gst_identity_init), (gst_identity_set_clock),
7931         (gst_identity_chain), (gst_identity_set_property),
7932         (gst_identity_get_property):
7933         * gst/elements/gstidentity.h:
7934         * gst/gstclock.c: (gst_clock_id_wait):
7935           add a "sync" property to sync to the clock
7936
7937 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7938
7939         * gst/gstelementfactory.c: (gst_element_factory_create):
7940           make the freakin "elementfactory bla has no type" message more
7941           useful. So we actually can do something when someone shows up
7942           complaining about it.
7943
7944 2004-06-15  Johan Dahlin  <johan@gnome.org>
7945
7946         * tools/gst-inspect.c (main): Fallback to plugin if no element is
7947         found. This matches the old behavior better. Thanks to Thomas for
7948         pointing out.
7949
7950 2004-06-14  David Schleef  <ds@schleef.org>
7951
7952         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
7953         -fomit-frame-pointer.  Appears to generate correct code in
7954         other cases as well.
7955
7956 2004-06-14  Johan Dahlin  <johan@gnome.org>
7957
7958         * tools/gst-inspect.c (main): Add two new command line options: -a
7959         to print all elements and -n to print the name on each line. Also
7960         fix some error reporting.
7961         (main): Simplify, remove -n and always print names if -a is specified
7962
7963 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
7964
7965         * win32/gstconfig.h:
7966         * win32/GSTreamer.vcproj:
7967         * win32/Makefile:
7968         * gst/gstconfig.h.in:
7969         * gst/gst.h:
7970         * gst/gstbin.h:
7971         * gst/gstelement.h:
7972         * gst/gstevent.h:
7973         * gst/gstobject.h:
7974         * gst/gstpad.h:
7975         * docs/gst/gstreamer-sections.txt:
7976         * docs/gst/tmpl/gstconfig.sgml:
7977           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
7978
7979 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7980         * docs/gst/gstreamer-sections.txt:
7981         * docs/gst/tmpl/gstconfig.sgml:
7982         Add the GSTREAMER_EXPORT macro to the docs
7983
7984 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7985
7986         * tools/gst-compprep.c: (handle_xmlerror), (main):
7987         Add a check for the version that introduced SetStructuredError to fix
7988         the build on FC1
7989
7990 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7991
7992         * win32/msvc71.sln:
7993         * win32/testsuite/:
7994           prepare to compile the testsuite with MSVC
7995
7996 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7997
7998         * docs/manual/win32.xml:
7999           attempt to transform the Win32 README into an XML doc
8000
8001 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8002
8003         * gst/gst.c:
8004         * gst/gstbin.*:
8005         * gst/config.h.in:
8006         * gst/gstelement.*:
8007         * gst/gstevent.h:
8008         * gst/gstobject.*:
8009         * gst/gstpad.h:
8010         * tools/gst-register.c:
8011         * win32/gstreamer.def:
8012           extern symbols are now exported for the Windows DLL
8013
8014 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8015
8016         * gst/gstinfo.h:
8017           fix a problem to enable/disable DEBUG under MSVC
8018
8019 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8020
8021         * win32/:
8022           enable more debug code in DEBUG build
8023
8024 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8025
8026         * win32/config.h:
8027         * gst/gst-i18n-app.h:
8028           enable NLS under Windows
8029
8030 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8031         * tools/gst-compprep.c: (handle_xmlerror), (main):
8032           Make an error that baffled me a bit clearer
8033
8034 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8035
8036         * gst/gstqueue.c:
8037           don't use g_queue_get_length () because it's 2.4, use ->length
8038
8039 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8040
8041         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8042
8043         * tools/gst-inspect.c: (print_signal_info):
8044           don't free random data twice. (fixes #144185)
8045
8046 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8047
8048         * gst/gstqueue.c:
8049         * gst/gstqueue.h:
8050           fix removing from the wrong queue on event timeout
8051           fix disposing of the event queue by casting correctly
8052           add mutexes for handling the event queue
8053           someone was sleeping when fixing queue last time around :)
8054
8055 2004-06-10  Johan Dahlin  <johan@gnome.org>
8056
8057         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8058         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8059
8060 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8061
8062         * docs/random/gdp:
8063         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8064         * libs/gst/dataprotocol/dataprotocol.c:
8065         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8066         (gst_dp_buffer_from_header):
8067         * libs/gst/dataprotocol/dataprotocol.h:
8068         * libs/gst/dataprotocol/dp-private.h:
8069           rev version to 0.1, add buffer flags and copy them
8070
8071 2004-06-09  Johan Dahlin  <johan@gnome.org>
8072
8073         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8074         the flags from the buffer we're copying.
8075
8076 2004-06-09  Wim Taymans  <wim@fluendo.com>
8077
8078         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8079         * gst/elements/gstidentity.c: (gst_identity_init),
8080         (gst_identity_chain):
8081         Print more buffer info in fakesink.
8082         Make identity output similar to fakesink.
8083
8084 2004-06-07  Daniel Gazard  <dany42@free.fr>
8085
8086         reviewed by Benjamin Otte  <otte@gnome.org>
8087
8088         * configure.ac:
8089           fix cross compiling not working. (fixes #143741)
8090
8091 2004-06-07  Benjamin Otte  <otte@gnome.org>
8092
8093         * gst/gstelement.c: (gst_element_set_time_delay):
8094           add failure check
8095         * gst/gstinfo.h:
8096           put brackets around macro arguments of GST_TIME_ARGS, add note to
8097           move it to correct header in 0.9
8098
8099 2004-06-07  Benjamin Otte  <otte@gnome.org>
8100
8101         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8102         (gst_file_index_load), (_file_index_id_save_entries),
8103         (gst_file_index_commit), (gst_file_index_add_association),
8104         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8105         (gst_file_index_plugin_init):
8106           make debugging use a default category
8107
8108 2004-06-06  David Moore  <dcm@acm.org>
8109
8110         reviewed by Benjamin Otte  <otte@gnome.org>
8111
8112         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8113         (gst_fdsrc_change_state):
8114           reset offset counter when going READY => PAUSED. (fixes #142903)
8115
8116 2004-06-06  ed@catmur.co.uk
8117
8118         reviewed by Benjamin Otte  <otte@gnome.org>
8119
8120         * gst/registries/gstxmlregistry.c:
8121         (gst_xml_registry_rebuild_recurse):
8122           don't rely on g_dir_open to figure out if a file is a directory, use
8123           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8124           directories. (fixes #142850)
8125
8126 2004-06-06  Benjamin Otte  <otte@gnome.org>
8127
8128         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8129           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8130         * libs/gst/bytestream/adapter.c:
8131         * libs/gst/bytestream/adapter.h:
8132           fix copyright in header and typo in debugging category name
8133
8134 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8135
8136         * configure.ac:
8137           bump nano to cvs
8138
8139 === release 0.8.3 ===
8140
8141 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8142
8143         * configure.ac:
8144           update libtool versioning
8145           do a new release
8146         * docs/gst/tmpl/gstelement.sgml:
8147         * docs/gst/tmpl/gsttypes.sgml:
8148         * gst/gstinfo.c: (_gst_debug_init):
8149           put back GST_CAT_DATAFLOW to fix API breakage
8150
8151 2004-06-04  David Schleef  <ds@schleef.org>
8152
8153         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8154
8155 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8156
8157         * configure.ac:
8158           bump nano to cvs
8159
8160 === release 0.8.2 ===
8161
8162 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8163
8164         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8165           check GST_DEBUG environment variable which is parsed the same way
8166           as --gst-debug=
8167
8168 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8169
8170         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8171                             gstmd5sink.c gstshaper.c gsttee.c
8172                             gsttypefindelement.c
8173         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8174
8175           - removing trailing commas at end of enums
8176             it is correct C99 code but C90 compilers would complain
8177             (AIX, Forte, ...)
8178             ('should' fix #143290, at least partially)
8179
8180 2004-05-27  Wim Taymans  <wim@fluendo.com>
8181
8182         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8183         (chain_group_set_enabled), (create_group), (add_to_group),
8184         (merge_groups), (setup_group_scheduler), (group_elements),
8185         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8186         Don't try to follow the pad connections with other groups
8187         when a loop based element is added to the scheduler because
8188         the bin will inform the scheduler about the pad links a little
8189         later.
8190
8191 2004-05-27  Wim Taymans  <wim@fluendo.com>
8192
8193         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8194         (remove_from_chain), (chain_group_set_enabled),
8195         (setup_group_scheduler), (group_element_set_enabled),
8196         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8197         (gst_opt_scheduler_show):
8198         Elements without a group can do a state change as well, just wait
8199         with the setup of the scheduling function when it is added to a
8200         chain.
8201
8202 2004-05-27  Wim Taymans  <wim@fluendo.com>
8203
8204         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8205         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8206         (merge_groups), (setup_group_scheduler),
8207         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8208         (gst_opt_scheduler_show):
8209         Fixes to maintain internal consistency of the scheduler data
8210         structures. 
8211          - adding an enabled group to a chain should increment the
8212            number of enabled elements in that chain.
8213          - removing an enabled group from a chain could disable the
8214            chain.
8215          - removing a disabled group from a chain could enable the
8216            chain.
8217          - add g_assert when internal inconsistency is detected.
8218          - adding an element to a group could increase the number of
8219            links this group has with other groups.
8220          - merging two groups also merges the chains.
8221          - also show group links in the _show method.
8222            
8223
8224 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8225
8226         * gst/gstcaps.c: (gst_caps_structure_simplify):
8227           don't print error messages when there is no error
8228         * gst/gstvalue.c: (gst_value_compare_int_range):
8229           compare the second value, too
8230         * testsuite/caps/Makefile.am:
8231         * testsuite/caps/random.c: (assert_on_error), (main):
8232           add tests to make sure the two things above are checked for
8233
8234 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8235
8236         * configure.ac:
8237         * libs/gst/dataprotocol/Makefile.am:
8238         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8239         * libs/gst/dataprotocol/dataprotocol.h:
8240           wrap header in GST_ENABLE_NEW.  make code use it
8241
8242 2004-05-23  Johan Dahlin  <johan@gnome.org>
8243
8244         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8245         so verbose and print GstElement signal names all the time.
8246
8247 2004-05-22  David Schleef  <ds@schleef.org>
8248
8249         * gst/registries/gstxmlregistry.c:
8250         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8251         (bug #142957)
8252
8253 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8254
8255         * configure.ac:
8256           scrub cflags for glib2 so gcc doesn't complain when glib is in
8257           /usr/local
8258
8259 2004-05-21  Johan Dahlin  <johan@gnome.org>
8260
8261         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8262         __GNUC__, patch from Brian Cameron, fixes bug #142804
8263
8264 2004-05-20  David Schleef  <ds@schleef.org>
8265
8266         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8267         comparison code.  (bug #142819)
8268
8269 2004-05-20  Wim Taymans  <wim@fluendo.com>
8270
8271         * gst/gstbuffer.c: (gst_buffer_default_copy):
8272         * gst/gstbuffer.h:
8273         Added Comment to a flag.
8274         copy relevant flags in _buffer_copy.
8275
8276 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8277
8278         reviewed by: Wim Taymans <wim at fluendo dot com>
8279
8280         * gst/gstbuffer.h:
8281           add GST_BUFFER_IN_CAPS buffer flag
8282         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8283         (gst_structure_parse_any_list), (gst_structure_parse_list),
8284         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8285         * gst/gstvalue.c: (gst_value_serialize_any_list),
8286         (gst_value_transform_any_list_string),
8287         (gst_value_list_prepend_value), (gst_value_list_append_value),
8288         (gst_value_list_get_size), (gst_value_list_get_value),
8289         (gst_value_transform_list_string),
8290         (gst_value_transform_fixed_list_string),
8291         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8292         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8293         (_gst_value_initialize):
8294         * gst/gstvalue.h:
8295           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8296           < , > as a format.
8297         * testsuite/caps/string-conversions.c: (main):
8298           add regression tests for < >
8299
8300 2004-05-20  Johan Dahlin  <johan@gnome.org>
8301
8302         * docs/gst/Makefile.am (all-local): Re-add
8303
8304 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8305
8306         * docs/gst/Makefile.am:
8307         * docs/gst/gstreamer-docs.sgml:
8308         * docs/libs/Makefile.am:
8309         * docs/libs/gstreamer-libs-docs.sgml:
8310           fix distcheck issues
8311
8312 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8313
8314         * libs/gst/dataprotocol/Makefile.am:
8315           add to autotest
8316
8317 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8318
8319         * libs/gst/dataprotocol/Makefile.am:
8320         * libs/gst/dataprotocol/dataprotocol.c:
8321         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8322         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8323         * libs/gst/dataprotocol/dp-private.h:
8324           use GST macros to read/write fixed length ints
8325           add some more asserts
8326
8327 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8328
8329         * docs/libs/gstreamer-libs-docs.sgml:
8330         * docs/libs/gstreamer-libs-sections.txt:
8331           remove idct and putbits
8332         * configure.ac:
8333         * docs/libs/tmpl/gstdataprotocol.sgml:
8334         * libs/gst/Makefile.am:
8335         * libs/gst/dataprotocol/Makefile.am:
8336         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8337         (buffer_test), (caps_test), (event_test), (main):
8338         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8339         (gst_dp_dump_byte_array), (gst_dp_init),
8340         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8341         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8342         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8343         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8344         (gst_dp_validate_header), (gst_dp_validate_payload),
8345         (gst_dp_validate_packet), (plugin_init):
8346         * libs/gst/dataprotocol/dataprotocol.h:
8347         * libs/gst/dataprotocol/dp-private.h:
8348           add dataprotocol
8349
8350 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8351
8352         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8353           fix int variable deserialization and add a helper so we can actually
8354           debug this.
8355
8356 2004-05-18  David Schleef  <ds@schleef.org>
8357
8358         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8359           argv[0].  Calling yourself is probably not the best way to
8360           construct a test like this, btw.
8361
8362 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8363
8364         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8365           don't claim to be more intelligent than a scheduler when the
8366           scheduler claims the pipeline is stopped
8367         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8368         (safe_cothread_destroy),
8369         (gst_entry_scheduler_remove_all_cothreads),
8370         (gst_entry_scheduler_reset), (_remove_cothread),
8371         (gst_entry_scheduler_state_transition):
8372           hold off cothread destruction if we're not in main cothread
8373         * configure.ac:
8374         * testsuite/Makefile.am:
8375           add new test dir
8376         * testsuite/schedulers/.cvsignore:
8377         * testsuite/schedulers/Makefile.am:
8378           add tests
8379         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8380           check relinking and adding/removing elements from a running pipeline
8381         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8382           check unlinking in a running pipeline
8383         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8384           check unreffing a running pipeline
8385         * testsuite/schedulers/useless_iteration.c: (main):
8386           check iterating a pipeline that contains running threads works
8387
8388 2004-05-18  David Schleef  <ds@schleef.org>
8389
8390         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8391           is false.
8392
8393 2004-05-18  Wim Taymans  <wim@fluendo.com>
8394
8395         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8396         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8397         Fixed an error introduced with patch for 1.63. When setting
8398         a get based element as the entry point in a group, make sure
8399         to mark the group as GET based.
8400
8401 2004-05-18  Wim Taymans  <wim@fluendo.com>
8402
8403         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8404         (setup_group_scheduler), (loop_group_schedule_function),
8405         (gst_opt_scheduler_pad_link):
8406         Added some more debug info and fixed a bug where the group
8407         type was set to LOOP but it was in fact unknown.
8408
8409 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8410
8411         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8412           make resetting scheduler work twice in a row
8413
8414 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8415
8416         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8417         (CREATE_USERIALIZATION), (_gst_value_initialize),
8418         (gst_value_compare_float), (gst_value_serialize_float),
8419         (gst_value_deserialize_float), (gst_value_compare_enum),
8420         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8421           add serialization and comparison functions for long, int64, enum and
8422           float values
8423         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8424           use best serialization function in type hierarchy instead of only a
8425           matching one. This is required for enums to work.
8426         * gst/parse/grammar.y:
8427           use gst_caps_deserialize
8428         * testsuite/parse/Makefile.am:
8429           parse1 now works
8430         * testsuite/parse/parse1.c: (main):
8431           remove aggregator check, aggregator is broken, this test works now
8432           but fails because of bug #138012
8433         * testsuite/parse/parse2.c: (main):
8434           s/xvideosink/xvimagesink - this test looks a lot like we should
8435           disable it
8436
8437 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8438
8439         * gst/gstelement.c: (gst_element_class_init):
8440           whoops, store the signal id correctly
8441         * gst/schedulers/gstbasicscheduler.c:
8442         (gst_basic_scheduler_chain_wrapper):
8443           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8444           chain function isn't linked
8445
8446 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8447         * configure.ac:
8448         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8449         support until we decide where the flags should be used
8450         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8451         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8452         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8453         Output refused caps in the debug info
8454
8455 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8456
8457         * gst/elements/gstidentity.c: (gst_identity_chain):
8458           add duration debug
8459         * gst/gstinfo.c: (gst_debug_log_default):
8460           add timestamp
8461
8462 2004-05-13  Benjamin Otte  <otte@gnome.org>
8463
8464         * gst/gstpipeline.c: (gst_pipeline_dispose),
8465         (gst_pipeline_change_state):
8466           call gst_scheduler_reset on dispose (fixes #141416)
8467
8468 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8469
8470         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8471           compute mapsize correctly
8472         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8473           use correct datatypes when calling a varargs function
8474         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8475           push a DISCONT event as first thing
8476         * gst/gst_private.h:
8477         * gst/gstinfo.c: (_gst_debug_init):
8478           remove GST_DATAFLOW debugging category
8479         * gst/gstbin.c: (gst_bin_iterate):
8480           use GST_SCHEDULING category
8481         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8482         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8483         (gst_pad_call_get_function):
8484           add GST_DATAFLOW to easily track flow of buffers or events.
8485         * gst/gstqueue.c: (gst_queue_get_type),
8486         (gst_queue_handle_pending_events), (gst_queue_chain),
8487         (gst_queue_get), (gst_queue_handle_src_event):
8488           use own static debugging category GST_DATAFLOW for dataflow,
8489           use DEBUG category for showing which path events go, use LOG
8490           category for buffers.
8491
8492 2004-05-10  David Schleef  <ds@schleef.org>
8493
8494         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8495
8496 2004-05-10  David Schleef  <ds@schleef.org>
8497
8498         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8499         symbols, because otherwise we don't know what they are.  Thanks,
8500         the GStreamer team.
8501         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8502
8503 2004-05-10  David Schleef  <ds@schleef.org>
8504
8505         (from Steve Lhomme)
8506         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8507         are deleted.  Fix.
8508         * win32/Makefile.inspect:
8509         * win32/Makefile.launch:
8510         * win32/Makefile.register:
8511
8512 2004-05-10  David Schleef  <ds@schleef.org>
8513
8514         * gst/gstinfo.h: Add missing inline function.
8515         * gst/gsttrace.c: add include
8516         * gst/parse/grammar.y: remove unused code
8517         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8518         more portable.
8519         * tools/gst-register.c: wrap unistd.h
8520         
8521         More additions/fixes from Steve for the MSVC build.
8522         * win32/GStreamer.vcproj:
8523         * win32/Makefile:
8524         * win32/Makefile.inspect:
8525         * win32/Makefile.launch:
8526         * win32/Makefile.register:
8527         * win32/README.txt:
8528         * win32/gst-inspect.vcproj:
8529         * win32/gst-launch.vcproj:
8530         * win32/gst-register.vcproj:
8531         * win32/gstbytestream.def:
8532         * win32/gstbytestream.vcproj:
8533         * win32/gstconfig.h:
8534         * win32/gstelements.def:
8535         * win32/gstelements.vcproj:
8536         * win32/gstenumtypes.c:
8537         * win32/gstenumtypes.h:
8538         * win32/gstoptimalscheduler.def:
8539         * win32/gstoptimalscheduler.vcproj:
8540         * win32/gstreamer.def:
8541         * win32/gstspider.def:
8542         * win32/gstspider.vcproj:
8543         * win32/gstversion.h:
8544         * win32/msvc71.sln:
8545
8546 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8547
8548         * gst/gstelement.c: (gst_element_class_init),
8549         (gst_element_no_more_pads):
8550         * gst/gstelement.h:
8551           add gst_element_no_more_pads and the "no-more-pads" signal
8552
8553 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8554
8555         * gst/gstregistry.c: (gst_registry_add_plugin):
8556           refuse to add plugins when a plugin with same name is already
8557           registered. Fixes a bunch of "How to remove plugins?" issues.
8558           May lead to other problems though, let's test
8559
8560 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8561
8562         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8563         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8564         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8565
8566 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8567
8568         * tests/Makefile.am: fix am16 issue
8569
8570 2004-05-09  Benjamin Otte  <otte@gnome.org>
8571
8572         * libs/gst/bytestream/Makefile.am:
8573           we should indeed add .c files to makefiles or they won't be built
8574           (d'oh)
8575
8576 2004-05-08  Benjamin Otte  <otte@gnome.org>
8577
8578         * gst/gstpad.c: (gst_pad_proxy_fixate):
8579           really reduce the set of caps
8580
8581 2004-05-08  Benjamin Otte  <otte@gnome.org>
8582
8583         * tests/Makefile.am:
8584         * tests/spidey_bench.c: (handoff), (main):
8585           add benchmark to test how long spider needs to create a pipeline
8586
8587 2004-05-08  Benjamin Otte  <otte@gnome.org>
8588
8589         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8590           mark links as unengaged when unnegotiating instead of deactivating.
8591           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8592
8593 2004-05-08  Benjamin Otte  <otte@gnome.org>
8594
8595         * docs/manual/helloworld.xml:
8596           s/audiosink/osssink (patch by Patrick Guimond)
8597
8598 2004-05-07  David Schleef  <ds@schleef.org>
8599
8600         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8601         since it contains important stuff.
8602
8603 2004-05-07  David Schleef  <ds@schleef.org>
8604
8605         * testsuite/caps/caps.c: (test3), (main): A check for appending
8606         ANY caps.
8607
8608 2004-05-07  David Schleef  <ds@schleef.org>
8609
8610         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8611         which may contain commas.  Fixes detection of -Wa,-mregnames
8612
8613 2004-05-06  David Schleef  <ds@schleef.org>
8614
8615         Changes to handle compilers that don't have variadic macro
8616         support.  In particular, glib headers define some inlines
8617         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
8618         builds.
8619         * gst/Makefile.am:
8620         * gst/cothreads.c:
8621         * gst/elements/gstfdsink.c:
8622         * gst/elements/gstfdsrc.c:
8623         * gst/elements/gstfilesink.c:
8624         * gst/elements/gstfilesrc.c:
8625         * gst/gst_private.h:
8626         * gst/gstatomic.c:
8627         * gst/gstcaps.c: (gst_caps_append):
8628         * gst/gstcpu.c: (gst_cpuid_i386):
8629         * gst/gstelement.c:
8630         * gst/gsterror.c:
8631         * gst/gstfilter.c:
8632         * gst/gstinfo.h:
8633         * gst/gstprobe.c:
8634         * gst/gstquery.c:
8635         * gst/gstregistry.c:
8636         * gst/gststructure.c:
8637         * gst/gsttaginterface.c:
8638         * gst/gsttrace.c: (gst_trace_new):
8639         * gst/gsttrashstack.c:
8640         * gst/gsturi.c:
8641         * gst/gstvalue.c:
8642         * gst/parse/grammar.y:
8643         * gst/parse/parse.l:
8644         * tools/gst-inspect.c: (main):
8645         * tools/gst-launch.c: (main):
8646         * tools/gst-xmlinspect.c: (PUT_STRING):
8647
8648 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8649
8650         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8651         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8652         * gst/elements/gstfilesrc.h:
8653           send NEW_MEDIA events correctly
8654         * gst/elements/gsttypefindelement.c: (start_typefinding),
8655         (gst_type_find_element_handle_event):
8656           restart typefinding when we get a NEW_MEDIA event
8657         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
8658         (gst_bin_dispose):
8659           don't die when someone removes elements in callbacks
8660         * gst/gstelement.c: (gst_element_change_state):
8661           improve debugging
8662         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
8663           we need a NEW_MEDIA event to engage a link
8664         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
8665           don't g_print debugging stuff
8666         * testsuite/caps/simplify.c: (check_caps):
8667
8668 2004-05-04  Benjamin Otte  <otte@gnome.org>
8669
8670         * gst/parse/grammar.y:
8671           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
8672
8673 2004-05-04  Benjamin Otte  <otte@gnome.org>
8674
8675         * testsuite/caps/renegotiate.c: (main):
8676           improve output in error case
8677
8678 2004-05-04  Benjamin Otte  <otte@gnome.org>
8679
8680         * gst/parse/grammar.y:
8681           fix assert to not trigger when there's no error argument
8682         * gst/parse/parse.l:
8683           fix definition of caps to allow more than two structures
8684         * testsuite/caps/Makefile.am:
8685         * testsuite/caps/renegotiate.c: (main):
8686           it's sinesrc and works in that case
8687
8688 2004-05-04  Wim Taymans  <wim@fluendo.com>
8689
8690         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8691         (group_dec_link), (gst_opt_scheduler_pad_unlink):
8692         when removing an element from a group, we always need to
8693         decrement the link count that this group had with other 
8694         groups through the element.
8695         added an extra assert to catch inconsistencies when decrementing
8696         the link count.
8697
8698 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8699
8700         * configure.ac:
8701         * docs/gst/Makefile.am:
8702         * docs/gst/gstreamer-sections.txt:
8703         * docs/gst/tmpl/gstcompat.sgml:
8704         * examples/appreader/Makefile.am:
8705         * examples/cutter/Makefile.am:
8706         * examples/events/Makefile.am:
8707         * examples/helloworld/Makefile.am:
8708         * examples/helloworld2/Makefile.am:
8709         * examples/launch/Makefile.am:
8710         * examples/manual/Makefile.am:
8711         * examples/mixer/Makefile.am:
8712         * examples/pingpong/Makefile.am:
8713         * examples/plugins/Makefile.am:
8714         * examples/queue/Makefile.am:
8715         * examples/queue2/Makefile.am:
8716         * examples/queue3/Makefile.am:
8717         * examples/queue4/Makefile.am:
8718         * examples/retag/Makefile.am:
8719         * examples/thread/Makefile.am:
8720         * examples/typefind/Makefile.am:
8721         * examples/xml/Makefile.am:
8722         * gst/Makefile.am:
8723         * gst/autoplug/Makefile.am:
8724         * gst/elements/Makefile.am:
8725         * gst/gstcompat.h:
8726         * gst/indexers/Makefile.am:
8727         * gst/parse/Makefile.am:
8728         * gst/registries/Makefile.am:
8729         * gst/schedulers/Makefile.am:
8730         * libs/gst/bytestream/Makefile.am:
8731         * libs/gst/control/Makefile.am:
8732         * libs/gst/getbits/Makefile.am:
8733         * po/af.po:
8734         * po/az.po:
8735         * po/en_GB.po:
8736         * po/fr.po:
8737         * po/nl.po:
8738         * po/sr.po:
8739         * po/sv.po:
8740         * po/tr.po:
8741         * po/uk.po:
8742         * tests/Makefile.am:
8743         * tests/bufspeed/Makefile.am:
8744         * tests/instantiate/Makefile.am:
8745         * tests/memchunk/Makefile.am:
8746         * tests/muxing/Makefile.am:
8747         * tests/negotiation/Makefile.am:
8748         * tests/probes/Makefile.am:
8749         * tests/sched/Makefile.am:
8750         * tests/seeking/Makefile.am:
8751         * tests/threadstate/Makefile.am:
8752         * testsuite/caps/Makefile.am:
8753         * testsuite/cleanup/Makefile.am:
8754         * testsuite/dlopen/Makefile.am:
8755         * testsuite/dynparams/Makefile.am:
8756         * testsuite/plugin/Makefile.am:
8757         * testsuite/states/Makefile.am:
8758         * tools/Makefile.am:
8759           reorganize compile/link flags to be consistent
8760           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
8761
8762 2004-05-04  David Schleef  <ds@schleef.org>
8763
8764         The "once more, with feeling" check-in.
8765         * testsuite/caps/Makefile.am: dist caps_strings
8766         * testsuite/caps/renegotiate.c: (main): This test triggers a
8767           segfault in the core.  Marking as failing.
8768
8769 2004-05-03  David Schleef  <ds@schleef.org>
8770
8771         * testsuite/caps/deserialize.c: (main): Fix problems noticed
8772           by the build bots.
8773         * testsuite/caps/renegotiate.c: (main): Same.
8774
8775 2004-05-03  David Schleef  <ds@schleef.org>
8776
8777         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
8778
8779 2004-05-03  David Schleef  <ds@schleef.org>
8780
8781         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
8782           variable to find our source file.
8783
8784 2004-05-03  David Schleef  <ds@schleef.org>
8785
8786         * configure.ac:  Link plugins with libgstreamer and dependent
8787           libraries
8788         * testsuite/caps/Makefile.am:
8789         * testsuite/caps/caps_strings:
8790         * testsuite/caps/deserialize.c: (main): Add a little test to slog
8791           through a file of caps strings and test each one
8792
8793 2004-05-04  Benjamin Otte  <otte@gnome.org>
8794
8795         * libs/gst/bytestream/Makefile.am:
8796         * libs/gst/bytestream/adapter.c: 
8797         * libs/gst/bytestream/adapter.h:
8798           add GstAdapter, similar to bytestream, but doesn't require ugly event
8799           handling or uglier loopbased elements
8800
8801 2004-05-03  David Schleef  <ds@schleef.org>
8802
8803         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
8804         * testsuite/caps/erathostenes.c:
8805         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
8806
8807 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8808
8809         * docs/pwg/pwg.xml:
8810           remove hardcoded stylesheet path (duh)
8811         * docs/random/release:
8812         * docs/gst/gstreamer-sections.txt:
8813         * gst/Makefile.am:
8814         * gst/gst.h:
8815         * gst/gst_private.h:
8816         * gst/gstcaps.c:
8817         * gst/gstevent.c:
8818         * gst/gstformat.c:
8819         * gst/gstinfo.c:
8820         * gst/gstinfo.h:
8821         * gst/gstinterface.c:
8822         * gst/gstmemchunk.c:
8823         * gst/gstprobe.c:
8824         * gst/gstquery.c:
8825         * gst/gstregistry.c:
8826         * gst/gstregistrypool.c:
8827         * gst/gststructure.c:
8828         * gst/gsttaginterface.c:
8829         * gst/gstthread.c:
8830         * gst/gsttrace.c:
8831         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
8832         * gst/gsturi.c:
8833         * gst/gstvalue.c:
8834           deprecate gst_info; remove gstlog.h
8835    
8836
8837 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8838
8839         * Makefile.am:
8840         * po/en_GB.po:
8841         * po/sv.po:
8842         * po/uk.po:
8843           updated translations
8844
8845 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8846
8847         * gst/gstbin.c: (gst_bin_dispose):
8848           better debugging
8849
8850 2004-05-03  Johan Dahlin  <johan@gnome.org>
8851
8852         * gst/schedulers/gstoptimalscheduler.c
8853         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
8854         really is a GstElement. Avoids critical when running gst-launch -v
8855         and a oggdemux/decoding pipeline.
8856
8857 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8858
8859         * docs/gst/tmpl/gstpipeline.sgml :
8860         * docs/manual/elements-api.xml :
8861                 doc fix by Patrick Guimond (Protector) from devel ML
8862                 reviewed by ronald
8863
8864 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8865
8866         * docs/gst/Makefile.am :
8867         * docs/libs/Makefile.am :
8868                 apply a patch from Arwed v. Merkatz so that gtk-doc
8869                 generated docs install (same for .devhelp file)
8870                 (fixes part 1 of #138836)
8871
8872 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8873
8874         * docs/faq/dependencies.xml: typo
8875         * docs/faq/getting.xml :
8876             - fix download URL for new gstreamer site
8877             - hide sf.net download page as latest version aren't there
8878             - fix apt URLs
8879             - fill "get via CVS" paragraph (link to dev page on the site)
8880         * docs/faq/general.xml:
8881             hide status tables as they no more exists
8882             change case on plugins license file to reflect reality
8883         * docs/faq/troubleshooting.xml:
8884             remove the wiki question/answer as there is no more wiki
8885
8886 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8887
8888         * gst/gsterror.h:
8889           include the headers needed for declarations used in this header
8890
8891 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8892
8893         * docs/random/uraeus/gstreamer_and_midi.txt :
8894           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
8895           (fixes #132288)
8896
8897 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
8898
8899         reviewed by Benjamin Otte  <otte@gnome.org>
8900
8901         * gst/schedulers/gthread-cothreads.h:
8902           free allocated data for main cothread, too when destroying context
8903           (fixes #141417)
8904
8905 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8906
8907         * docs/manual/goals.xml : remove duplicated paragraph at end 
8908         of doc page (fixes #141448)
8909
8910 2004-04-29  David Schleef  <ds@schleef.org>
8911
8912         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
8913         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
8914
8915 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8916
8917         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8918           fix property
8919         * gst/gstcaps.c:
8920           fix doc string
8921         * po/POTFILES.in:
8922           rename typefind source file
8923
8924 2004-04-28  David Schleef  <ds@schleef.org>
8925
8926         Several new files from Steve Lhomme's MSVC patch (bug #141317):
8927         * win32/GStreamer.vcproj:
8928         * win32/Makefile:
8929         * win32/config.h:
8930         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
8931         (_trewinddir), (_ttelldir), (_tseekdir):
8932         * win32/dirent.h:
8933         * win32/gst-inspect.vcproj:
8934         * win32/gst-launch.vcproj:
8935         * win32/gst-register.vcproj:
8936         * win32/gstbytestream.vcproj:
8937         * win32/gstelements.vcproj:
8938         * win32/gstoptimalscheduler.vcproj:
8939         * win32/gstspider.vcproj:
8940         * win32/gtchar.h:
8941         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
8942         * win32/mman.h:
8943         * win32/mman.inl:
8944         * win32/msvc71.sln:
8945
8946 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8947
8948         * gst/gst.c: (init_post):
8949         * gst/gstinfo.c:
8950           remove useless _gst_progname stuff
8951         * tools/gst-inspect.c: (print_field), (print_caps):
8952           improve caps output
8953
8954 2004-04-28  David Schleef  <ds@schleef.org>
8955
8956         Disable parsing of a lot of files that aren't part of the
8957         exported API.  Move corresponding template files to old/,
8958         waiting for removal when they don't contain anything
8959         interesting.
8960         * docs/gst/Makefile.am:
8961         * docs/gst/gstreamer-sections.txt:
8962         * docs/gst/tmpl/cothreads.sgml:
8963         * docs/gst/tmpl/cothreads_compat.sgml:
8964         * docs/gst/tmpl/gettext.sgml:
8965         * docs/gst/tmpl/gobject2gtk.sgml:
8966         * docs/gst/tmpl/grammar.tab.sgml:
8967         * docs/gst/tmpl/gst-i18n-app.sgml:
8968         * docs/gst/tmpl/gst-i18n-lib.sgml:
8969         * docs/gst/tmpl/gst_private.sgml:
8970         * docs/gst/tmpl/gstaggregator.sgml:
8971         * docs/gst/tmpl/gstarch.sgml:
8972         * docs/gst/tmpl/gstatomic_impl.sgml:
8973         * docs/gst/tmpl/gstbufferstore.sgml:
8974         * docs/gst/tmpl/gstdata_private.sgml:
8975         * docs/gst/tmpl/gstdisksink.sgml:
8976         * docs/gst/tmpl/gstdisksrc.sgml:
8977         * docs/gst/tmpl/gstelementfactory.sgml:
8978         * docs/gst/tmpl/gstextratypes.sgml:
8979         * docs/gst/tmpl/gstfakesink.sgml:
8980         * docs/gst/tmpl/gstfakesrc.sgml:
8981         * docs/gst/tmpl/gstfdsink.sgml:
8982         * docs/gst/tmpl/gstfdsrc.sgml:
8983         * docs/gst/tmpl/gstfilesink.sgml:
8984         * docs/gst/tmpl/gstfilesrc.sgml:
8985         * docs/gst/tmpl/gsthttpsrc.sgml:
8986         * docs/gst/tmpl/gstidentity.sgml:
8987         * docs/gst/tmpl/gstindexfactory.sgml:
8988         * docs/gst/tmpl/gstmarshal.sgml:
8989         * docs/gst/tmpl/gstmd5sink.sgml:
8990         * docs/gst/tmpl/gstmultidisksrc.sgml:
8991         * docs/gst/tmpl/gstmultifilesrc.sgml:
8992         * docs/gst/tmpl/gstpadtemplate.sgml:
8993         * docs/gst/tmpl/gstpipefilter.sgml:
8994         * docs/gst/tmpl/gstschedulerfactory.sgml:
8995         * docs/gst/tmpl/gstsearchfuncs.sgml:
8996         * docs/gst/tmpl/gstshaper.sgml:
8997         * docs/gst/tmpl/gstspider.sgml:
8998         * docs/gst/tmpl/gstspideridentity.sgml:
8999         * docs/gst/tmpl/gststatistics.sgml:
9000         * docs/gst/tmpl/gsttee.sgml:
9001         * docs/gst/tmpl/gsttimecache.sgml:
9002         * docs/gst/tmpl/gsttypefind.sgml:
9003         * docs/gst/tmpl/gsttypefindfactory.sgml:
9004         * docs/gst/tmpl/gstxmlregistry.sgml:
9005         * docs/gst/tmpl/gthread-cothreads.sgml:
9006         * docs/gst/tmpl/old/cothreads.sgml:
9007         * docs/gst/tmpl/old/cothreads_compat.sgml:
9008         * docs/gst/tmpl/old/gettext.sgml:
9009         * docs/gst/tmpl/old/gobject2gtk.sgml:
9010         * docs/gst/tmpl/old/grammar.tab.sgml:
9011         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9012         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9013         * docs/gst/tmpl/old/gst_private.sgml:
9014         * docs/gst/tmpl/old/gstaggregator.sgml:
9015         * docs/gst/tmpl/old/gstarch.sgml:
9016         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9017         * docs/gst/tmpl/old/gstbufferstore.sgml:
9018         * docs/gst/tmpl/old/gstdata_private.sgml:
9019         * docs/gst/tmpl/old/gstdisksink.sgml:
9020         * docs/gst/tmpl/old/gstdisksrc.sgml:
9021         * docs/gst/tmpl/old/gstelementfactory.sgml:
9022         * docs/gst/tmpl/old/gstextratypes.sgml:
9023         * docs/gst/tmpl/old/gstfakesink.sgml:
9024         * docs/gst/tmpl/old/gstfakesrc.sgml:
9025         * docs/gst/tmpl/old/gstfdsink.sgml:
9026         * docs/gst/tmpl/old/gstfdsrc.sgml:
9027         * docs/gst/tmpl/old/gstfilesink.sgml:
9028         * docs/gst/tmpl/old/gstfilesrc.sgml:
9029         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9030         * docs/gst/tmpl/old/gstidentity.sgml:
9031         * docs/gst/tmpl/old/gstindexfactory.sgml:
9032         * docs/gst/tmpl/old/gstmarshal.sgml:
9033         * docs/gst/tmpl/old/gstmd5sink.sgml:
9034         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9035         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9036         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9037         * docs/gst/tmpl/old/gstpipefilter.sgml:
9038         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9039         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9040         * docs/gst/tmpl/old/gstshaper.sgml:
9041         * docs/gst/tmpl/old/gstspider.sgml:
9042         * docs/gst/tmpl/old/gstspideridentity.sgml:
9043         * docs/gst/tmpl/old/gststatistics.sgml:
9044         * docs/gst/tmpl/old/gsttee.sgml:
9045         * docs/gst/tmpl/old/gsttimecache.sgml:
9046         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9047         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9048         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9049         * docs/gst/tmpl/old/types.sgml:
9050         * docs/gst/tmpl/types.sgml:
9051
9052         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9053         gtkdoc-scan doesn't like files with the same name in different
9054         directories.
9055         * gst/elements/Makefile.am:
9056         * gst/elements/gstelements.c:
9057         * gst/elements/gsttypefind.c: 
9058         * gst/elements/gsttypefind.h:
9059         * gst/elements/gsttypefindelement.c:
9060         * gst/elements/gsttypefindelement.h:
9061
9062 2004-04-28  David Schleef  <ds@schleef.org>
9063
9064         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9065         patch (bug #141317):
9066         * gst/gst-i18n-lib.h: Allow disabling gettext.
9067         * gst/gstatomic_impl.h: disable warning when it's dumb.
9068         * gst/gstclock.c: fix include
9069         * gst/gstcompat.h: fix variadic macro
9070         * gst/gstinfo.c: fix include
9071         * gst/gstmacros.h: add defines for inlines on MSVC
9072         * gst/gstplugin.c: fix includes
9073         * gst/gstregistry.c: fix includes
9074         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9075         * gst/gstsystemclock.c: fix include
9076         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9077         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9078         * gst/registries/gstxmlregistry.c:
9079         (gst_xml_registry_parse_element_factory): fix use of non-portable
9080         functions
9081         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9082         * libs/gst/control/dparammanager.h: same
9083
9084 2004-04-28  David Schleef  <ds@schleef.org>
9085
9086         Move a bunch of unused files to old/ with names that are
9087         not case-insensitive-unique.  These files still contain some
9088         useful information that needs to be merged into gstbin.sgml,
9089         etc., so they shouldn't be deleted yet.
9090         * docs/gst/tmpl/GstBin.sgml:
9091         * docs/gst/tmpl/GstBuffer.sgml:
9092         * docs/gst/tmpl/GstCaps.sgml:
9093         * docs/gst/tmpl/GstClock.sgml:
9094         * docs/gst/tmpl/GstCompat.sgml:
9095         * docs/gst/tmpl/GstData.sgml:
9096         * docs/gst/tmpl/GstElement.sgml:
9097         * docs/gst/tmpl/GstEvent.sgml:
9098         * docs/gst/tmpl/GstIndex.sgml:
9099         * docs/gst/tmpl/GstStructure.sgml:
9100         * docs/gst/tmpl/GstTag.sgml:
9101         * docs/gst/tmpl/old/GstBin.sgml:
9102         * docs/gst/tmpl/old/GstBuffer.sgml:
9103         * docs/gst/tmpl/old/GstCaps.sgml:
9104         * docs/gst/tmpl/old/GstClock.sgml:
9105         * docs/gst/tmpl/old/GstCompat.sgml:
9106         * docs/gst/tmpl/old/GstData.sgml:
9107         * docs/gst/tmpl/old/GstElement.sgml:
9108         * docs/gst/tmpl/old/GstEvent.sgml:
9109         * docs/gst/tmpl/old/GstIndex.sgml:
9110         * docs/gst/tmpl/old/GstStructure.sgml:
9111         * docs/gst/tmpl/old/GstTag.sgml:
9112
9113 2004-04-28  David Schleef  <ds@schleef.org>
9114
9115         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9116         (gst_caps_append), (gst_caps_append_structure),
9117         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9118         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9119         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9120         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9121         (gst_caps_intersect), (gst_caps_normalize),
9122         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9123         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9124         * gst/gstcaps.h: use GST_IS_CAPS().
9125
9126 2004-04-26  David Schleef  <ds@schleef.org>
9127
9128         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9129         assembly.  gcc doesn't handle it correctly. (bug #141083)
9130         * gst/gsttrashstack.h: same
9131
9132 2004-04-25  Benjamin Otte  <otte@gnome.org>
9133
9134         * gst/gstelement.c: (gst_element_change_state):
9135           fix assertion to do an int comparison
9136
9137 2004-04-25  Benjamin Otte  <otte@gnome.org>
9138
9139         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9140           better debugging output on error
9141
9142 2004-04-25  Benjamin Otte  <otte@gnome.org>
9143
9144         * gst/gstcaps.c: (gst_caps_subtract):
9145           fix memleak
9146
9147 2004-04-23  Benjamin Otte  <otte@gnome.org>
9148
9149         * gst/gstvalue.c: (gst_value_compare_buffer),
9150         (_gst_value_initialize):
9151           add comparison function for buffers
9152
9153 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9154
9155         * docs/pwg/pwg.xml:
9156           Just found out that this so-called "ima-wav" format is really
9157           just "dvi adpcm" (according to the MS WAV documentation). So
9158           renaming it. We didn't use it yet anyway.
9159
9160 2004-04-23  Benjamin Otte  <otte@gnome.org>
9161
9162         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9163           call gst_caps_is_subset
9164
9165 2004-04-23  Benjamin Otte  <otte@gnome.org>
9166
9167         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9168         (gst_caps_is_subset):
9169           add documentation
9170
9171 2004-04-23  Benjamin Otte  <otte@gnome.org>
9172           
9173         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9174         (gst_caps_structure_subtract), (gst_caps_subtract),
9175         (gst_caps_structure_figure_out_union),
9176         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9177           fix simplifying and subtracting not working correctly with optional
9178           properties
9179           solve assorted problems that make it now simplify ebven more
9180         * docs/gst/tmpl/gstcaps.sgml:
9181         * gst/gstcaps.h:
9182           make gst_caps_do_simplify return a bool to indicate if it simplified
9183         * testsuite/caps/simplify.c: (main):
9184           add more checks. The tests is quite a bit useless right now because
9185           the core is heavily simplifying itself.
9186         * testsuite/caps/caps.h:
9187           fix caps to contain all optional properties
9188
9189 2004-04-22  Benjamin Otte  <otte@gnome.org>
9190
9191         * docs/gst/tmpl/gstcaps.sgml:
9192         * docs/gst/tmpl/gstfilesrc.sgml:
9193         * docs/gst/tmpl/gststructure.sgml:
9194         * docs/gst/tmpl/gstvalue.sgml:
9195           update for recent API changes
9196         * gst/gstcaps.c: (gst_caps_do_simplify):
9197           fix to stop trying with a freed structure
9198         * gst/gstpad.c: (gst_pad_link_fixate):
9199           simplify caps
9200         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9201           remove C++ comment
9202         * gst/gstpad.h:
9203           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9204         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9205         (gst_structure_to_string):
9206           keep the correct type when using lists of ranges
9207         * gst/gstvalue.c: (gst_value_list_prepend_value),
9208         (gst_value_list_append_value):
9209           copy the value before adding to the list (d'oh)
9210         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9211         (gst_value_subtract_int_range_int_range):
9212           handle overflows correctly
9213         * gst/gstvalue.c: (gst_value_subtract_from_list):
9214           fix memleak
9215         * testsuite/caps/caps.h:
9216           add a caps that caused segfaults
9217
9218 2004-04-22  Benjamin Otte  <otte@gnome.org>
9219
9220         * testsuite/refcounting/pad.c: (main):
9221           fix test
9222
9223 2004-04-22  Benjamin Otte  <otte@gnome.org>
9224
9225         * gst/gstcaps.c: (gst_caps_subtract):
9226           allow subtracting ANY and EMPTY from ANY caps
9227
9228 2004-04-22  Benjamin Otte  <otte@gnome.org>
9229
9230         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9231         (gst_caps_union):
9232           only simplify in functions that create new caps. Simplifying in
9233           gst_caps_append breaks tests.
9234
9235 2004-04-22  Benjamin Otte  <otte@gnome.org>
9236
9237         * gst/gstcaps.c: (gst_caps_structure_simplify):
9238           unset GValue after use
9239         * gst/gstcaps.c: (gst_caps_append), 
9240         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9241           use gst_caps_simplify (reduces registry size by 30%)
9242         * gst/gstpad.c: (gst_pad_template_new):
9243           don't allow NULL caps
9244
9245 2004-04-22  Benjamin Otte  <otte@gnome.org>
9246
9247         * docs/gst/gstreamer-sections.txt:
9248           add gst_caps_do_simplify
9249         * gst/gstcaps.c:
9250           add documentation for gst_caps_do_simplify
9251         * gst/gstvalue.h:
9252           fix typo in gst_value_register_subtract_func declaration for gst-doc
9253
9254 2004-04-22  Benjamin Otte  <otte@gnome.org>
9255
9256         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9257           fix bug when converting from empty string.
9258         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9259         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9260           use gst_caps_new_empty to allocate a new caps. Only that function
9261           allocates memory for caps now.
9262         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9263         (gst_caps_remove_structure):
9264           add ability to remove one structure (but not to header yet)
9265         * gst/gstcaps.c: (gst_caps_compare_structures),
9266         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9267         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9268         * gst/gstcaps.h:
9269           add gst_caps_do_simplify that tries to simplify a caps in place.
9270           Deprecate old gst_caps_simplify function.
9271         * testsuite/caps/caps.h:
9272           add caps.h containing a common set of caps to test against.
9273         * testsuite/caps/sets.c: (check_caps), (main):
9274           use it.
9275         * testsuite/caps/.cvsignore:
9276         * testsuite/caps/Makefile.am:
9277         * testsuite/caps/simplify.c: (check_caps), (main):
9278           add test to check correctness and efficency of caps simplification.
9279
9280 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9281
9282         reviewed by Benjamin Otte  <otte@gnome.org>
9283
9284         * gst/gstparse.c: (_gst_parse_escape):
9285           Free the GString used in _gst_parse_escape()
9286
9287 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9288
9289         * gst/gstpad.c: (gst_pad_link_negotiate):
9290           refuse to link if the link is not possible
9291         * configure.ac:
9292         * testsuite/Makefile.am:
9293         * testsuite/negotiation/.cvsignore:
9294         * testsuite/negotiation/Makefile.am:
9295         * testsuite/negotiation/pad_link.c: (main):
9296           add test that checks the above behaviour
9297
9298 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9299
9300         * docs/gst/gstreamer-sections.txt:
9301           add newly added API
9302
9303 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9304
9305         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9306         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9307         (gst_filesrc_open_file), (gst_filesrc_close_file),
9308         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9309         * gst/elements/gstfilesrc.h:
9310           add support for non-regular files (#140734)
9311
9312 2004-04-21  Benjamin Otte  <otte@gnome.org>
9313
9314         * gst/gstpad.c: (gst_pad_link_fixate):
9315           add sophisticated error checking code to see if fixation functions
9316           did their fixation right
9317
9318 2004-04-21  Benjamin Otte  <otte@gnome.org>
9319
9320         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9321           check for ANY caps before appending/unioning
9322         * gst/gstcaps.c: (gst_caps_is_subset),
9323         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9324         (gst_caps_structure_subtract), (gst_caps_subtract):
9325         * gst/gstcaps.h:
9326           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9327           the API. deprecate gst_caps_is_equal_fixed
9328         * gst/gstpad.c: (gst_pad_try_set_caps):
9329         * gst/gstqueue.c: (gst_queue_link):
9330           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9331         * gst/gststructure.c: (gst_structure_get_name_id):
9332         * gst/gststructure.h:
9333           add function gst_structure_get_name_id
9334         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9335         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9336         (gst_value_subtract_int_range_int_range),
9337         (gst_value_subtract_double_double_range),
9338         (gst_value_subtract_double_range_double),
9339         (gst_value_subtract_double_range_double_range),
9340         (gst_value_subtract_from_list), (gst_value_subtract_list),
9341         (gst_value_can_intersect), (gst_value_subtract),
9342         (gst_value_can_subtract), (gst_value_register_subtract_func),
9343         (_gst_value_initialize):
9344         * gst/gstvalue.h:
9345           add support for subtracting values from each other. Note that
9346           subtracting means subtracting as in set theory. Required for caps
9347           stuff above.
9348         * testsuite/caps/.cvsignore:
9349         * testsuite/caps/Makefile.am:
9350         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9351         * testsuite/caps/sets.c: (check_caps), (main):
9352         * testsuite/caps/subtract.c: (check_caps), (main):
9353           add tests for subtraction and equality code.
9354
9355 2004-04-20  David Schleef  <ds@schleef.org>
9356
9357         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9358         * gst/indexers/Makefile.am:
9359         * gst/schedulers/Makefile.am:
9360         * libs/gst/bytestream/Makefile.am:
9361         * libs/gst/control/Makefile.am:
9362         * libs/gst/getbits/Makefile.am:
9363
9364 2004-04-20  David Schleef  <ds@schleef.org>
9365
9366         * common/as-libtool.mak: Fine-tune DLL building.
9367         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9368         (like gst-plugins)
9369         * examples/plugins/Makefile.am: remove plugindir
9370         * gst/autoplug/Makefile.am: DLL building fixes
9371         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9372         Windows.
9373         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9374         * gst/indexers/Makefile.am: DLL building fixes
9375         * gst/schedulers/Makefile.am: DLL building fixes.
9376         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9377         * libs/gst/control/Makefile.am: same
9378         * libs/gst/getbits/Makefile.am: same
9379         * testsuite/Makefile.am: New dlopen directory
9380         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9381         when dlopened.
9382         * testsuite/dlopen/dlopen_gst.c: (main): same
9383         * testsuite/dlopen/loadgst.c: (do_test): same
9384
9385 2004-04-20  David Schleef  <ds@schleef.org>
9386
9387         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9388         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9389
9390 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9391
9392         * gst/gstelement.c: (gst_element_wait),
9393         (gst_element_set_time_delay), (gst_element_change_state):
9394           Use GST_TIME_*
9395
9396 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9397
9398         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9399         (gst_spider_identity_plug):
9400           improve debugging messages
9401         * gst/gstbin.c: (gst_bin_remove_func):
9402           make sure the state_change function is only called with simple state
9403           transitions
9404
9405 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9406
9407         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9408         (gst_fakesink_set_property), (gst_fakesink_chain):
9409         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9410         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9411         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9412         * gst/elements/gstidentity.c: (gst_identity_chain),
9413         (gst_identity_set_property):
9414         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9415         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9416           add warnings to _set_property for unknown arguments
9417           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9418
9419 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9420
9421         * Makefile.am:
9422         * docs/manuals.mak:
9423           add .po file download snippet
9424           fix a bug in the doc makefile
9425
9426 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9427
9428         * Makefile.am:
9429         * po/LINGUAS:
9430         * po/en_GB.po:
9431           Added en_GB translation (Gareth Owen)
9432
9433 2004-04-20  Johan Dahlin  <johan@gnome.org>
9434
9435         * gst/gstpad.c (_invent_event): Clean up
9436
9437 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9438
9439         * testsuite/caps/filtercaps.c: (main):
9440           fix test to test things correctly (caps are complicated)
9441
9442 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9443
9444         * testsuite/caps/Makefile.am:
9445         * testsuite/caps/filtercaps.c: (main):
9446           add test (that doesn't work right now, but should)
9447
9448 2004-04-19  David Schleef  <ds@schleef.org>
9449
9450         * configure.ac: Add test for allowing unaligned access.  Add define
9451         to put in gstconfig.h.
9452         * docs/gst/gstreamer-sections.txt: New symbols
9453         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9454         * docs/gst/tmpl/gstfilesrc.sgml:
9455         * docs/gst/tmpl/gstparse.sgml:
9456         * docs/gst/tmpl/gsttypes.sgml:
9457         * docs/gst/tmpl/gstutils.sgml:
9458         * docs/gst/tmpl/gstvalue.sgml:
9459         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9460         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9461         on most !i386/!powerpc architectures.  From Daniel Gazard
9462         <daniel.gazard@free.fr>.  (bug #140156)
9463         * po/af.po: Check in changes made by gettext.
9464         * po/az.po:
9465         * po/fr.po:
9466         * po/nl.po:
9467         * po/sr.po:
9468         * po/sv.po:
9469
9470 2004-04-20  Benjamin Otte  <otte@gnome.org>
9471
9472         * gst/schedulers/entryscheduler.c: 
9473         (gst_entry_scheduler_yield):
9474           refuse to yield when decoupled elements insist on doing that.
9475           At least it's better than crashing
9476
9477 2004-04-19  David Schleef  <ds@schleef.org>
9478
9479         * docs/libs/Makefile.am: Change sinclude to include
9480         * docs/gst/Makefile.am: same
9481         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9482
9483 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9484
9485         * po/LINGUAS:
9486         * po/uk.po:
9487           Added Ukrainian translation (Maxim V. Dziumanenko)
9488
9489 2004-04-19  Johan Dahlin  <johan@gnome.org>
9490
9491         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9492         checking here, do it before calling the function.
9493         Clean up, use for loops instead of while loops while iterating
9494         over lists.
9495
9496         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9497         in debug message.
9498         (gst_spider_create_and_plug): Improve debug message.
9499         General: Replace while loops which iterates over GLists with for
9500         loops. Which are much cleaner, improves readability, especially
9501         for gst_spider_identity_plug
9502
9503         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9504         fixes bug 140477
9505
9506 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9507
9508         * po/LINGUAS:
9509         * po/tr.po:
9510           Added Turkish translation (Baris Cicek)
9511
9512 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9513
9514         * docs/faq/troubleshooting.xml:
9515           Mention gst-register in the FAQ (fixes 139045).
9516
9517 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9518
9519         * docs/gst/gstreamer-sections.txt:
9520
9521 2004-04-17  Benjamin Otte  <otte@gnome.org>
9522
9523         * gst/gstelement.c: (gst_element_dispose):
9524           simplify
9525         * gst/gstpad.c: (gst_pad_call_chain_function):
9526           don't create loads of events due to bad macro usage
9527
9528 2004-04-16  David Schleef  <ds@schleef.org>
9529
9530         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9531         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9532         * gst/gstvalue.c: (gst_value_serialize_buffer),
9533         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9534         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9535         to indicate types that are fixed wrt caps or not.  Switching to
9536         this function fixes (bug #140298).
9537         * gst/gstvalue.h:
9538
9539 2004-04-16  David Schleef  <ds@schleef.org>
9540
9541         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9542         for GST_UNALIGNED_ACESS, since we essentially know which archs
9543         are ok.
9544
9545 2004-04-17  Benjamin Otte  <otte@gnome.org>
9546
9547         * docs/gst/Makefile.am:
9548           ignore gst/parse directory when building docs (fixes #140205)
9549
9550 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9551
9552         * testsuite/refcounting/mem.c: (vmsize):
9553           do error checking
9554
9555 2004-04-16  Johan Dahlin  <johan@gnome.org>
9556
9557         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9558         and gst_pad_call_get_function.
9559
9560 2004-04-15  David Schleef  <ds@schleef.org>
9561
9562         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9563         checks if we can access unaligned memory.
9564         * configure.ac: Use it.
9565
9566 2004-04-16  Benjamin Otte  <otte@gnome.org>
9567
9568         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9569         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9570         * gst/elements/gstfilesrc.h:
9571           s/seek_happened/need_discont/ and require discont before sending any
9572           data
9573
9574 2004-04-15  David Schleef  <ds@schleef.org>
9575
9576         * gst/gstvalue.c: (gst_value_serialize_buffer),
9577         (gst_value_deserialize_buffer), (_gst_value_initialize):
9578         Register these types as fundamental types. (bug #140015)
9579
9580 2004-04-16  Benjamin Otte  <otte@gnome.org>
9581
9582         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9583         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9584         (gst_pad_pull):
9585           implement enforcing discont events before buffers are passed. This
9586           allows state changes of only some elements and later correctly going
9587           on where they left off (or in short: you can now set audio sinks to
9588           NULL to release the device when the pipeline is paused)
9589         * gst/gstpad.c: (gst_pad_call_chain_function),
9590         (gst_pad_call_get_function):
9591         * gst/gstpad.h:
9592           add gst_pad_call_chain_function and gst_pad_call_get_function for
9593           scheduler interaction. They are required because of the changes
9594           above.
9595         * gst/schedulers/entryscheduler.c: (get_buffer),
9596         (gst_entry_scheduler_chain_wrapper),
9597         (gst_entry_scheduler_get_wrapper),
9598         (gst_entry_scheduler_state_transition),
9599         (gst_entry_scheduler_pad_link):
9600         * gst/schedulers/gstbasicscheduler.c:
9601         (gst_basic_scheduler_chain_wrapper),
9602         (gst_basic_scheduler_src_wrapper),
9603         (gst_basic_scheduler_chainhandler_proxy),
9604         (gst_basic_scheduler_gethandler_proxy),
9605         (gst_basic_scheduler_cothreaded_chain),
9606         (gst_basic_scheduler_chain_elements):
9607         * gst/schedulers/gstoptimalscheduler.c:
9608         (get_group_schedule_function), (pad_clear_queued),
9609         (gst_opt_scheduler_pad_link):
9610           use the new functions instead of calling get/chain-functions
9611           directly.
9612
9613 2004-04-15  David Schleef  <ds@schleef.org>
9614
9615         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9616         * docs/gst/tmpl/gstinfo.sgml: same
9617         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
9618         gtk-doc put here.
9619         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
9620         * examples/queue/queue.c: (main):  We iterate pipelines, not
9621         bins.  (bug #139996)
9622
9623 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9624
9625         * docs/pwg/advanced-types.xml:
9626           Add MS RLE support. Also document Qt RLE although I have no sample
9627           files for that yet. And document an extra property for ADPCM.
9628
9629 2004-04-15  David Schleef  <ds@schleef.org>
9630
9631         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
9632         (_gst_plugin_fault_handler_setup):  Disable more stuff on
9633         Windows.
9634
9635 2004-04-15  David Schleef  <ds@schleef.org>
9636
9637         * gst/gstinfo.c: (_gst_debug_init): Change some internal
9638         symbol names to not conflict with new gstinfo.h symbols.
9639         * gst/gstinfo.h: Add inline functions for all those crazy
9640         compilers that don't know how to handle variadic macros (MSVC).
9641
9642 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9643
9644         * configure.ac: bump nano to 1
9645
9646 === release 0.8.1 ===
9647
9648 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9649
9650         * NEWS:
9651         * RELEASE:
9652         * configure.ac:
9653           releasing 0.8.1, "Snow Brigade"
9654
9655 2004-04-14  David Schleef  <ds@schleef.org>
9656
9657         * testsuite/Makefile.am: define tests_ignore
9658         * testsuite/Rules: Added new tests_ignore, which get compiled,
9659         but not run (generally because they're inconsistent or have
9660         heisenbugs).  Now we can ensure all the .c files compile in
9661         testsuite/.
9662         * testsuite/bins/Makefile.am: define tests_ignore
9663         * testsuite/bytestream/Makefile.am:
9664         * testsuite/caps/Makefile.am:
9665         * testsuite/clock/Makefile.am:
9666         * testsuite/debug/Makefile.am:
9667         * testsuite/debug/global.c: (gst_debug_log_one),
9668         (gst_debug_log_two): Fix compilation problem.
9669         * testsuite/dynparams/Makefile.am:
9670         * testsuite/elements/Makefile.am:
9671         * testsuite/ghostpads/Makefile.am:
9672         * testsuite/indexers/Makefile.am:
9673         * testsuite/parse/Makefile.am:
9674         * testsuite/plugin/Makefile.am:
9675         * testsuite/refcounting/Makefile.am:
9676         * testsuite/refcounting/element_pad.c: (main): Don't return leak
9677         results, because it's not calculated correctly.
9678         * testsuite/refcounting/pad.c: (main): same
9679         * testsuite/states/Makefile.am:
9680         * testsuite/tags/Makefile.am:
9681         * testsuite/threads/Makefile.am:
9682
9683 2004-04-14  David Schleef  <ds@schleef.org>
9684
9685         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
9686         generating bad code around the cpu detection asm code.
9687
9688 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9689
9690         * tools/gst-inspect.c: (print_element_info):
9691           print numeric version of rank as well, since we added some - 1
9692           rank values to elements
9693
9694 2004-04-13  David Schleef  <ds@schleef.org>
9695
9696         * configure.ac:  Disable various code when compiling for MinGW.
9697         * gst/elements/Makefile.am:
9698         * gst/elements/gstelements.c:
9699         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9700         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
9701         * gst/registries/gstxmlregistry.c: (make_dir):
9702
9703 2004-04-13  David Schleef  <ds@schleef.org>
9704
9705         * gst/Makefile.am:
9706         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
9707         assembly.
9708         * gst/gstcpuid_i386.s: remove
9709
9710 2004-04-13  David Schleef  <ds@schleef.org>
9711
9712         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
9713         seems to think it needs to be done.
9714         * docs/gst/tmpl/gstfakesink.sgml:
9715         * docs/gst/tmpl/gstfakesrc.sgml:
9716         * docs/gst/tmpl/gstfdsink.sgml:
9717         * docs/gst/tmpl/gstfdsrc.sgml:
9718         * docs/gst/tmpl/gstfilesink.sgml:
9719         * docs/gst/tmpl/gstfilesrc.sgml:
9720         * docs/gst/tmpl/gstidentity.sgml:
9721         * docs/gst/tmpl/gstmd5sink.sgml:
9722         * docs/gst/tmpl/gstmultifilesrc.sgml:
9723         * docs/gst/tmpl/gstpipefilter.sgml:
9724         * docs/gst/tmpl/gstshaper.sgml:
9725         * docs/gst/tmpl/gstspider.sgml:
9726         * docs/gst/tmpl/gstspideridentity.sgml:
9727         * docs/gst/tmpl/gststatistics.sgml:
9728         * docs/gst/tmpl/gsttee.sgml:
9729         * docs/gst/tmpl/gsttypefind.sgml:
9730         * docs/gst/tmpl/gstutils.sgml:
9731
9732 2004-04-13  David Schleef  <ds@schleef.org>
9733
9734         * configure.ac: Changes to remove POSIXisms (mmap in this case)
9735         and to build DLLs on Windows.
9736         * gst/Makefile.am:
9737         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9738         (gst_filesrc_open_file):
9739         * gst/schedulers/Makefile.am:
9740
9741 2004-04-13  David Schleef  <ds@schleef.org>
9742
9743         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
9744         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
9745         fixating lists.
9746
9747 2004-04-12  David Schleef  <ds@schleef.org>
9748
9749         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
9750         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
9751         to using it.
9752         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
9753         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
9754         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
9755         * gst/gststructure.c: (gst_structure_set_valist),
9756         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
9757         support for buffers.
9758         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
9759         intended to be const.
9760         * gst/gsttag.h: same
9761         * gst/gstvalue.c: (gst_value_serialize_buffer),
9762         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
9763         to (de)serialize buffers.
9764         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
9765         * testsuite/caps/string-conversions.c: (main):
9766         * testsuite/caps/value_serialize.c: add new test
9767
9768 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9769
9770         * docs/pwg/advanced-types.xml:
9771           Document MS video 1 (video/x-msvideocodec) mimetype/format.
9772
9773 2004-04-11  Benjamin Otte  <otte@gnome.org>
9774
9775         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
9776           rename categories to basic_*
9777         * gst/schedulers/gstbasicscheduler.c: 
9778         (gst_basic_scheduler_chain_wrapper),
9779         (gst_basic_scheduler_chainhandler_proxy),
9780         (gst_basic_scheduler_gethandler_proxy),
9781         (gst_basic_scheduler_eventhandler_proxy):
9782           debugging category fixes - put common stuff in log category
9783         * gst/schedulers/gstbasicscheduler.c: 
9784         (gst_basic_scheduler_chain_elements):
9785           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
9786           active and linking two active chains
9787
9788 2004-04-10  Benjamin Otte  <otte@gnome.org>
9789
9790         * docs/pwg/intro-preface.xml:
9791           fix dead links and remove reference to Wiki
9792
9793 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9794
9795         * gst/schedulers/gstbasicscheduler.c:
9796           make sure we can switch back to the main function if we're still in
9797           the main function (supposed to fix #139617)
9798         * gst/schedulers/gthread-cothreads.h:
9799           don't throw an error when switching to the same cothread
9800
9801 2004-04-09  Benjamin Otte  <otte@gnome.org>
9802
9803         * gst/gstbin.c: (gst_bin_get_type):
9804         * gst/gstclock.c: (gst_clock_get_type):
9805         * gst/gstindex.c: (gst_index_get_type):
9806         * gst/gstobject.c: (gst_object_get_type),
9807         (gst_signal_object_get_type):
9808         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
9809         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
9810         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
9811         * gst/gstqueue.c: (gst_queue_get_type):
9812         * gst/gstregistry.c: (gst_registry_get_type):
9813         * gst/gstsystemclock.c: (gst_system_clock_get_type):
9814         * gst/gstthread.c: (gst_thread_get_type):
9815           don't use memchunks for these objects, use malloc instead
9816
9817 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9818
9819         * docs/gst/.cvsignore:
9820         * docs/gst/Makefile.am:
9821         * docs/gst/gstreamer-sections.txt:
9822         * docs/gst/tmpl/gstaggregator.sgml:
9823         * docs/gst/tmpl/gstbuffer.sgml:
9824         * docs/gst/tmpl/gstclock.sgml:
9825         * docs/gst/tmpl/gstelement.sgml:
9826         * docs/gst/tmpl/gstfakesink.sgml:
9827         * docs/gst/tmpl/gstfakesrc.sgml:
9828         * docs/gst/tmpl/gstfdsink.sgml:
9829         * docs/gst/tmpl/gstfdsrc.sgml:
9830         * docs/gst/tmpl/gstfilesink.sgml:
9831         * docs/gst/tmpl/gstfilesrc.sgml:
9832         * docs/gst/tmpl/gstidentity.sgml:
9833         * docs/gst/tmpl/gstindex.sgml:
9834         * docs/gst/tmpl/gstinfo.sgml:
9835         * docs/gst/tmpl/gstmd5sink.sgml:
9836         * docs/gst/tmpl/gstmultifilesrc.sgml:
9837         * docs/gst/tmpl/gstpad.sgml:
9838         * docs/gst/tmpl/gstpipefilter.sgml:
9839         * docs/gst/tmpl/gstpipeline.sgml:
9840         * docs/gst/tmpl/gstpluginfeature.sgml:
9841         * docs/gst/tmpl/gstqueue.sgml:
9842         * docs/gst/tmpl/gstregistry.sgml:
9843         * docs/gst/tmpl/gstscheduler.sgml:
9844         * docs/gst/tmpl/gstshaper.sgml:
9845         * docs/gst/tmpl/gstspider.sgml:
9846         * docs/gst/tmpl/gstspideridentity.sgml:
9847         * docs/gst/tmpl/gststatistics.sgml:
9848         * docs/gst/tmpl/gstsystemclock.sgml:
9849         * docs/gst/tmpl/gsttee.sgml:
9850         * docs/gst/tmpl/gstthread.sgml:
9851         * docs/gst/tmpl/gsttypefind.sgml:
9852         * docs/gst/tmpl/gstutils.sgml:
9853           further doc build fixes
9854
9855 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9856
9857         * docs/gst/Makefile.am:
9858           make docs exit on scanning problems
9859           fix nonsrcdir build issues
9860         * docs/gst/gstreamer-sections.txt:
9861           adding stuff from -unused
9862         * gst/gstqueue.h:
9863           create GstQueueSize
9864         * gst/schedulers/cothreads_compat.h:
9865           fix cothread warnings
9866
9867 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9868
9869         * docs/gst/gstreamer-sections.txt:
9870           remove defines deprecated by Benjamin
9871
9872 2004-04-07  Benjamin Otte  <otte@gnome.org>
9873
9874         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9875           when the buffer is complete, don't check if other buffers are needed
9876         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
9877           check that the offset is >0 so we don't try to read before the
9878           beginning of the file
9879         * gst/gstpad.c: (gst_pad_set_pad_template):
9880           sink the template, so we don't end up with 130k pad templates
9881
9882 2004-04-06  Benjamin Otte  <otte@gnome.org>
9883
9884         * gst/autoplug/gstspider.c: (gst_spider_link_add):
9885           don't ref the element, adding already reffed it. And we didn't unref
9886           it later anyway... (huge memleak when you used many spider elements)
9887         * gst/gstelement.c: (gst_element_base_class_finalize):
9888         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
9889         (gst_element_register):
9890         * gst/gsturi.c: (gst_element_make_from_uri):
9891           use gst_object_(un)ref instead of g_object(un)ref
9892
9893 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9894
9895         * gst/gstbuffer.h:
9896           remove macro that wouldn't work anymore because struct member has
9897           been removed.
9898         * gst/schedulers/entryscheduler.c: (schedule_forward):
9899           fix segfault for unconnected pads
9900         
9901 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9902
9903         reviewed by David Schleef <ds@schleef.org>
9904
9905         * gst/gstinfo.h:
9906           *_FORMAT modifiers should require putting a % in front of them for
9907           consistency reasons.
9908
9909 2004-04-05  Colin Walters  <walters@redhat.com>
9910
9911         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
9912         space.
9913
9914 2004-04-05  Benjamin Otte  <otte@gnome.org>
9915
9916         * configure.ac:
9917         * gst/Makefile.am:
9918         * gst/gst_private.h:
9919         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
9920           add support for detecting if GStreamer runs inside valgrind.
9921           requires valgrind (d'oh) and --enable-debug for correct cdetection.
9922           print a big message in valgrind that GStreamer has detected it's
9923           running inside and might now use different code.
9924         * gst/gstmemchunk.c: (populate), (free_area),
9925         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
9926         (gst_mem_chunk_free):
9927           flag memchunks for valgrind, so it can detect leaking of chunks.
9928           This allows detecting leaks of GstBuffer and GstEvent correctly
9929           inside valgrind.
9930
9931 2004-04-05  David Schleef  <ds@schleef.org>
9932
9933         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
9934           jensgr@gmx.net (Jens Granseuer)
9935
9936 2004-04-05  David Schleef  <ds@schleef.org>
9937
9938         * gst/gstbuffer.c: (_gst_buffer_sub_free),
9939         (gst_buffer_default_free), (gst_buffer_default_copy),
9940         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
9941         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
9942         structures in one place.
9943
9944 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9945
9946         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
9947           (GST_TIME_FORMAT, GST_TIME_ARGS)
9948
9949 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9950
9951         * testsuite/elements/Makefile.am:
9952           disable test until it stops breaking make distcheck
9953
9954 2004-04-05  Johan Dahlin  <johan@gnome.org>
9955
9956         * po/sv.po: Updated translation
9957
9958 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9959
9960         * gst/gstplugin.c: (gst_plugin_load_file):
9961           fix segfault for when original plugin was loaded statically
9962
9963 2004-04-05  Benjamin Otte  <otte@gnome.org>
9964
9965         * testsuite/debug/category.c: (main):
9966         * testsuite/debug/commandline.c: (main):
9967         * testsuite/debug/output.c: (main):
9968           fix tests to work again with debugging enabled
9969
9970 2004-04-05  Benjamin Otte  <otte@gnome.org>
9971
9972         * gst/schedulers/gstbasicscheduler.c:
9973         (gst_basic_scheduler_pad_link):
9974           fix to work with recent scheduling changes
9975
9976 2004-04-05  Benjamin Otte  <otte@gnome.org>
9977
9978         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
9979         prepareChangeLog doesn't work when cvs indents):
9980           don't throw an error when no element can be scheduled, there's too
9981           many weird reasons why it doesn't work. Return STOPPED instead.
9982           decoupled elemts' schedulability doesn't depend on bufpens.
9983
9984 2004-04-04  Benjamin Otte  <otte@gnome.org>
9985
9986         * gst/schedulers/gstbasicscheduler.c:
9987         (gst_basic_scheduler_pad_select):
9988           fix uninitialized variable warnings
9989
9990 2004-04-04  Benjamin Otte  <otte@gnome.org>
9991
9992         * gst/gstpad.c: (gst_pad_collect_valist):
9993           fix uninitialized variable warning
9994         * gst/schedulers/entryscheduler.c: (schedule_forward):
9995           fix shadowed variable
9996
9997 2004-04-04  Benjamin Otte  <otte@gnome.org>
9998
9999         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
10000         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
10001         (gst_pad_select):
10002         * gst/gstpad.h:
10003         * gst/gstscheduler.c: (gst_scheduler_pad_select),
10004         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
10005         * gst/gstscheduler.h:
10006           implement gst_pad_collect as replacement for gst_pad_select.
10007           deprecate gst_pad_select and gst_scheduler_(un)lock_element
10008           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
10009           new pad_select, lock and unlock calls.
10010         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
10011         * gst/cothreads.h:
10012         * gst/schedulers/cothreads_compat.h:
10013         * gst/schedulers/gthread-cothreads.h:
10014           remove unused cothread_lock and cothread_unlock calls
10015         * gst/schedulers/entryscheduler.c:
10016         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10017         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10018         (gst_entry_scheduler_pad_select):
10019           update to new API
10020         * gst/schedulers/gstbasicscheduler.c:
10021         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10022         (gst_basic_scheduler_pad_select):
10023           remove useless lock and unlock calls, update pad_select to new API
10024           (untested)
10025         * gst/schedulers/gstoptimalscheduler.c:
10026         (gst_opt_scheduler_class_init):
10027           remove useless select, lock and unlock function calls
10028         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10029           use gst_pad_collect instead of gst_pad_select
10030
10031 2004-04-04  Benjamin Otte  <otte@gnome.org>
10032
10033         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10034         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10035         (schedule_next_element), (print_entry):
10036           add can_schedule_pad to handle element states.
10037           add schedule_forward to select the correct entry to schedule next
10038
10039 2004-04-03  Benjamin Otte  <otte@gnome.org>
10040
10041         * gst/schedulers/entryscheduler.c: 
10042           remove unused variable, fix error inside Rb, fix compile warning in
10043           unreachable code
10044
10045 2004-04-03  Benjamin Otte  <otte@gnome.org>
10046
10047         * gst/schedulers/entryscheduler.c:
10048           completely revamp the inner workings, so it's a lot easier to
10049           understand and extend
10050
10051 2004-04-03  Andy Wingo  <wingo@pobox.com>
10052
10053         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10054         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10055         This allows better introspection of pipeline topology.
10056         (add_to_chain): Don't do trickery to put loop elements first;
10057         rather, queue a chain sort by marking the chain as dirty.
10058         (remove_from_chain): Mark the chain dirty.
10059         (sort_chain): New function. Sorts the group list so that terminal
10060         sinks are first. This means elements on the sink side will be
10061         preferentially sscheduled before elements on the src side of the
10062         pipeline.
10063         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10064         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10065         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10066         (group_inc_link): Change argument and variable names to match the
10067         new link structure member names (src and sink).
10068         (group_dec_link): Add some description
10069
10070 2004-04-03  Benjamin Otte  <otte@gnome.org>
10071
10072         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10073         * gst/gstinfo.h:
10074         * testsuite/debug/category.c: (main):
10075         * testsuite/debug/commandline.c: (main):
10076         * testsuite/debug/output.c: (main):
10077         * testsuite/debug/printf_extension.c: (main):
10078           fix to successfully build and test with --disable-gst-debug
10079           configure switch (fixes #138705)
10080
10081 2004-04-03  Benjamin Otte  <otte@gnome.org>
10082
10083         * docs/pwg/building-boiler.xml:
10084           add cvs login line and s/anonymous/anoncvs/
10085
10086 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10087
10088         reviewed by Benjamin Otte  <otte@gnome.org>
10089
10090         * gst/gststructure.c: (gst_structure_free):
10091           memleak fix: free fields array (partial fix for #134839)
10092
10093 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10094
10095         * docs/random/ds/0.9-suggested-changes:
10096           Add a note to change handoff use in fakesrc to be usable in
10097           a more generic way (fakesrc should be renamed to appsrc or so).
10098         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10099           Change signal type to scope, so we can fill the buffer in the
10100           handoff handler (that's the whole use of this signal...).
10101
10102 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10103
10104         * docs/pwg/other-ntoone.xml:
10105           Document muxers and n-to-1 elements.
10106
10107 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10108
10109         * gst/registries/gstxmlregistry.c
10110         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10111         determine if a file is a G_MODULE. The old one discards paths
10112         containing "so" somewhere in the middle. My home directory is
10113         called "soto". Go figure...
10114
10115 2004-03-31  David Schleef  <ds@schleef.org>
10116
10117         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10118         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10119         * gst/gstbuffer.h:
10120
10121 2004-03-31  David Schleef  <ds@schleef.org>
10122
10123         * gst/gstvalue.c: (gst_value_union_int_int_range),
10124         (gst_value_union_int_range_int_range), (gst_value_can_union),
10125         (gst_value_union), (_gst_value_initialize):  Add some union
10126         implementations.  We didn't have any previously.
10127         * testsuite/caps/Makefile.am:
10128         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10129         (gst_audioscale_getcaps), (test_caps), (main): A little test
10130         that is the same as the caps manipulation in audioscale.
10131
10132 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10133
10134         * docs/faq/general.xml:
10135           add entry about "does gst support format X?"
10136
10137 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10138
10139         * gst/gstthread.c:
10140           fix docs
10141         * gst/gstutils.h:
10142           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10143
10144 2004-03-30  Benjamin Otte  <otte@gnome.org>
10145
10146         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10147           set the offset of the buffer to the requested offset
10148         * gst/elements/gsttypefind.c: (stop_typefinding):
10149           revert patch 1.18 (which I unfortunately don't know the reason for).
10150           This is needed to allow downstream elements to seek. Otherwise
10151           typefind might overwrite a previous seek by downstream elements.
10152           This lead to errors with id3tag and typefind on some mp3s.
10153         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10154         (gst_entry_scheduler_iterate):
10155           be more verbose when debugging
10156
10157 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10158
10159         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10160           make sure we don't get NULL strings
10161
10162 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10163
10164         * gst/gstcaps.c:
10165         * gst/gstelement.c:
10166         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10167         * gst/gstindex.c: (gst_index_resolver_get_type),
10168         (gst_index_get_type), (gst_index_factory_get_type):
10169         * gst/gstinfo.c:
10170         * gst/gstpad.c:
10171         * gst/gstplugin.c:
10172         * gst/gsturi.c: (gst_uri_handler_get_type):
10173         * gst/gstvalue.c:
10174           first batch of documentation fixes
10175
10176 2004-03-29  David Schleef  <ds@schleef.org>
10177
10178         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10179         * docs/gst/gstreamer-docs.sgml:  More hacking
10180         * docs/gst/gstreamer-sections.txt:
10181         * docs/gst/tmpl/cothreads_compat.sgml:
10182         * docs/gst/tmpl/gstcaps.sgml:
10183         * docs/gst/tmpl/gstclock.sgml:
10184         * docs/gst/tmpl/gstelement.sgml:
10185         * docs/gst/tmpl/gstevent.sgml:
10186         * docs/gst/tmpl/gstpad.sgml:
10187         * docs/gst/tmpl/gstutils.sgml:
10188         * docs/gst/tmpl/gstxml.sgml:
10189         * docs/gst/tmpl/gthread-cothreads.sgml:
10190         * docs/random/ds/0.9-suggested-changes:
10191         * gst/elements/gstfakesink.h: doc fixes
10192         * gst/elements/gstfakesrc.h: doc fixes
10193         * gst/gstcaps.c: doc fixes
10194         * gst/gstcaps.h: doc fixes
10195         * gst/gstelement.c: doc fixes
10196         * gst/gstelement.h: doc fixes
10197         * gst/gstindex.c: doc fixes
10198         * gst/gstinfo.c: doc fixes
10199         * gst/gstpad.c: doc fixes
10200         * gst/gstpad.h: doc fixes
10201         * gst/gstplugin.c: doc fixes
10202         * gst/gsttypefind.h: doc fixes
10203         * gst/gsturi.c: doc fixes
10204         * gst/gstvalue.c: doc fixes
10205
10206 2004-03-29  Colin Walters  <walters@redhat.com>
10207
10208         * gst/registries/gstxmlregistry.c (get_time)
10209         (plugin_times_older_than_recurse):
10210         Use the result of stat to determine whether a path is a file,
10211         so we don't attempt to opendir() files.
10212
10213 2004-03-29  Benjamin Otte  <otte@gnome.org>
10214
10215         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10216           print caps in debugging output when setting caps failed
10217         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10218         (schedule_next_element), (get_buffer), (run_chainhandler),
10219         (element_may_start), (gst_entry_scheduler_chain_handler),
10220         (gst_entry_scheduler_get_handler),
10221         (gst_entry_scheduler_state_transition),
10222         (gst_entry_scheduler_pad_link):
10223           make this scheduler a testcase for mandatory
10224           discont-before-first-buffer which is needed if we want to allow apps
10225           to release the sound device.
10226           add SCHED_ASSERT macro to print scheduler state before an assertion
10227           triggers.
10228
10229 2004-03-29  Benjamin Otte  <otte@gnome.org>
10230
10231         * COPYING:
10232           replace by LGPL (former COPYING.LIB). The core is completely
10233           licensed LGPL.
10234         * COPYING.LIB:
10235           remove
10236
10237 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10238
10239         * po/af.po:
10240         * po/sv.po:
10241           updated Afrikaans and Swedish
10242
10243 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10244
10245         * po/LINGUAS:
10246         * po/az.po:
10247           adding Azerbaijani (Mətin Əmirov)
10248
10249 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10250
10251         * gst/gstelement.h: 
10252         * gst/gstelement.c (gst_element_set_time_delay): New function for
10253         setting element time taking into account a hardware buffering
10254         delay.
10255         (gst_element_set_time): Now just an invocation of
10256         gst_element_set_time_delay.
10257         * gst/gstclock.h: 
10258         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10259         allowing to set event times in the future.
10260         (gst_clock_get_event_time): Now just an invocation of
10261         gst_clock_get_event_time_delay.
10262
10263 2004-03-28  Benjamin Otte  <otte@gnome.org>
10264
10265         * gst/gstbin.c: (gst_bin_set_element_sched),
10266         (gst_bin_unset_element_sched):
10267           don't add decoupled elements to schedulers - otherwise it's
10268           impossible to control if a link to a decoupled element was already
10269           removed from a scheduler or not.
10270         * gst/schedulers/cothreads_compat.h:
10271         * gst/schedulers/gthread-cothreads.h:
10272           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10273           is no "unused" warning.
10274         * gst/schedulers/Makefile.am:
10275         * gst/schedulers/entryscheduler.c:
10276           add new scheduler, based on ideas from talking to David and Martin.
10277           It's supposed to be small and correct. Currently it's also slow (but
10278           it's not noticable)
10279         * examples/retag/retag.c: (main):
10280         * testsuite/bytestream/test1.c: (main):
10281           fix missing NULLs at end of variadic functions
10282         * testsuite/elements/.cvsignore:
10283           update
10284
10285 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10286
10287         * gst/gstevent.h:
10288         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10289
10290 2004-03-25  David Schleef  <ds@schleef.org>
10291
10292         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10293         * docs/gst/tmpl/gstaggregator.sgml:
10294         * docs/gst/tmpl/gstautoplugfactory.sgml:
10295         * docs/gst/tmpl/gstbin.sgml:
10296         * docs/gst/tmpl/gstbuffer.sgml:
10297         * docs/gst/tmpl/gstbufferstore.sgml:
10298         * docs/gst/tmpl/gstfakesink.sgml:
10299         * docs/gst/tmpl/gstfakesrc.sgml:
10300         * docs/gst/tmpl/gstmd5sink.sgml:
10301         * docs/gst/tmpl/gstreamer-unused.sgml:
10302         * docs/gst/tmpl/gstsearchfuncs.sgml:
10303         * docs/gst/tmpl/gstshaper.sgml:
10304         * docs/gst/tmpl/gstspider.sgml:
10305         * docs/gst/tmpl/gsttee.sgml:
10306         * docs/gst/tmpl/gstutils.sgml:
10307         * docs/gst/tmpl/gstvalue.sgml:
10308         * docs/gst/tmpl/gstxml.sgml:
10309         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10310         and we don't support it.
10311         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10312         (gst_use_threads), (gst_has_threads): same
10313         * gst/gstthreaddummy.c: same
10314         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10315         * gst/autoplug/gstspider.h: same
10316         * gst/elements/gstaggregator.h: Remove bogus function from header
10317         * gst/elements/gstfakesink.h: same
10318         * gst/elements/gstfakesrc.h: same
10319         * gst/elements/gstmd5sink.h: same
10320         * gst/elements/gstshaper.h: same
10321         * gst/elements/gsttee.h: same
10322         * gst/gstbin.c: doc fixes
10323         * gst/gstbin.h: Remove unused definition.
10324         * gst/gstbuffer.c: doc fixes
10325         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10326         * gst/gstfilter.c: doc fixes
10327         * gst/gsttag.c: doc fixes
10328         * gst/gstvalue.c: doc fixes
10329
10330 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10331
10332         * docs/pwg/advanced-types.xml:
10333           Document typefinding.
10334         * docs/pwg/other-oneton.xml:
10335           Document one-to-n elements, demuxers and parsers.
10336
10337 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10338
10339         reviewed by: David Schleef  <ds@schleef.org>
10340
10341         * configure.ac: Check bison version (bug #127838)
10342
10343 2004-03-25  David Schleef  <ds@schleef.org>
10344
10345         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10346         * docs/gst/gstreamer-sections.txt:
10347         * docs/gst/tmpl/gstautoplug.sgml:
10348         * docs/gst/tmpl/gststaticautoplug.sgml:
10349         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10350         * docs/gst/tmpl/gstutils.sgml:
10351         * docs/gst/tmpl/gstxml.sgml:
10352
10353 2004-03-24  David Schleef  <ds@schleef.org>
10354
10355         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10356         manual being such complete crap, that I decided to do major
10357         hacking of it.  This checkin replaces any fine tuning that
10358         may have been done previously, with the benefit of actually
10359         being complete for much of the API that was changed since
10360         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10361         * docs/gst/gstreamer-sections.txt:
10362         * docs/gst/tmpl/GstBin.sgml:
10363         * docs/gst/tmpl/GstBuffer.sgml:
10364         * docs/gst/tmpl/GstCaps.sgml:
10365         * docs/gst/tmpl/GstClock.sgml:
10366         * docs/gst/tmpl/GstCompat.sgml:
10367         * docs/gst/tmpl/GstData.sgml:
10368         * docs/gst/tmpl/GstElement.sgml:
10369         * docs/gst/tmpl/GstEvent.sgml:
10370         * docs/gst/tmpl/GstIndex.sgml:
10371         * docs/gst/tmpl/GstStructure.sgml:
10372         * docs/gst/tmpl/GstTag.sgml:
10373         * docs/gst/tmpl/cothreads.sgml:
10374         * docs/gst/tmpl/cothreads_compat.sgml:
10375         * docs/gst/tmpl/gettext.sgml:
10376         * docs/gst/tmpl/grammar.tab.sgml:
10377         * docs/gst/tmpl/gst-i18n-app.sgml:
10378         * docs/gst/tmpl/gst-i18n-lib.sgml:
10379         * docs/gst/tmpl/gst.sgml:
10380         * docs/gst/tmpl/gst_private.sgml:
10381         * docs/gst/tmpl/gstaggregator.sgml:
10382         * docs/gst/tmpl/gstarch.sgml:
10383         * docs/gst/tmpl/gstatomic.sgml:
10384         * docs/gst/tmpl/gstatomic_impl.sgml:
10385         * docs/gst/tmpl/gstbin.sgml:
10386         * docs/gst/tmpl/gstbuffer.sgml:
10387         * docs/gst/tmpl/gstbufferstore.sgml:
10388         * docs/gst/tmpl/gstcaps.sgml:
10389         * docs/gst/tmpl/gstclock.sgml:
10390         * docs/gst/tmpl/gstcompat.sgml:
10391         * docs/gst/tmpl/gstconfig.sgml:
10392         * docs/gst/tmpl/gstcpu.sgml:
10393         * docs/gst/tmpl/gstdata.sgml:
10394         * docs/gst/tmpl/gstdata_private.sgml:
10395         * docs/gst/tmpl/gstelement.sgml:
10396         * docs/gst/tmpl/gstenumtypes.sgml:
10397         * docs/gst/tmpl/gsterror.sgml:
10398         * docs/gst/tmpl/gstevent.sgml:
10399         * docs/gst/tmpl/gstfakesink.sgml:
10400         * docs/gst/tmpl/gstfakesrc.sgml:
10401         * docs/gst/tmpl/gstfilesink.sgml:
10402         * docs/gst/tmpl/gstfilter.sgml:
10403         * docs/gst/tmpl/gstindex.sgml:
10404         * docs/gst/tmpl/gstinfo.sgml:
10405         * docs/gst/tmpl/gstinterface.sgml:
10406         * docs/gst/tmpl/gstlog.sgml:
10407         * docs/gst/tmpl/gstmacros.sgml:
10408         * docs/gst/tmpl/gstmarshal.sgml:
10409         * docs/gst/tmpl/gstmd5sink.sgml:
10410         * docs/gst/tmpl/gstmultifilesrc.sgml:
10411         * docs/gst/tmpl/gstobject.sgml:
10412         * docs/gst/tmpl/gstpad.sgml:
10413         * docs/gst/tmpl/gstparse.sgml:
10414         * docs/gst/tmpl/gstpipeline.sgml:
10415         * docs/gst/tmpl/gstplugin.sgml:
10416         * docs/gst/tmpl/gstpluginfeature.sgml:
10417         * docs/gst/tmpl/gstqueue.sgml:
10418         * docs/gst/tmpl/gstreamer-unused.sgml:
10419         * docs/gst/tmpl/gstregistry.sgml:
10420         * docs/gst/tmpl/gstregistrypool.sgml:
10421         * docs/gst/tmpl/gstscheduler.sgml:
10422         * docs/gst/tmpl/gstsearchfuncs.sgml:
10423         * docs/gst/tmpl/gstshaper.sgml:
10424         * docs/gst/tmpl/gstspider.sgml:
10425         * docs/gst/tmpl/gstspideridentity.sgml:
10426         * docs/gst/tmpl/gststructure.sgml:
10427         * docs/gst/tmpl/gstsystemclock.sgml:
10428         * docs/gst/tmpl/gsttag.sgml:
10429         * docs/gst/tmpl/gsttaginterface.sgml:
10430         * docs/gst/tmpl/gsttee.sgml:
10431         * docs/gst/tmpl/gstthread.sgml:
10432         * docs/gst/tmpl/gsttrace.sgml:
10433         * docs/gst/tmpl/gsttrashstack.sgml:
10434         * docs/gst/tmpl/gsttypefind.sgml:
10435         * docs/gst/tmpl/gsttypes.sgml:
10436         * docs/gst/tmpl/gsturi.sgml:
10437         * docs/gst/tmpl/gsturitype.sgml:
10438         * docs/gst/tmpl/gstutils.sgml:
10439         * docs/gst/tmpl/gstvalue.sgml:
10440         * docs/gst/tmpl/gstversion.sgml:
10441         * docs/gst/tmpl/gstxml.sgml:
10442         * docs/gst/tmpl/gstxmlregistry.sgml:
10443         * docs/gst/tmpl/gthread-cothreads.sgml:
10444         * docs/gst/tmpl/types.sgml:
10445
10446 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10447
10448         * docs/pwg/other-sink.xml:
10449         * docs/pwg/other-source.xml:
10450           Documentation on how to write source and sink elements. Other
10451           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10452           manager, autoplugger) are all still pending.
10453
10454 2004-03-25  Benjamin Otte  <otte@gnome.org>
10455
10456         * testsuite/elements/Makefile.am:
10457         * testsuite/elements/gst-compprep-check:
10458           add check to make sure gst-compprep works
10459         * testsuite/elements/gst-inspect-check.in:
10460           improve initialization output
10461         * testsuite/Makefile.am:
10462         * testsuite/gst-inspect-check:
10463           remove old file
10464
10465 2004-03-24  David Schleef  <ds@schleef.org>
10466
10467         * testsuite/elements/Makefile.am:
10468         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10469         to the testsuite.
10470
10471 2004-03-24  Benjamin Otte  <otte@gnome.org>
10472
10473         * libs/gst/control/dparam.c: (gst_dparam_attach),
10474         (gst_dparam_detach):
10475         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10476           fix lvalue casts for real
10477
10478 2004-03-24  Benjamin Otte  <otte@gnome.org>
10479
10480         * gst/schedulers/gstbasicscheduler.c:
10481         (gst_basic_scheduler_src_wrapper):
10482         * gst/schedulers/gstoptimalscheduler.c:
10483         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10484         (pad_clear_queued), (gst_opt_scheduler_add_element),
10485         (gst_opt_scheduler_remove_element):
10486           fix GStreamer to not have issues with lvalue casts anymore (fixes
10487           #136841)
10488
10489 2004-03-24  Benjamin Otte  <otte@gnome.org>
10490
10491         * gst/gstelement.c:
10492           add documentation about a gobject quirk where the object hasn't the
10493           correct class pointer set on initialization
10494         * gst/schedulers/gstbasicscheduler.c:
10495         (gst_basic_scheduler_src_wrapper):
10496           make sure to not run into an infinite loop
10497
10498 2004-03-22  Benjamin Otte  <otte@gnome.org>
10499
10500         * gst/gstutils.c: (gst_util_dump_mem):
10501         * gst/gstutils.h:
10502           first argument of gst_util_dump_mem should be const
10503
10504 2004-03-22  Johan Dahlin  <johan@gnome.org>
10505
10506         * gst/gstvalue.h: Clean up a little bit.
10507
10508 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10509
10510         reviewed by Benjamin Otte  <otte@gnome.org>
10511
10512         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10513         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10514         (gst_aggregator_class_init), (gst_aggregator_init):
10515         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10516         (gst_filesrc_dispose), (gst_filesrc_set_location):
10517         * gst/elements/gstidentity.c: (gst_identity_finalize),
10518         (gst_identity_class_init), (gst_identity_chain):
10519         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10520         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10521         (gst_statistics_class_init):
10522         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10523         (gst_tee_get_property):
10524           clean up used memory in this elements correctly on teardown (closes
10525           #137279)
10526
10527 2004-03-20  Colin Walters  <walters@redhat.com>
10528
10529         * gst/registries/gstxmlregistry.c:
10530         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10531         registry saving atomic.
10532
10533 2004-03-20  Colin Walters  <walters@redhat.com>
10534
10535         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10536         Just use
10537         access() instead of actually creating and deleting files.
10538
10539 2004-03-18  David Schleef  <ds@schleef.org>
10540
10541         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10542         (bug #137625)
10543
10544 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10545
10546         * po/sv.po: updated translation (Christian Rose)
10547
10548 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10549
10550         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10551         (gst_filesink_get_query_types), (_do_init),
10552         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10553           return FALSE silently
10554         * po/af.po: updated translation (Petri Jooste)
10555
10556 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10557
10558         * Makefile.am:
10559         * configure.ac:
10560           dist common properly
10561         * po/af.po:
10562         * po/fr.po:
10563         * po/nl.po:
10564         * po/sr.po:
10565         * po/sv.po:
10566           refreshing translations
10567
10568 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10569
10570         * po/LINGUAS:
10571         * po/sv.po:
10572         * po/af.po:
10573           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10574
10575 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10576
10577         * Makefile.am: use common/release.mak
10578
10579 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10580
10581         * docs/faq/gst-uninstalled:
10582           adding gst-monkeysaudio to the list of possible plugin dirs
10583
10584 2004-03-16  David Schleef  <ds@schleef.org>
10585
10586         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10587         (gst_init_check_with_popt_table):  Fix some gettext strings to
10588         make them easier to translate.  Required making the strings
10589         non-const.
10590
10591 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10592
10593         * configure.ac: bump nano to 1
10594
10595 === release 0.8.0 ===
10596
10597 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10598
10599         * configure.ac: release 0.8.0, "Executive Slacks"
10600
10601 2004-03-16  Johan Dahlin  <johan@gnome.org>
10602
10603         * gst/schedulers/gstoptimalscheduler.c
10604         (gst_opt_scheduler_pad_unlink): Remove double ;,
10605         spotted by Scott Wheeler
10606
10607 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10608
10609         * configure.ac: bump libtool version
10610
10611 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10612
10613         * gst/gstcaps.h:
10614         * gst/gststructure.h:
10615           add reserved padding
10616
10617 2004-03-15  Benjamin Otte  <otte@gnome.org>
10618
10619         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10620           set the first parameter for select call correctly.
10621           (fixes #137230)
10622
10623 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10624
10625         * *.c,*.h: don't mix tabs and spaces
10626
10627 2004-03-15  Johan Dahlin  <johan@gnome.org>
10628
10629         * gst/schedulers/gstoptimalscheduler.c
10630         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
10631         crash on MPEG playback. My boolean arithmetic is a bit rusty.
10632
10633         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
10634         
10635 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10636
10637         * testsuite/Rules:
10638           fix gst-register rules
10639
10640 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10641
10642         * testsuite/Rules:
10643           use versioned gst-register
10644
10645 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10646
10647         * docs/libs/gstreamer-libs-sections.txt:
10648           remove </SUBSECTION>
10649         * gst/gstplugin.c:
10650         * gst/gstregistry.c: (gst_registry_add_plugin):
10651         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
10652         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
10653           add debugging and fix some comment blocks
10654
10655 2004-03-15  Johan Dahlin  <johan@gnome.org>
10656
10657         * *.h: Revert indent changes.
10658         
10659 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10660
10661         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
10662           g_error_free the g_error
10663         * tools/gst-feedback-m.m:
10664           check for other versions of gstreamer
10665         * tools/gst-indent:
10666           use sh, not bash
10667
10668 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10669
10670         * tools/gst-register.c: do not spill paths when registries are not
10671           writable, until we fix the "user running gst-register" case.
10672
10673 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10674
10675         * *.c, *.h: commit of gst-indent run on core
10676
10677 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10678
10679         * tools/gst-indent:
10680         * tools/Makefile.am:
10681           add our indentation style as a script
10682
10683 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10684
10685         * po/sr.po:
10686         * po/LINGUAS:
10687           added Serbian translation
10688
10689 2004-03-13  Benjamin Otte  <otte@gnome.org>
10690
10691         * gst/gstelement.c:
10692           add documentation note about gst_element_found_tags_for_pad not
10693           being usable in getfunctions. (see #137042)
10694
10695 2004-03-12  David Schleef  <ds@schleef.org>
10696
10697         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
10698         change API right now!  Readd gst_caps_is_simple() macro.
10699         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
10700         uninitialized variable.  I'd bet this caused crashes.
10701         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
10702
10703 2004-03-12  Johan Dahlin  <johan@gnome.org>
10704
10705         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
10706         * gst/gstcaps.h: Clean up
10707
10708         * gst/gst.c (init_post): call gst_caps_get_type() instead of
10709         _gst_caps_initalize()
10710
10711         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
10712         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
10713
10714         * gst/gststructure.c (gst_structure_get_type): Ditto
10715
10716         * gst/gststructure.h: Ditto
10717         
10718 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10719
10720         * gst/gstqueue.c: (gst_queue_init):
10721           Reset default max. values in queues. Reason is simply to avoid
10722           braindead use. If you want wider values, use the properties. The
10723           default is supposed to always work. Wider values would make this
10724           beast a memory hog by default (250 full-PAL RGB32 video frames?
10725           That's 440 MB! No thank you).
10726
10727 2004-03-10  David Schleef  <ds@schleef.org>
10728
10729         * tools/gst-run.c: (main):  Fix crash when no relevant tools
10730         were found.  (bug #136793)
10731
10732 2004-03-10  Johan Dahlin  <johan@gnome.org>
10733
10734         * gst/schedulers/gstoptimalscheduler.c
10735         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
10736         links to elements within the same group, so we can finally remove
10737         that annoying warning. Refactor the code a little bit
10738         (group_dec_links_for_element): Split out
10739
10740 2004-03-09  David Schleef  <ds@schleef.org>
10741
10742         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
10743         (bug #134863)
10744
10745 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10746
10747         * configure.ac: first bug fix due to major/minor bump
10748
10749 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10750
10751         * configure.ac: bump nano to 1
10752
10753 === release 0.7.6 ===
10754
10755 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10756
10757         * NEWS:
10758         * RELEASE:
10759         * configure.ac:
10760           releasing 0.7.6, "Almost"
10761         * po/fr.po:
10762         * po/nl.po:
10763         * tools/Makefile.am:
10764         * tools/gst-feedback-m.m:
10765           unversioned source
10766
10767 2004-03-09  Johan Dahlin  <johan@gnome.org>
10768
10769         Reviewed by: Thomas Vander Stichele
10770
10771         * gst/gstelement.c (gst_element_class_init): register second
10772         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
10773         language bindings can (de)marshall correctly.
10774
10775         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
10776
10777         * gst/gsterror.c (gst_g_error_get_type): New function
10778
10779         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
10780         with VOID:OBJECT,OBJECT,STRING 
10781
10782 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
10783
10784         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
10785         Free a leaked g_timer on early returns.
10786
10787 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10788
10789         * docs/pwg/advanced-types.xml:
10790           Add cinepak description.
10791
10792 2004-03-07  David Schleef  <ds@schleef.org>
10793
10794         * docs/random/mimetypes:  Added cinepak description
10795
10796 2004-03-07  Andy Wingo  <wingo@pobox.com>
10797
10798         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
10799
10800         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
10801         there are no links to other groups when a group is destroyed.
10802         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
10803         removed from a group, make sure the link count to elements linked
10804         to other pads is appropriately decremented. This really fixes
10805         #135672.
10806
10807         The 1.60->1.61 patch has been reapplied in light of this fix.
10808
10809         * gst/gstelement.c (gst_element_dispose): Really protect against
10810         multiple invocations this time.
10811
10812 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10813
10814         * docs/gst/gstreamer-sections.txt:
10815         * docs/gst/tmpl/gsttag.sgml:
10816           remove some deprecated functions, document some existing ones
10817         * gst/gsttag.c: (gst_tag_get_flag):
10818         * gst/gsttag.h:
10819           add accessor function
10820
10821 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10822
10823         * docs/gst/gstreamer-sections.txt:
10824         * docs/gst/tmpl/gsttag.sgml:
10825         * docs/gst/tmpl/gstxml.sgml:
10826         * gst/gsttag.c: (gst_tag_get_flag):
10827         * gst/gsttag.h:
10828
10829 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
10830
10831         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
10832         leak
10833
10834 2004-03-05  David Schleef  <ds@schleef.org>
10835
10836         * REQUIREMENTS: Add bison and flex.
10837         * configure.ac: Fix comment about bison.
10838         * docs/random/ds/0.9-suggested-changes: yer ma
10839         * tools/gst-inspect.c: (print_element_info):  Fix warning.
10840
10841 2004-03-05  Benjamin Otte  <otte@gnome.org>
10842
10843         * gst/gstelement.c: (gst_element_error_full):
10844           revert recent recursive state changing commit - messing with other
10845           elements' states is evil and should be done by apps only.
10846
10847 2004-03-05  Benjamin Otte  <otte@gnome.org>
10848
10849         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
10850           check for empty intersection instead of NULL caps
10851         (gst_element_get_compatible_pad_filtered):
10852           remove old workaround that is only a bug nowadays
10853
10854 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10855
10856         * gst/gstelement.c: (gst_element_error_full):
10857           make elements try to recursively change state to PAUSED on all
10858           parents after an error to suppress ensuing warnings
10859         * gst/parse/grammar.y:
10860           make it check if it was able to sync the state, and throw an error
10861           if not, so stuff like
10862           oggdemux ! vorbisdec ! osssink gets caught
10863
10864 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10865
10866         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
10867           it contains lib64; use AS_AC_EXPAND to handle it properly
10868
10869 2004-03-05  David Schleef  <ds@schleef.org>
10870
10871         * gst/gstcpuid_i386.s:  Remove unused code
10872         * libs/gst/getbits/getbits.c: (gst_getbits_init),
10873         (gst_getbits_newbuf): Remove MMX code
10874         * libs/gst/getbits/getbits.h: Remove MMX code
10875
10876 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
10877
10878         * debian/.cvsignore:
10879         * debian/README.Debian:
10880         * debian/changelog:
10881         * debian/control:
10882         * debian/control.in:
10883         * debian/copyright:
10884         * debian/gstreamer-core-libs-dev.files:
10885         * debian/gstreamer-core-libs.files:
10886         * debian/gstreamer-core.files:
10887         * debian/gstreamer-core.postinst:
10888         * debian/gstreamer-core.postrm:
10889         * debian/gstreamer-doc.files:
10890         * debian/gstreamer-doc.links:
10891         * debian/gstreamer-doc.lintian:
10892         * debian/gstreamer-runtime.files:
10893         * debian/gstreamer-runtime.manpages:
10894         * debian/gstreamer-runtime.postinst:
10895         * debian/gstreamer-runtime.postrm:
10896         * debian/gstreamer-tools.files:
10897         * debian/gstreamer-tools.manpages:
10898         * debian/libgstreamer-dev.files:
10899         * debian/libgstreamer0.4.1.files:
10900         * debian/libgstreamerVERSION.files:
10901         * debian/rules:
10902         Debian package info not maintained here.
10903
10904 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10905
10906         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10907         * gst/gstbin.c: (gst_bin_class_init):
10908         * gst/gstelement.c: (gst_element_class_init):
10909         * gst/gstindex.c: (gst_index_class_init):
10910         * gst/gstobject.c: (gst_object_class_init),
10911         (gst_signal_object_class_init):
10912         * gst/gstpad.c: (gst_pad_template_class_init):
10913         * gst/gstregistry.c: (gst_registry_class_init):
10914         * gst/gsturi.c: (gst_uri_handler_base_init):
10915         * gst/gstxml.c: (gst_xml_class_init):
10916         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10917         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
10918           make all signal names use dashes instead of underscore
10919
10920 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10921
10922         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
10923
10924 2004-03-03  Benjamin Otte  <otte@gnome.org>
10925
10926         * gst/schedulers/gstoptimalscheduler.c:
10927           revert last commit by Andy Wingo. It causes segfaults on unreffing
10928           in Rhythmbox. (see bug #135672)
10929
10930 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10931
10932         * po/fr.po: fix typo
10933
10934 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10935
10936         * tools/gst-inspect.c: (main): 
10937         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
10938
10939 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10940
10941         * configure.ac:
10942           get GLIB_ONLY and POPT flags for the nonversioned binaries
10943         * tools/Makefile.am:
10944           use them
10945
10946 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10947
10948         * gst/gst.c: (init_post):
10949           change so that GST_REGISTRY now is where the global registry gets
10950           saved, since that is where plugins now get attached to first, and
10951           spilled over to the user registry.  Note that in the case of using
10952           GST_REGISTRY env var, we don't want to affect any real registries
10953           beyond the one given by this var, and thus we don't set a user
10954           registry to spill to.  So make sure GST_REGISTRY is writable.
10955
10956 2004-03-01  David Schleef  <ds@schleef.org>
10957
10958         * AUTHORS:  Added some names.  Add yourself if you're missing.
10959
10960 2004-03-01  David Schleef  <ds@schleef.org>
10961
10962         * MAINTAINERS: Add
10963
10964 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
10965
10966         * configure.ac:
10967           remove whitespace
10968         * docs/gst/tmpl/gstbuffer.sgml:
10969         * docs/gst/tmpl/gstdata.sgml:
10970         * docs/gst/tmpl/gstreamer-unused.sgml:
10971         * docs/gst/tmpl/gstxml.sgml:
10972           doc update
10973         * docs/manuals.mak:
10974           add a FIXME
10975         * docs/pwg/intro-preface.xml:
10976         * docs/pwg/pwg.xml:
10977           remove GNOME
10978         * gst/gst.c: (init_post):
10979           try GST_PLUGIN_PATH paths for the _global_registry first
10980         * gst/gstelement.h:
10981           add the error message as well, otherwise (null) debug info doesn't
10982           make much sense
10983         * tools/gst-register.c: (main):
10984           spill paths to next registry if this registry is not writable
10985         * po/fr.po:
10986         * po/nl.po:
10987           translation updates
10988
10989 2004-03-01  Johan Dahlin  <johan@gnome.org>
10990
10991         * gst/gstbuffer.c (_gst_buffer_initialize): 
10992         * gst/gstdata.c (gst_data_get_type): 
10993         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
10994         instead of ref, since some applications that uses GBoxed
10995         routines depends on a function that actually returns a copy.
10996
10997 2004-02-27  Benjamin Otte  <otte@gnome.org>
10998
10999         * gst/gstbuffer.h:
11000           remove gst_buffer_free, use gst_data_unref
11001         * gst/gstdata.c: (gst_data_get_type):
11002           use refcounting in GstData GBoxed registration
11003         * gst/gstdata.h:
11004           remove gst_data_free, use gst_data_unref
11005
11006 2004-02-27  Johan Dahlin  <johan@gnome.org>
11007
11008         * gst/gstdata.c (gst_data_get_type): New function, register
11009         GstData as a GBoxed type.
11010
11011         * gst/gstdata.h (GST_TYPE_DATA): New macro
11012
11013 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11014
11015         * Makefile.am:
11016         * gstreamer.spec.in:
11017           put back RELEASE
11018         * gst/Makefile.am:
11019           clean up non-disting of built files
11020         * testsuite/debug/commandline.c:
11021           test fix for option rename
11022
11023 2004-02-26  David Schleef  <ds@schleef.org>
11024
11025         * configure.ac:  We don't really need glib-2.3.  Also remove
11026         some unneeded checks for library functions.
11027         * gst/Makefile.am:  Instead, we need to not dist files created
11028         by glib-genmarshal.
11029
11030 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11031
11032         * configure.ac:
11033           bump glib required version to 2.3.0 for g_value_takes_boxed
11034
11035  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11036
11037         * common/m4/gst-docs.m4
11038         change flavour text from enable to disable as enable is our default
11039         closes bug Bug 135304
11040
11041 === release 0.7.5 ===
11042  
11043  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11044  
11045         * NEWS:
11046           instate NEWS file
11047         * Makefile.am:
11048         * gstreamer.spec.in:
11049         * RELEASE:
11050           put back release
11051         * configure.ac:
11052         * docs/random/release:
11053           more updates
11054
11055 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11056
11057         * gst/gsttag.c: (_gst_tag_initialize):
11058         * po/fr.po:
11059         * po/nl.po:
11060           remove hyphen from codec tags
11061
11062 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11063
11064         * gst/parse/Makefile.am:
11065           fix dependency so that a make from a clean build works the first
11066           time
11067
11068 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11069
11070         * docs/random/release:
11071           update release strategy
11072         * po/fr.po:
11073           auto-update po file
11074         * po/nl.po:
11075           update dutch translation
11076
11077 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11078
11079         * docs/manual/debugging.xml:
11080         fix manual for new debugging system
11081
11082 2004-02-25  Andy Wingo  <wingo@pobox.com>
11083
11084         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11085         gst_pad_link_prepare. Please email the list with specific reasons
11086         for reverting.
11087
11088 2004-02-24  Andy Wingo  <wingo@pobox.com>
11089
11090         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11091         invocations.
11092
11093         * gst/schedulers/gstoptimalscheduler.c:
11094         I added a mess of prototypes at the top of the file by way of
11095         documentation. Some of the operations on chains and groups were
11096         re-organized.
11097
11098         (create_group): Added a type argument so if the group is enabled,
11099         the setup_group_scheduler knows what to do.
11100         (group_elements): Added a type argument here, too, to be passed on
11101         to create_group.
11102         (group_element_set_enabled): If an unlinked PLAYING element is
11103         added to a bin, we have to create a new group to hold the element,
11104         and this function will be called before the group is added to the
11105         chain. Thus we have a valid case for group->chain==NULL. Instead
11106         of calling chain_group_set_enabled, just set the flag on the group
11107         (the chain's status will be set when the group is added to it).
11108         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11109         Setup the group scheduler when the group is enabled, not
11110         specifically when an element goes PAUSED->PLAYING. This means
11111         PLAYING elements can be added, linked, and scheduled into a
11112         PLAYING pipeline, as was intended.
11113         (add_to_group): Don't ref the group twice. I don't know when this
11114         double-ref got in here. Removing it has the potential to cause
11115         segfaults if other parts of the scheduler are buggy. If you find
11116         that the scheduler is segfaulting for you, put in an extra ref
11117         here and see if that hacks over the underlying issue. Of course,
11118         then find out what code is unreffing a group it doesn't own...
11119         (create_group): Make the extra refcount floating, and remove it
11120         after adding the element. This means that...
11121         (unref_group): Destroy when the refcount reaches 0, not 1, like
11122         every other refcounted object in the known universe.
11123         (remove_from_group): When a group becomes empty, set it to be not
11124         active, and remove it from its chain. Don't unref it again,
11125         there's no floating reference any more.
11126         (destroy_group): We have to remove the group from the chain in
11127         remove_from_group (rather than here) to break refcounting cycles
11128         (the chain always has a ref on the group). So assert that
11129         group->chain==NULL.
11130         (ref_group_by_count): Removed, it was commented out anyway.
11131         (merge_chains): Use the remove_from_chain and add_to_chain
11132         primitives to do the reparenting, instead of rolling our own
11133         implementation.
11134         (add_to_chain): The first non-disabled group in the chain's group
11135         list will be the entry point for the chain. Because buffers can
11136         accumulate in loop elements' peer bufpens, we preferentially
11137         schedule loop groups before get groups to avoid unnecessary
11138         execution of get-based groups when the bufpens are already full.
11139         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11140         (get_group_schedule_function): Ditto.
11141         (loop_group_schedule_function): Ditto.
11142         (gst_opt_scheduler_loop_wrapper): Ditto.
11143         (gst_opt_scheduler_iterate): Ditto.
11144
11145         I understand the opt scheduler now, yippee!
11146
11147         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11148         (gst_pad_get_name, gst_pad_set_chain_function) 
11149         (gst_pad_set_get_function, gst_pad_set_event_function) 
11150         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11151         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11152         (gst_pad_set_query_function, gst_pad_get_query_types) 
11153         (gst_pad_get_query_types_default) 
11154         (gst_pad_set_internal_link_function) 
11155         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11156         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11157         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11158         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11159         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11160         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11161         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11162         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11163         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11164         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11165         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11166         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11167         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11168         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11169         argument checks, and some doc fixes.
11170
11171         (gst_pad_custom_new_from_template): Um, does anyone
11172         use these functions? Actually make a custom pad instead of a
11173         normal one.
11174         (gst_pad_try_set_caps): Transpose some checks.
11175         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11176         the pad is in negotiation.
11177         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11178         
11179         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11180
11181         * gst/gstelement.h: 
11182         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11183         on the list.
11184
11185 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11186
11187         * gst/gstbin.c: (gst_bin_add):
11188           add error for not being able to add elements
11189
11190 2004-02-22  Julien MOUTTE <julien@moutte.net>
11191
11192         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11193         audio-codec and video-codec.
11194
11195 2004-02-22  Benjamin Otte  <otte@gnome.org>
11196
11197         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11198
11199         * autogen.sh:
11200           replace test -e with test -x for mkinstalldirs to be more portable.
11201           (fixes #134816)
11202
11203 2004-02-22  Benjamin Otte  <otte@gnome.org>
11204
11205         * gst/gstpad.c:
11206           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11207           too noisy
11208         * gst/gsttag.c: (_gst_tag_initialize):
11209         * gst/gsttag.h:
11210           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11211         * libs/gst/control/dparam.c: (gst_dparam_attach):
11212         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11213           check that types for attached dparams match
11214
11215 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11216
11217         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11218         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11219         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11220           fix errors
11221
11222 2004-02-20  Andy Wingo  <wingo@pobox.com>
11223
11224         * gst/gstbin.c:
11225         * gst/gstbuffer.c:
11226         * gst/gstplugin.c:
11227         * gst/registries/gstxmlregistry.c: 
11228         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11229
11230         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11231         (gst_element_add_pad): DEBUG->INFO, some fixes.
11232         (gst_element_get_compatible_pad_template): Just see if the
11233         templates' caps intersect, not if one is a strict subset of the
11234         other. This conforms more to what gst_pad_link_intersect() does.
11235         (gst_element_class_add_pad_template): Don't memcpy the pad
11236         template, just ref it.
11237         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11238
11239         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11240         (gst_pad_link_filtered): Debug changes.
11241         (gst_pad_link_prepare): New function, consolidated from
11242         can_link_filtered and link_filtered.
11243
11244         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11245         look more like that of the functions in gstelement.c
11246
11247         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11248         object, and return the empty string if object is NULL.
11249
11250         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11251         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11252         LOG, not DEBUG. We still get flex info on debug.
11253
11254         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11255         debug string more verbose.
11256         (plugin_times_older_than): DEBUG->LOG.
11257
11258 2004-02-20  Julien MOUTTE <julien@moutte.net>
11259
11260         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11261         will emit found_tag for each stream they demux with the codec.
11262
11263 2004-02-20  Benjamin Otte  <otte@gnome.org>
11264
11265         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11266           copy navigation event correctly. Check freeing tag lists. 
11267         * gst/gstthread.c: (gst_thread_change_state):
11268           don't abort() on state changing mess - it might happen because of
11269           bugs.
11270         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11271           use boxed functions
11272         * gst/gstvalue.h:
11273           fix GST_VALUE_HOLDS_CAPS
11274
11275 2004-02-19  David Schleef  <ds@schleef.org>
11276
11277         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11278         and use it for GST_FUNCTION.  (bug #134750)
11279
11280 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11281
11282         * po/fr.po:
11283         * po/nl.po:
11284           updating translations
11285
11286 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11287
11288         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11289
11290 2004-02-18  kost@imn.htwk-leipzig.de
11291
11292         reviewed by: David Schleef  <ds@schleef.org>
11293
11294         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11295         for libgstcontrol.
11296
11297 2004-02-18  David Schleef  <ds@schleef.org>
11298
11299         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11300         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11301         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11302         * tools/gst-inspect.c: (print_element_info): Support dumping of
11303         double dparam information.
11304
11305 2004-02-17  David Schleef  <ds@schleef.org>
11306
11307         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11308         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11309         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11310         Use GST_TYPE_CAPS in signal prototype.
11311         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11312         Convert GST_TYPE_CAPS to boxed.
11313         * gst/gstelement.c: (gst_element_class_init):
11314         Use GST_TYPE_TAG_LIST in signal prototype.
11315         * gst/gstindex.c: (gst_index_class_init):
11316         * gst/gstindex.h:
11317         Add GST_TYPE_INDEX_ENTRY type.
11318         * gst/gstmarshal.list:
11319         Add necessary marshal types.
11320         * gst/gstpad.c: (gst_real_pad_class_init),
11321         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11322         (gst_pad_recover_caps_error):
11323         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11324         * gst/gststructure.c: (_gst_structure_initialize),
11325         (gst_structure_copy), (_gst_structure_copy_conditional):
11326         * gst/gststructure.h:
11327         Convert GST_TYPE_STRUCTURE to boxed.
11328         * gst/gsttag.c: (gst_tag_list_get_type):
11329         * gst/gsttag.h:
11330         Add GST_TYPE_TAG_LIST type.
11331
11332 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11333
11334         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11335         to what we agreed with david.
11336         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11337
11338 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11339
11340         * po/nl.po: update translation
11341
11342 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11343
11344         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11345           throw an error if spider is trying to play a mime type there is
11346           no decoder for
11347         * po/POTFILES.in:
11348           add gst/autoplug/gstspider.c for translation
11349
11350 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11351
11352         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11353         silently when the pad is negotiating.
11354
11355 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11356
11357         * docs/faq/Makefile.am:
11358           add script to run gstreamer uninstalled 
11359         * docs/faq/faq.xml:
11360         * docs/faq/developing.xml:
11361         * docs/faq/gst-uninstalled:
11362           extract script to run gstreamer uninstalled
11363         * docs/manuals.mak:
11364           add EXTRA_SOURCES variable for Makefile.am's to set to
11365           use additional SOURCE files for the doc build
11366
11367 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11368
11369         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11370
11371 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11372
11373         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11374         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11375         an error was thrown by osssink. Basically a state change failure for
11376         an element in a different scheduling group was considered as
11377         successful, which means that caps nego was going on and weird stuff
11378         happened. Like I wrote in the comment there, if someone wants to
11379         revert that please drop me a mail explaining why because I really see
11380         no point in keeping that broken behaviour there.
11381         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11382         be empty, we then return NULL which will trigger a nice error when 
11383         pulling from the pad.
11384
11385 2004-02-13  David Schleef  <ds@schleef.org>
11386
11387         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11388         (gst_dparam_get_property), (gst_dparam_set_property),
11389         (gst_dparam_do_update_default):
11390         * libs/gst/control/dparam.h:
11391         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11392         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11393         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11394         (gst_dpsmooth_do_update_double):
11395         * libs/gst/control/dparam_smooth.h:
11396         * libs/gst/control/dparammanager.c:
11397         (gst_dpman_inline_direct_update):
11398         Add support for double dparams.
11399
11400 2004-02-13  David Schleef  <ds@schleef.org>
11401
11402         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11403         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11404
11405 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11406
11407         reviewed by: David Schleef  <ds@schleef.org>
11408
11409         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11410         (gst_fdsrc_init), (gst_fdsrc_set_property),
11411         (gst_fdsrc_get_property), (gst_fdsrc_get):
11412         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11413         and sends an EOS event if file descriptor reading times out.
11414
11415 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11416
11417         * configure.ac:
11418           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11419
11420 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11421
11422         * configure.ac: pass required libxml version as argument
11423         (bug reported by Christophe Fergeau)
11424
11425 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11426   
11427         * docs/gst/gstreamer-docs.sgml:
11428         * docs/gst/tmpl/gstxml.sgml:
11429         * docs/libs/gstreamer-libs-docs.sgml:
11430           version API docs
11431
11432 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11433
11434         * gst/gstinfo.c:
11435         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11436         (gst_registry_pool_feature_filter):
11437         * gst/gstthread.c: (gst_thread_class_init):
11438         * gst/gstvalue.c:
11439           add includes exposed by building without libxml
11440         * gst/indexers/Makefile.am:
11441           do not build fileindex when LOADSAVE disabled; we should have
11442           a better libxml check later since fileindex depends on xml, not
11443           LOADSAVE or REGISTRY
11444         * libs/gst/control/Makefile.am:
11445           link with m
11446         * tools/Makefile.am:
11447           fix wrong source code for gst-xmlinspect
11448
11449 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11450
11451         * configure.ac:
11452           fix gcov help output
11453           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11454         * docs/random/release:
11455           some updated releasing notes
11456         * gstreamer.spec.in:
11457           more updates
11458
11459 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11460
11461         * docs/faq/faq.xml:
11462         * docs/manual/manual.xml:
11463         * docs/pwg/pwg.xml:
11464         * docs/pwg/titlepage.xml:
11465           put version in documentation
11466
11467 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11468
11469         * tools/Makefile.am: fix man page installation
11470
11471 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11472
11473         * configure.ac:
11474           don't check for libxml when load/save and registry disabled (#105844)
11475         * gstreamer.spec.in:
11476           sync with fedora candidate spec
11477
11478 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11479
11480         * po/fr.po:
11481         * po/nl.po:
11482           replace multidisksrc with multifilesrc
11483
11484 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11485
11486         * po/POTFILES.in:
11487           update to multidisksrc => multifilesrc file renaming (#134145)
11488
11489 2004-02-11  David Schleef  <ds@schleef.org>
11490
11491         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11492         * docs/gst/tmpl/gstpadtemplate.sgml: same
11493         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11494         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11495         fixing dance.
11496         * gst/gstutils.c: Remove disabled code that uses GstProps.
11497         * gst/registries/gstxmlregistry.h: same
11498         * docs/random/ds/0.9-suggested-changes: random notes
11499
11500 2004-02-11  kost@imn.htwk-leipzig.de
11501
11502         reviewed by: David Schleef  <ds@schleef.org>
11503
11504         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11505         initialisation of clock (bug #134128)
11506
11507 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11508
11509         * configure.ac:
11510         * gst/elements/Makefile.am:
11511         * gst/elements/gstelements.c:
11512         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11513         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11514         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11515         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11516         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11517         * gst/elements/gstmultifilesrc.h:
11518           rename multidisksrc to multifilesrc (part of #122200)
11519
11520 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11521
11522         * docs/manuals.mak:
11523           fix automake complaints
11524         * gst-element-check.m4:
11525           fix unquotedness
11526
11527 2004-02-11  David Schleef  <ds@schleef.org>
11528
11529         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11530         * gst/gstatomic_impl.h: Disable sparc implementation.
11531
11532 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11533
11534         * gst-element-check.m4:
11535           fix underquoted macros as reported by automake 1.8.x (#133800)
11536         * configure.ac:
11537           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11538           by autopoint (fixes #132996)
11539
11540 2004-02-10  Andy Wingo  <wingo@pobox.com>
11541
11542         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11543         way to do inheritance.
11544         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11545         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11546         Routine docs.
11547         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11548         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11549         doc.
11550         (gst_pad_unlink, gst_pad_is_linked): Docs.
11551         (gst_pad_renegotiate): A brief description of capsnego.
11552         (gst_pad_try_set_caps): Document.
11553         (gst_pad_try_set_caps_nonfixed): Document.
11554         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11555         (gst_pad_set_parent): Deprecated (although not out of the API).
11556         (gst_pad_get_parent): Deprecated, although many plugins use this.
11557         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11558         are private and will go away in 0.9.
11559         (gst_pad_perform_negotiate): Doc.
11560         (gst_pad_link_unnegotiate): I think this is meant to be static.
11561         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11562         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11563         (gst_pad_get_peer): Doc updates.
11564         (gst_pad_caps_change_notify): Doc.
11565         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11566         (gst_ghost_pad_new): Doc fixes.
11567
11568         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11569         (gst_object_check_uniqueness): 
11570
11571         * gst/gstelement.c (gst_element_add_pad) 
11572         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11573         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11574         (gst_element_get_static_pad, gst_element_get_pad_list) 
11575         (gst_element_class_get_pad_template_list) 
11576         (gst_element_class_get_pad_template): Work on the docs.
11577         (gst_element_get_pad_template_list): Uses the class method.
11578         (gst_element_get_compatible_pad_template): Docs, and consolidate
11579         some test conditions. 
11580         (gst_element_get_pad_from_template): New static function.
11581         (gst_element_request_compatible_pad): Docs, and work with
11582         non-request compatible templates. 
11583         (gst_element_get_compatible_pad_filtered): Docs and remove
11584         redundant checks.
11585         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11586         (gst_element_link_filtered, gst_element_link_many) 
11587         (gst_element_link, gst_element_link_pads) 
11588         (gst_element_unlink_many): Docs.
11589
11590 2004-02-05  Andy Wingo  <wingo@pobox.com>
11591
11592         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11593         s/pointer/boxed/.
11594
11595         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11596
11597         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11598         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11599         with the type=GST_TYPE_CAPS. This allows language bindings to know
11600         what kind of data they're dealing with.
11601
11602         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11603         to NULL when g_value_init is called. GstCaps, which rolls its own
11604         type implementation, now does the same instead of allocating empty
11605         caps.
11606         (_gst_caps_initialize, _gst_caps_collect_value,
11607         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11608         table methods. This allows G_VALUE_COLLECT to work.
11609
11610 2004-02-05  Andy Wingo  <wingo@pobox.com>
11611
11612         * configure.ac:
11613         * testsuite/Makefile.am (SUBDIRS): 
11614         * testsuite/ghostpads/Makefile.am: 
11615         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11616
11617         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
11618         These two routines are the only ones that set
11619         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
11620         pad template. They should be made static, depending on ABI needs.
11621         (gst_real_pad_dispose): Handle the case of ghost pads without a
11622         parent. Assert after dealing with ghost pads that the ghost pad
11623         list is empty.
11624         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
11625         set after creation.
11626         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
11627         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
11628         functions. set_property will call add_ghost_pad/remove_ghost_pad
11629         as appropriate.
11630         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
11631
11632         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
11633         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
11634         (gst_element_remove_pad): Handle ghost pads as well.
11635         (gst_element_remove_ghost_pad): Deprecated (could be removed,
11636         depending on API-stability needs).
11637
11638 2004-02-05  Andy Wingo  <wingo@pobox.com>
11639
11640         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
11641         of course they're const
11642
11643 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11644
11645         * tools/Makefile.am:
11646         * tools/gst-feedback:
11647         * tools/gst-feedback-0.7:
11648           make gst-feedback versioned too for consistency
11649
11650 2004-02-11  David Schleef  <ds@schleef.org>
11651
11652         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11653         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
11654
11655 2004-02-10  Julien MOUTTE <julien@moutte.net>
11656
11657         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
11658         the structure does not contain a valid tag list. Adding a safety check
11659         to remove a noisy warning in that case.
11660
11661 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11662
11663         * gst/gst.c: fix name to be in line with others
11664
11665 2004-02-09  Julien MOUTTE <julien@moutte.net>
11666
11667         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
11668         not shout that loud when len is 0. Just return 0 silently.
11669
11670 2004-02-09  Julien MOUTTE  <julien@moutte.net>
11671
11672         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
11673         because data_unref has one and I prefer the debug to be symetric.
11674         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
11675         were refed when added to the queue and unrefed only once when the queue
11676         was flushed. Now the flush handler unref the buffers two times : first
11677         unref for the ref added when pushing in the queue's tail and second
11678         unref to destroy the flushed buffer.
11679
11680 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11681
11682         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
11683
11684 2004-02-06  David Schleef  <ds@schleef.org>
11685
11686         * docs/random/ds/0.9-suggested-changes: Random ramblings
11687         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
11688         to int before printing.
11689         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
11690         * gst/parse/parse.l: same.  See bug #129600
11691
11692 2004-02-06  David Schleef  <ds@schleef.org>
11693
11694         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
11695         (gst_index_add_entry), (gst_index_add_associationv),
11696         (gst_index_add_association): Add gst_index_add_associationv()
11697         and clean up gst_index_add_association(). #127133
11698
11699 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11700
11701         * autogen.sh: check out common with right tag if CVS/Tag exists
11702
11703 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11704
11705         * testsuite/ghostpads/ghostpads.c: (main):
11706           fix testsuite from segfaulting
11707
11708 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11709
11710         * Makefile.am: add release target
11711         * configure.ac: bump nano to 1
11712         * docs/random/release:
11713
11714 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11715
11716         * gst/gstcaps.h:
11717         * gst/gstelement.c: (gst_element_base_class_init),
11718         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11719         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11720         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11721         (gst_real_pad_dispose):
11722         * gst/gststructure.c: (gst_structure_free),
11723         (gst_structure_from_string):
11724           put reverted patch back in
11725         * gst/gstelement.c: (gst_element_remove_pad):
11726           free explicit caps if they're set
11727         * gst/gstpad.c: (_gst_pad_default_fixate_func):
11728           copy the structure when fixating
11729
11730 2004-02-05  David Schleef  <ds@schleef.org>
11731
11732         * gst/gstmarshal.list:
11733         * gst/gstpad.c: (gst_real_pad_class_init),
11734         (_gst_real_pad_fixate_accumulator):
11735         Revert POINTER->BOXED change in signal marshaller.
11736
11737 === release 0.7.4 ===
11738                                                                                 
11739 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11740                                                                                 
11741         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
11742         * configure.ac: changed for release
11743
11744 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
11745
11746         * gstreamer.spec.in:
11747           bump required version of gtk-doc
11748
11749 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11750
11751         * gst/gstcaps.h:
11752         * gst/gstelement.c: (gst_element_base_class_init),
11753         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11754         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11755         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11756         (gst_real_pad_dispose):
11757         * gst/gststructure.c: (gst_structure_free),
11758         (gst_structure_from_string):
11759           revert patch that breaks applications, reapply after release
11760           to get this fixed properly
11761
11762 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11763
11764         * gst/gsttag.c: (_gst_tag_initialize):
11765         * gst/gsttag.h:
11766           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
11767
11768 2004-02-04  David Schleef  <ds@schleef.org>
11769
11770         Fix some memleaks:
11771         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
11772         (gst_spider_plug_from_srcpad):
11773         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
11774
11775 2004-02-04  David Schleef  <ds@schleef.org>
11776
11777         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
11778         a GstRealPad before accessing its structure members.
11779
11780 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11781
11782         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
11783         (gst_clock_get_speed):
11784         * gst/gstclock.h:
11785           reset padding, remove unused fields
11786
11787 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11788
11789         * gst/autoplug/gstspideridentity.c:
11790         (gst_spider_identity_sink_loop_type_finding):
11791           use get_allowed_caps, not get_caps (fixes #132519)
11792         * gst/elements/gsttypefind.c: (stop_typefinding):
11793           use correct order when sending buffers and seeking
11794
11795 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11796
11797         * configure.ac:
11798         * gst/gstelement.h:
11799         * gst/gstpad.h:
11800         * gst/gstqueue.h:
11801           upgrade libtool CURRENT, reset padding
11802
11803 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11804
11805         * configure.ac:
11806           bump to prerelease
11807           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
11808
11809 2004-02-04  David Schleef  <ds@schleef.org>
11810
11811         * docs/random/ds/0.9-suggested-changes: random notes
11812         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
11813         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
11814         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
11815         expansion.
11816         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11817         (gst_filesink_get_query_types): same
11818         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
11819         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
11820         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
11821         to use new GST_PTR_FORMAT.
11822         * gst/gstelement.h: deprecate function factory macros
11823         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
11824         These are our last variadic macros that can't be replaced with
11825         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
11826         attempting to deprecate gst_element_clock_wait().
11827         * gst/gstevent.h: same
11828         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11829         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
11830         * gst/gstpad.h: deprecate function factory macros similar to above.
11831
11832 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11833
11834         * configure.ac:
11835         * tools/Makefile.am:
11836         * tools/gst-run.c: (popt_callback), (hash_print_key),
11837         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
11838         (get_candidates), (main):
11839           add new source file to generate non-versioned wrapper binaries
11840           for our tools.
11841
11842 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11843
11844         * gst/gstevent.c: (_gst_event_free):
11845           actually break; inside the switch statement
11846         * gst/parse/grammar.y:
11847           fix memleak where GValues weren't unset
11848
11849 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11850
11851         * gst/gststructure.c: (gst_structure_from_string):
11852           fix huge memleak
11853         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11854         (new_entry), (gst_type_find_element_chain):
11855         * gst/gstelement.c: (gst_element_base_class_init),
11856         (gst_element_class_set_details):
11857         * gst/gstpad.c: (gst_pad_can_link_filtered):
11858           fix smaller memleaks
11859         * gst/gstpad.c: (gst_real_pad_dispose):
11860           check that explicit caps are gone
11861         * gst/gststructure.c: (gst_structure_free):
11862           actually free the structure
11863         * gst/gstelement.c: (gst_element_clear_pad_caps):
11864           unset explicit caps
11865
11866 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11867
11868         * tools/Makefile.am:
11869           use AM_CFLAGS since all the CFLAGS are the same
11870           use AM_LDFAGS
11871
11872 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11873
11874         * docs/manual/gnome.xml:
11875           expand example a little
11876         * gst/gst.c: (gst_init_with_popt_table),
11877         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
11878           make sure popt option displays are done with right textdomain
11879           use GstPoptOption type
11880         * gst/gst.h:
11881           create GstPoptOption type
11882
11883 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11884
11885         * gst/gsterror.c: (_gst_stream_errors_init):
11886         * gst/gsterror.h:
11887           adding error type for no codec
11888         * po/POTFILES.in:
11889           add gst-inspect
11890         * po/nl.po:
11891           update dutch translation
11892         * tools/gst-inspect.c: (print_element_list), (main):
11893           do proper internationalization
11894         * tools/gst-launch.c: (idle_func):
11895           remove commented out function call
11896
11897 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11898
11899         * docs/README:
11900           add some error fixing notes
11901         * docs/gst/gstreamer-sections.txt:
11902           remove double entries
11903         * docs/gst/tmpl/gstbin.sgml:
11904         * docs/gst/tmpl/gstclock.sgml:
11905           remove override
11906         * docs/gst/tmpl/gstelement.sgml:
11907         * docs/gst/tmpl/gstindex.sgml:
11908         * docs/gst/tmpl/gstobject.sgml:
11909         * docs/gst/tmpl/gstpadtemplate.sgml:
11910         * docs/gst/tmpl/gstreamer-unused.sgml:
11911         * docs/gst/tmpl/gsttag.sgml:
11912         * docs/gst/tmpl/gstthread.sgml:
11913         * docs/gst/tmpl/gstxml.sgml:
11914         * gst/gsttag.h:
11915           sync header prototypes with c decls
11916         * gst/gsttaginterface.c:
11917           fix doc headers
11918
11919 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11920
11921         * gst/parse/Makefile.am:
11922         * gst/gstobject.h:
11923           get rid of gstmarshal.h dependency. It's not needed.
11924         * gst/gst.h:
11925         * gst/elements/gstfakesink.c:
11926         * gst/elements/gstfakesrc.c:
11927         * gst/elements/gstidentity.c:
11928         * gst/gstbin.c:
11929         * gst/gstelement.c:
11930         * gst/gstindex.c:
11931         * gst/gstobject.c:
11932         * gst/gstpad.c:
11933         * gst/gstthread.c:
11934         * gst/gstxml.c:
11935         * libs/gst/control/dparam.c:
11936         * libs/gst/control/dparammanager.c:
11937           include gstmarshal.h.
11938         Fixes #132045
11939
11940 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11941
11942         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11943         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
11944         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
11945         * gst/elements/gstfilesrc.h:
11946           don't ref the filesrc when creating mmaped buffers. Don't keep a
11947           list of not-yet-destroyed buffers.
11948         * gst/gstbuffer.h:
11949           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
11950
11951 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11952
11953         * gst/gst.c: (init_pre):
11954           remove textdomain
11955
11956 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11957
11958         * docs/pwg/advanced-events.xml:
11959         * docs/pwg/advanced-scheduling.xml:
11960         * docs/pwg/intro-basics.xml:
11961         * docs/pwg/other-manager.xml:
11962         * docs/pwg/other-nton.xml:
11963         * docs/pwg/other-ntoone.xml:
11964         * docs/pwg/other-oneton.xml:
11965         * docs/pwg/pwg.xml:
11966           All sort of documentation... Forgot what. Point is that I want this
11967           in before I leave. The 'other-*' will be the last section and will
11968           explain issues specific to these type of elements.
11969
11970 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11971
11972         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11973         (gst_filesrc_get_read):
11974           set all the values on buffers that we can
11975
11976 2004-02-02  David Schleef  <ds@schleef.org>
11977
11978         Change usage of isblah() to g_ascii_isblah() to be more locale
11979         independent.  (#133076)
11980         * gst/gsturi.c: (gst_uri_protocol_check_internal):
11981         * gst/gstutils.c:
11982         * gst/parse/parse.l:
11983
11984 2004-02-02  Jon Trowbridge  <trow@gnu.org>
11985
11986         reviewed by: David Schleef  <ds@schleef.org>
11987
11988         Fix memory leaks:
11989         * gst/gstcaps.c: (gst_caps_to_string):
11990         * gst/registries/gstxmlregistry.c:
11991         (gst_xml_registry_add_path_list_func),
11992         (gst_xml_registry_parse_padtemplate):
11993
11994 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11995
11996         * gst/gstelement.c: (gst_element_default_error):
11997           suffix error messages with period
11998
11999 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12000
12001         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12002         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12003         * gst/gsterror.c: (gst_error_get_message):
12004           Suffix with dots
12005         * po/fr.po:
12006         * po/nl.po:
12007           Update translation files
12008
12009 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12010
12011         * gst/autoplug/gstspideridentity.c:
12012         (gst_spider_identity_sink_loop_type_finding):
12013         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12014         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12015         (gst_filesink_close_file), (gst_filesink_handle_event),
12016         (gst_filesink_chain):
12017         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12018         (gst_filesrc_get_read), (gst_filesrc_open_file):
12019         * gst/elements/gstidentity.c: (gst_identity_chain):
12020         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12021         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12022         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12023         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12024         * gst/gsterror.c: (_gst_core_errors_init),
12025         (_gst_library_errors_init), (_gst_resource_errors_init),
12026         (_gst_stream_errors_init), (gst_error_get_message):
12027         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12028         (gst_pad_recover_caps_error), (gst_pad_pull):
12029         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12030         * gst/schedulers/gstbasicscheduler.c:
12031         (gst_basic_scheduler_chainhandler_proxy),
12032         (gst_basic_scheduler_gethandler_proxy),
12033         (gst_basic_scheduler_cothreaded_chain):
12034           Suffix error messages with period.
12035           Use (NULL) instead of NULL
12036
12037 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12038
12039         * docs/gst/tmpl/gstelement.sgml:
12040         * docs/gst/tmpl/gstxml.sgml:
12041         * gst/gstelement.c: (gst_element_error_full):
12042           add element path to error
12043
12044 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12045
12046         * docs/random/mimetypes:
12047           update raw int/float info
12048         * gst/gsttag.c: (_gst_tag_initialize):
12049         * gst/gsttag.h:
12050           add GST_TAG_ENCODER
12051
12052 2004-01-30  David Schleef  <ds@schleef.org>
12053
12054         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12055           missing (#132991)
12056
12057 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12058
12059         reviewed by Benjamin Otte 
12060           parts of the patch submitted in bug #113913
12061
12062         * configure.ac:
12063           use AC_C_INLINE. Use = instead of == with test
12064         * examples/plugins/example.c:
12065         * gst/autoplug/gstspideridentity.c:
12066         * gst/elements/gstfdsrc.c:
12067         * gst/elements/gstfilesrc.c:
12068         * gst/elements/gstidentity.c:
12069         * gst/elements/gstmultidisksrc.c:
12070         * gst/elements/gststatistics.c:
12071         * gst/gstelement.c:
12072         * gst/gstobject.c:
12073         * gst/gstpad.c:
12074         * gst/gstpipeline.c:
12075         * gst/gstthread.c:
12076           don't end enums with a comma
12077         * gst/gstindex.c: (gst_index_compare_func):
12078           do explicit casting to gint
12079         * gst/gsttrace.c: (gst_trace_text_flush):
12080           #define strsize as a macro
12081
12082 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12083
12084         * docs/README:
12085         * docs/gst/gstreamer-docs.sgml:
12086         * docs/gst/gstreamer-sections.txt:
12087         * docs/gst/tmpl/gstelement.sgml:
12088         * docs/gst/tmpl/gsterror.sgml:
12089         * docs/gst/tmpl/gstinterface.sgml:
12090         * docs/gst/tmpl/gstreamer-unused.sgml:
12091         * docs/gst/tmpl/gststructure.sgml:
12092         * docs/gst/tmpl/gsttag.sgml:
12093         * docs/gst/tmpl/gsttaginterface.sgml:
12094         * docs/gst/tmpl/gstvalue.sgml:
12095         make sure all API ends up in the built docs
12096         * gst/gstinterface.c:
12097         * gst/gststructure.c: (gst_structure_id_set_value),
12098         (gst_structure_set_value), (gst_structure_id_get_value):
12099         * gst/gststructure.h:
12100         * gst/gstvalue.h:
12101         sync .h with .c declarations
12102
12103 2004-01-30  Julien Moutte  <julien@moutte.net>
12104
12105         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12106         Ronald will fix riffread.
12107
12108 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12109
12110         * docs/pwg/advanced-interfaces.xml:
12111           Added tuner interface docs.
12112
12113 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12114
12115         * docs/random/mimetypes:
12116           correct Theora information
12117         * gst/gstelement.h:
12118           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12119
12120 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12121
12122         * gst/gstelement.c: (gst_element_error_full):
12123         * gst/gstelement.h:
12124           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12125
12126 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12127
12128         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12129         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12130         again and even before DISCONT.
12131         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12132         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12133         bytestream so that it's not stopping to fill the bytestream if events
12134         different than EOS or DISCONT are received. Instead it process them so
12135         that they go downstream.
12136
12137 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12138
12139         * docs/gst/tmpl/gstelement.sgml:
12140         * docs/gst/tmpl/gstreamer-unused.sgml:
12141         * docs/gst/tmpl/gstxml.sgml:
12142         * gst/autoplug/gstspideridentity.c:
12143         (gst_spider_identity_sink_loop_type_finding):
12144         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12145         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12146         (gst_filesink_close_file), (gst_filesink_handle_event),
12147         (gst_filesink_chain):
12148         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12149         (gst_filesrc_get_read), (gst_filesrc_open_file):
12150         * gst/elements/gstidentity.c: (gst_identity_chain):
12151         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12152         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12153         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12154         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12155         * gst/gstelement.h:
12156         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12157         (gst_pad_recover_caps_error), (gst_pad_pull):
12158         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12159         * gst/schedulers/gstbasicscheduler.c:
12160         (gst_basic_scheduler_chainhandler_proxy),
12161         (gst_basic_scheduler_gethandler_proxy),
12162         (gst_basic_scheduler_cothreaded_chain):
12163           gst_element_error -> GST_ELEMENT_ERROR
12164
12165 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12166
12167         * docs/Makefile.am:
12168         * docs/gst/tmpl/gstelement.sgml:
12169         * docs/gst/tmpl/gstxml.sgml:
12170         * docs/manuals.mak:
12171         * docs/pwg/advanced-request.xml:
12172         * docs/pwg/advanced-scheduling.xml:
12173         * docs/pwg/advanced-tagging.xml:
12174           fix non-validating docbook using CDATA
12175           make sure make check-local gets run first to check if it validates
12176
12177 2004-01-29  Julien MOUTTE <julien@moutte.net>
12178
12179         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12180         handling (up and downstream).
12181         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12182         my_filter thing.
12183
12184 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12185
12186         * docs/pwg/advanced-tagging.xml:
12187           Add docs about tag writing.
12188
12189 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12190
12191         * docs/pwg/advanced-tagging.xml:
12192           Add a part about tag reading and application signalling... Tag
12193           writing still needs to be documented.
12194         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12195           We can set file locations in READY, too.
12196
12197 2004-01-29  Julien MOUTTE <julien@moutte.net>
12198
12199         * docs/random/ds/element-checklist: Adding some notes about src
12200         events.
12201
12202 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12203
12204         * docs/random/mimetypes:
12205           Update docs to point to correct elements for various mimetypes, and
12206           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12207           <stephane.loeuillet@tiscali.fr>.
12208
12209 2004-01-28  David Schleef  <ds@schleef.org>
12210
12211         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12212
12213 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12214
12215         * docs/random/mimetypes:
12216           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12217           undefined"
12218         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12219           make it only work in NULL.
12220         * gst/gstcaps.c:
12221           don't posion NULL caps
12222         * gst/gstelement.c: (gst_element_set_time):
12223           add debugging statement
12224         * gst/gstelement.c: (gst_element_emit_found_tag),
12225         (gst_element_found_tag_func), (gst_element_found_tags):
12226         * gst/gstelement.h:
12227           These functions take const taglists
12228         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12229           fix memleak
12230         * gst/gstpad.c: (gst_pad_event_default):
12231           make more effort on handling discont and clocks, g_warn if everything
12232           fails
12233         * gst/gststructure.c: (gst_structure_remove_fields),
12234         (gst_structure_remove_fields_valist):
12235         * gst/gststructure.h:
12236           add gst_structure_remove_fields(_valist)
12237         * gst/gsttag.c:
12238           fix doc glitch
12239
12240 2004-01-28  David Schleef  <ds@schleef.org>
12241
12242         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12243         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12244         Fix memory leakage of gst_caps_to_string().
12245
12246         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12247         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12248         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12249         (gst_spider_identity_sink_loop_type_finding):
12250         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12251         (find_suggest):
12252         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12253         (gst_pad_set_explicit_caps):
12254         * gst/parse/grammar.y:
12255
12256 2004-01-28  David Schleef  <ds@schleef.org>
12257
12258         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12259         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12260         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12261         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12262         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12263         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12264         (gst_debug_log_default), (_gst_info_printf_extension),
12265         (_gst_info_printf_extension_arginfo):  Add printf extension.
12266         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12267         * gst/gststructure.c: (gst_structure_to_string),
12268         (_gst_structure_parse_value): Use gst_value_deserialize() and
12269         remove old code.
12270         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12271         (gst_value_deserialize_boolean), (gst_strtoi),
12272         (gst_value_deserialize_int), (gst_value_deserialize_double),
12273         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12274         a bunch of deserialize functions and gst_value_deserialize.
12275         * gst/gstvalue.h: er, _de_serialize, not unserialize
12276         * testsuite/caps/string-conversions.c: (main): We don't currently
12277         handle (float) in caps, so convert these to (double).
12278         * testsuite/debug/Makefile.am: Add new test for the printf extension
12279         * testsuite/debug/printf_extension.c: (main): same
12280
12281 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12282
12283         * docs/random/company/time:
12284           Add some docs about clocking and time
12285
12286 2004-01-28  Julien MOUTTE <julien@moutte.net>
12287
12288         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12289
12290 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12291
12292         * docs/pwg/advanced-clock.xml:
12293         * docs/pwg/advanced-dparams.xml:
12294         * docs/pwg/advanced-events.xml:
12295         * docs/pwg/advanced-interfaces.xml:
12296         * docs/pwg/advanced-midi.xml:
12297         * docs/pwg/advanced-request.xml:
12298         * docs/pwg/advanced-scheduling.xml:
12299         * docs/pwg/advanced-tagging.xml:
12300         * docs/pwg/advanced-types.xml:
12301         * docs/pwg/appendix-checklist.xml:
12302         * docs/pwg/building-boiler.xml:
12303         * docs/pwg/building-chainfn.xml:
12304         * docs/pwg/building-filterfactory.xml:
12305         * docs/pwg/building-pads.xml:
12306         * docs/pwg/building-props.xml:
12307         * docs/pwg/building-signals.xml:
12308         * docs/pwg/building-state.xml:
12309         * docs/pwg/building-testapp.xml:
12310         * docs/pwg/intro-basics.xml:
12311         * docs/pwg/intro-preface.xml:
12312         * docs/pwg/other-autoplugger.xml:
12313         * docs/pwg/other-sink.xml:
12314         * docs/pwg/other-source.xml:
12315         * docs/pwg/titlepage.xml:
12316           fix up id's
12317
12318 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12319
12320         * docs/95NonPath:
12321         * docs/HACKING:
12322         * docs/README:
12323         * docs/building-the-docs-on-debian:
12324           collect relevant bits of doc info
12325
12326 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12327
12328         * docs/pwg/advanced_tagging.xml:
12329           Half-assed commit so Thomas can re-arrange document IDs here to be
12330           consistent, too.
12331
12332 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12333
12334         * docs/manual/autoplugging.xml:
12335         * docs/manual/bins-api.xml:
12336         * docs/manual/bins.xml:
12337         * docs/manual/buffers-api.xml:
12338         * docs/manual/buffers.xml:
12339         * docs/manual/clocks.xml:
12340         * docs/manual/components.xml:
12341         * docs/manual/cothreads.xml:
12342         * docs/manual/debugging.xml:
12343         * docs/manual/dparams-app.xml:
12344         * docs/manual/dynamic.xml:
12345         * docs/manual/elements-api.xml:
12346         * docs/manual/elements.xml:
12347         * docs/manual/factories.xml:
12348         * docs/manual/gnome.xml:
12349         * docs/manual/goals.xml:
12350         * docs/manual/helloworld.xml:
12351         * docs/manual/helloworld2.xml:
12352         * docs/manual/init-api.xml:
12353         * docs/manual/intro.xml:
12354         * docs/manual/links-api.xml:
12355         * docs/manual/links.xml:
12356         * docs/manual/manual.xml:
12357         * docs/manual/motivation.xml:
12358         * docs/manual/pads-api.xml:
12359         * docs/manual/pads.xml:
12360         * docs/manual/plugins-api.xml:
12361         * docs/manual/plugins.xml:
12362         * docs/manual/programs.xml:
12363         * docs/manual/queues.xml:
12364         * docs/manual/quotes.xml:
12365         * docs/manual/schedulers.xml:
12366         * docs/manual/states-api.xml:
12367         * docs/manual/states.xml:
12368         * docs/manual/threads.xml:
12369         * docs/manual/typedetection.xml:
12370         * docs/manual/xml.xml:
12371           use chapter, part, section or misc as id starts for all bits
12372
12373 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12374
12375         * docs/gst/gstreamer-sections.txt:
12376           Fix up TITLE of the sections
12377
12378 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12379
12380         * docs/pwg/advanced_interfaces.xml:
12381           Add documentation on propertyprobing.
12382         * docs/pwg/advanced_events.xml:
12383         * docs/pwg/advanced_tagging.xml:
12384         * docs/pwg/building_boiler.xml:
12385         * docs/pwg/building_filterfactory.xml:
12386         * docs/pwg/pwg.xml:
12387           Move filterfactory and tagging into their own chapter, add a chapter
12388           on events. all these are empty placeholders that will be filled in
12389           some day.
12390
12391 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12392
12393         * docs/pwg/advanced_interfaces.xml:
12394           Docs for mixer interface. Also a check for website uploading.
12395
12396 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12397
12398         * docs/HACKING:
12399         * docs/Makefile.am:
12400         * docs/faq/Makefile.am:
12401         * docs/gst/Makefile.am:
12402         * docs/gst/tmpl/gstelement.sgml:
12403         * docs/gst/tmpl/gstplugin.sgml:
12404         * docs/gst/tmpl/gstreamer-unused.sgml:
12405         * docs/libs/Makefile.am:
12406         * docs/manual/Makefile.am:
12407         * docs/manuals.mak:
12408         * docs/pwg/Makefile.am:
12409         * docs/upload.mak:
12410           Separate out upload target and make it similar for
12411           both docbook and gtk-doc docs
12412
12413 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12414
12415         * docs/manuals.mak:
12416           Fix upload target to work with freedesktop
12417
12418 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12419
12420         * docs/pwg/advanced_types.xml:
12421           Add notes on creating your own types.
12422         * docs/pwg/building_boiler.xml:
12423         * docs/pwg/building_pads.xml:
12424         * docs/pwg/building_state.xml:
12425           Add some stuff about how to retrieve values from structures, how
12426           that relates to types and change layout slightly again to be almost
12427           perfect.
12428
12429 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12430
12431         * docs/pwg/advanced_dparams.xml:
12432         * docs/pwg/advanced_scheduling.xml:
12433           Change index layout slightly.
12434
12435 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12436
12437         * docs/pwg/advanced_clock.xml:
12438         * docs/pwg/advanced_interfaces.xml:
12439         * docs/pwg/advanced_midi.xml:
12440           General placeholders for now.
12441         * docs/pwg/advanced_request.xml:
12442           Explanation about sometimes and request pads.
12443         * docs/pwg/advanced_scheduling.xml:
12444           Concept of bytestream, loopfunctions and schedulers.
12445         * docs/pwg/building_boiler.xml:
12446           Add something about plugin-init.
12447
12448 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12449
12450         * docs/pwg/building_pads.xml:
12451           Fix broken docbook
12452
12453 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12454
12455         * docs/pwg/advanced_interfaces.xml:
12456         * docs/pwg/pwg.xml:
12457           Add as a placeholder for future filling-in.
12458         * docs/pwg/basics_autoplugging.xml:
12459         * docs/pwg/basics_buffers.xml:
12460         * docs/pwg/basics_elements.xml:
12461         * docs/pwg/basics_events.xml:
12462         * docs/pwg/basics_plugins.xml:
12463         * docs/pwg/basics_types.xml:
12464           Remove, because unused (this is all in intro_basics.xml).
12465         * docs/pwg/building_signals.xml:
12466           Short intro to signals + reference to GObject docs - we really
12467           shouldn't go into these sort of things to deply because we don't
12468           use them that extensively anyway.
12469         * docs/pwg/building_state.xml:
12470           Explanation of states. Benjamin, please check.
12471         * docs/pwg/building_testapp.xml:
12472           Put everything in one page - putting only a few lines of content
12473           per page doesn't really make sense.
12474
12475           Time to get into the advanced topics. ;).
12476
12477 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12478
12479         * docs/pwg/advanced_types.xml:
12480           Finish documenting the current state of mimetypes.
12481         * docs/pwg/building_boiler.xml:
12482         * docs/pwg/building_chainfn.xml:
12483         * docs/pwg/building_pads.xml:
12484         * docs/pwg/building_props.xml:
12485         * docs/pwg/building_testapp.xml:
12486           Start documenting the "how to build a simple audio filter" part
12487           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12488           states and (maybe?) a short introduction to capsnego in the chapter
12489           on pads (building_pads.xml). Capsnego should probably be explained
12490           fully in advanced_capsnego.xml or so.
12491
12492 2004-01-26  David Schleef  <ds@schleef.org>
12493
12494         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12495         * gst/gstpad.h: Add new function to allow element to (somewhat)
12496         specify non-fixed caps on a pad.
12497         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12498         that I added a few weeks ago.
12499
12500 2004-01-26  David Schleef  <ds@schleef.org>
12501
12502         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12503           making try_set_caps() work with non-fixed caps.
12504
12505 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12506
12507         * docs/pwg/advanced_types.xml:
12508         * docs/pwg/intro_basics.xml:
12509         * docs/pwg/intro_preface.xml:
12510         * docs/pwg/pwg.xml:
12511         * docs/pwg/titlepage.xml:
12512           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12513           in here (docs/random/mimetypes), and will from there on work on both
12514           updating outdated parts and adding missing parts.
12515           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12516
12517 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12518
12519         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12520           policy is set
12521
12522 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12523
12524         * gst/gstelement.h:
12525           remove gst_element_factory_get_version. It doesn't exist anymore.
12526         * gst/gstplugin.c:
12527         * gst/gstplugin.h:
12528           remove gst_plugin_set_name and change gst_plugin_get_longname to
12529           gst_plugin_get_description to match code.
12530         * gst/gsterror.h:
12531           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12532         * gst/gstpad.c: (gst_pad_try_set_caps):
12533           make it work with nonfixed caps.
12534           Note that even in the nonfixed case the link function of the pad
12535           that tries to set caps isn't called.
12536
12537 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12538
12539         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12540           fix bug where buffer was not assembled correctly
12541         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12542           silence by default
12543         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12544           only seek if there's no more buffers that could work without seeking
12545
12546 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12547
12548         * gst/gsttag.c: (_gst_tag_initialize):
12549         * gst/gsttag.h:
12550           Add application tag (for encoding/muxing app).
12551
12552 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12553
12554         * autogen.sh:
12555           make autopoint force, and libtoolize not copy
12556         * common/m4/as-docbook.m4:
12557           added docbook xml catalog setup check
12558         * common/m4/gst-doc.m4:
12559           use docbook check
12560
12561 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12562
12563         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12564         * gst/gsttag.h:
12565           add GstTagFlag
12566
12567 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12568
12569         * docs/gst/gstreamer-sections.txt:
12570         * docs/gst/tmpl/gst.sgml:
12571         * docs/gst/tmpl/gstbuffer.sgml:
12572         * docs/gst/tmpl/gstclock.sgml:
12573         * docs/gst/tmpl/gstelement.sgml:
12574         * docs/gst/tmpl/gstreamer-unused.sgml:
12575         * docs/gst/tmpl/gstxml.sgml:
12576           sync latest API changes to docs
12577
12578 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12579
12580         * gst/gstpluginfeature.c:
12581           fix doc snippet
12582         * tools/gst-inspect.c: (print_element_list):
12583           fix output of typefind
12584           add GPL header
12585         * tools/gst-launch.c:
12586           add GPL header
12587
12588 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12589
12590         * gst/elements/Makefile.am:
12591         * gst/elements/gstelements.c:
12592         * gst/elements/gsttypefindelement.c:
12593         * gst/elements/gsttypefindelement.h:
12594         * po/POTFILES.in:
12595         * po/fr.po:
12596         * po/nl.po:
12597           renamed gsttypefindelement to gsttypefind, conserving CVS history
12598
12599 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12600
12601         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12602         * gst/gsttag.h:
12603           add some tags used in ogg as well
12604           fix _ in replaygain tags
12605
12606 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12607
12608         * gst/gsterror.h:
12609           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12610
12611 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12612
12613         * gst/gstelement.c: (gst_element_error_full):
12614         * gst/gstelement.h:
12615           change _extended to _full
12616
12617 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12618
12619         reviewed by: <delete if not using a buddy>
12620
12621         * docs/gst/tmpl/gst.sgml:
12622         * docs/gst/tmpl/gstbuffer.sgml:
12623         * docs/gst/tmpl/gstclock.sgml:
12624         * docs/gst/tmpl/gstelement.sgml:
12625         * docs/gst/tmpl/gstreamer-unused.sgml:
12626         * docs/gst/tmpl/gstxml.sgml:
12627         * gst/gstelement.c: (gst_element_error_full):
12628         * gst/gstelement.h:
12629
12630 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12631
12632         * gst/gstelement.h: fix _gst_element_error_printf prototype
12633
12634 2004-01-20  David Schleef  <ds@schleef.org>
12635
12636         * gst/gststructure.c: (gst_structure_to_string):
12637         Convert function to use gst_value_serialize().
12638         * gst/gstvalue.c: (gst_value_serialize_list),
12639         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
12640         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
12641         (gst_value_serialize_int), (gst_value_serialize_double),
12642         (gst_string_wrap), (gst_value_serialize_string),
12643         (gst_value_serialize), (gst_value_deserialize):
12644         * gst/gstvalue.h:
12645         Add implementations for serialize.
12646
12647 2004-01-20  Julien MOUTTE  <julien@moutte.net>
12648
12649         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
12650         we want to keep that one in the future or change xvidenc.c to use 
12651         another error.
12652
12653 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12654
12655         * gst/gstelement.c: (_gst_element_error_printf):
12656         * gst/gstelement.h:
12657           privatise function
12658
12659 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12660
12661         * docs/random/error:
12662           doc explaining error system
12663         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12664           cleanup
12665
12666 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12667
12668         * gst/gst-i18n-app.h:
12669         * gst/gst-i18n-lib.h:
12670           remove inclusion of config.h
12671         * po/POTFILES.in:
12672         * po/nl.po:
12673           add gst/gstelement.c
12674
12675 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12676
12677         * po/nl.po: updated Dutch translation
12678
12679 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12680
12681         * gst/gsterror.c: (_gst_core_errors_init),
12682         (_gst_library_errors_init), (_gst_resource_errors_init),
12683         (_gst_stream_errors_init):
12684         remove ending punctuation dots
12685
12686 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12687
12688         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12689         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
12690         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12691         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12692         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12693         use GST_ERROR_SYSTEM
12694
12695 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12696
12697         * gst/gstelement.c: (gst_element_error_printf),
12698         (gst_element_error_extended):
12699         * gst/gstelement.h:
12700           add a helper printf function so we can have NULL values passed.
12701
12702 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12703
12704         * gst/gstelement.h:
12705           add G_STMT macros to gst_element_error, which isn't strictly
12706           necessary but people tell me to anyway.
12707
12708 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12709
12710         * gst/Makefile.am:
12711         * gst/autoplug/gstspideridentity.c:
12712         (gst_spider_identity_sink_loop_type_finding):
12713         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12714         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12715         (gst_filesink_close_file), (gst_filesink_handle_event),
12716         (gst_filesink_chain):
12717         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
12718         (gst_filesrc_map_region), (gst_filesrc_get_read),
12719         (gst_filesrc_open_file):
12720         * gst/elements/gstidentity.c: (gst_identity_chain):
12721         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12722         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12723         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12724         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
12725         * gst/gst.h:
12726         * gst/gst_private.h:
12727         * gst/gstelement.c: (gst_element_class_init),
12728         (gst_element_default_error), (gst_element_error_func),
12729         (gst_element_error_extended):
12730         * gst/gstelement.h:
12731         * gst/gsterror.c: (_gst_core_errors_init),
12732         (_gst_library_errors_init), (_gst_resource_errors_init),
12733         (_gst_stream_errors_init), (gst_error_get_message):
12734         * gst/gsterror.h:
12735         * gst/gstinfo.c: (_gst_debug_init):
12736         * gst/gstmarshal.list:
12737         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12738         (gst_pad_recover_caps_error), (gst_pad_pull):
12739         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12740         * gst/schedulers/gstbasicscheduler.c:
12741         (gst_basic_scheduler_chainhandler_proxy),
12742         (gst_basic_scheduler_gethandler_proxy),
12743         (gst_basic_scheduler_cothreaded_chain):
12744         * po/POTFILES.in:
12745         * po/fr.po:
12746         * po/nl.po:
12747           change error signal
12748           add error categories
12749
12750 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
12751
12752         * gst/gsttag.c: (_gst_tag_initialize):
12753         * gst/gsttag.h:
12754         Add replaygain tag
12755
12756 2004-01-18  Colin Walters  <walters@verbum.org>
12757
12758         * examples/retag/retag.c: Call gst_init before processing
12759         program args.  Add g_assert to _link_many call.
12760
12761 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12762
12763         * gst/gstpad.c: (gst_pad_alloc_buffer):
12764           Return a newly allocated buffer when the pad has no peer.
12765
12766 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12767
12768         * gst/gstclock.c: (gst_clock_get_time):
12769           make it compile with gcc 2.95 again.
12770           Patch by Scott Wheeler
12771
12772 2004-01-15  David Schleef  <ds@schleef.org>
12773
12774         * gst/gstcaps.h:
12775         Added gst_caps_is_simple() macro.
12776         * testsuite/caps/caps.c: (test1):
12777         * testsuite/caps/intersect2.c: (main):
12778         * testsuite/caps/intersection.c: (main):
12779         Fixes to make 'make check' work again after removing
12780         gst_caps_is_chained().
12781
12782 2004-01-15  Leif Johnson <leif@ambient.2y.net>
12783
12784         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
12785         and additions to the MIDI document.
12786
12787 2004-01-15  David Schleef  <ds@schleef.org>
12788
12789         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
12790         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
12791         of GST_RPAD_, since we don't know if it's a real or ghost pad.
12792
12793 2004-01-15  David Schleef  <ds@schleef.org>
12794
12795         * gst/gstqueue.c:
12796         * gst/gstqueue.h:
12797         Fix the spelling of "treshold" and make min_threshold actually
12798         affect the queue.
12799
12800 2004-01-15  David Schleef  <ds@schleef.org>
12801
12802         * gst/gstcaps.c:
12803         Add lots of documentation.
12804         * gst/gstcaps.h:
12805         Deprecate a few functions.
12806         * gst/gstpad.c:
12807         Removed use of deprecated functions.
12808
12809 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12810
12811         * gst/gstpad.c: (gst_pad_is_linked):
12812         * gst/gstpad.h:
12813           implement gst_pad_is_linked
12814         * gst/gstelement.h:
12815           reserve space for initiate_state_change
12816
12817 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12818
12819         * gst/autoplug/gstspideridentity.c:
12820         (gst_spider_identity_sink_loop_type_finding):
12821           break infinite loop by just returning instead of looping
12822         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
12823           set event time difference correctly. Set it to 1 second instead
12824           of 100ms to be more tolerant
12825         * gst/gstelement.c: (gst_element_set_time):
12826           add debugging output
12827
12828 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12829
12830         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
12831           query if buffers are inside the pool, ignore events
12832
12833 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12834
12835         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
12836         (gst_clock_set_speed), (gst_clock_set_active),
12837         (gst_clock_is_active), (gst_clock_reset),
12838         (gst_clock_handle_discont):
12839         * gst/gstclock.h:
12840           deprecate old interface and disable functions that aren't in use
12841           anymore.
12842         * gst/gstelement.h:
12843         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
12844         (gst_element_set_time), (gst_element_adjust_time):
12845           add concept of "element time" and functions to get/set this time.
12846         * gst/gstelement.c: (gst_element_change_state):
12847           update element time correctly.
12848         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12849           This is a debug message, not a g_critical.
12850         * gst/gstpad.c: (gst_pad_event_default):
12851           handle discontinuous events right with element time.
12852         * gst/gstscheduler.c: (gst_scheduler_state_transition):
12853           update to clocking fixes.
12854           set clocks on elements in READY=>PAUSED. The old behaviour caused
12855           a wrong element time on the first element that started playing.
12856         * gst/schedulers/gstbasicscheduler.c:
12857         (gst_basic_scheduler_class_init):
12858         * gst/schedulers/gstoptimalscheduler.c:
12859         (gst_opt_scheduler_class_init):
12860           remove code that just implements the default behaviour.
12861         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
12862           update to use new clocking functions
12863         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
12864         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
12865           update to test new element time.
12866         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
12867           use _get_allowed_caps instead of _get_caps. This catches filtered
12868           caps correctly.
12869         * testsuite/debug/commandline.c:
12870           update for new GST_DEBUG syntax.
12871         * testsuite/threads/Makefile.am:
12872           disable a test that only works sometimes.
12873
12874 2004-01-13  Julien MOUTTE <julien@moutte.net>
12875
12876         * po/LINGUAS: Adding fr.
12877         * po/fr.po: Adding french translation.
12878
12879 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12880
12881         * gst/parse/grammar.y:
12882         * po/POTFILES.in:
12883         * po/nl.po:
12884         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
12885           translate parsing error messages
12886
12887 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12888
12889         * po/POTFILES.in: adding gst-launch
12890         * po/nl.po: updated translation, all 99 strings translated
12891         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
12892         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
12893           fix strings for translation
12894
12895 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12896
12897         * gst/gst.c:
12898           - capitalize beginnings of popt options
12899           - fix strings for translation
12900           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
12901
12902 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12903
12904         * po/README: add some notes on how to update translations
12905
12906 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12907
12908         * ABOUT-NLS: removed, is autogenerated from autopoint
12909         * autogen.sh: add autopoint stuff
12910         * configure.ac: fix up gettext stuff
12911         * gst/Makefile.am: add i18n headers to noinst_HEADERS
12912         * gst/elements/gsttypefindelement.c: add header include
12913         * gst/gettext.h: add header, copy from system-installed header
12914         * gst/gst-i18n-app.h: to be included by each app having translations
12915         * gst/gst-i18n-lib.h: to be included by each lib having translations
12916         * gst/gst.c: (init_pre): fix up gettext calls
12917         * gst/gst_private.h: remove i18n stuff, moving to separate headers
12918         * po/LINGUAS: the new way to specify translations present
12919         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
12920         * po/Makevars: the variables filled in for GStreamer
12921         * po/POTFILES.in: added new files with translations
12922         * po/de.po: has new strings
12923         * po/nl.po: readded, has new strings
12924
12925 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12926
12927         * gst/gsttag.c: fix some strings marked for translation
12928
12929 2004-01-13  Iain <iain@prettypeople.org>
12930
12931         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
12932         group when we add an element to it, cos we unref it when we remove one
12933
12934 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12935
12936         * testsuite/debug/commandline.c: (debug_not_reached):
12937         * testsuite/debug/output.c: (check_message):
12938           fix testsuite
12939
12940 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12941
12942         * examples/cutter/.cvsignore:
12943         * examples/helloworld/.cvsignore:
12944         * examples/launch/.cvsignore:
12945         * examples/manual/.cvsignore:
12946         * examples/mixer/.cvsignore:
12947         * examples/pingpong/.cvsignore:
12948         * examples/plugins/.cvsignore:
12949         * examples/queue/.cvsignore:
12950         * examples/queue2/.cvsignore:
12951         * examples/queue3/.cvsignore:
12952         * examples/queue4/.cvsignore:
12953         * examples/retag/.cvsignore:
12954         * examples/thread/.cvsignore:
12955         * examples/typefind/.cvsignore:
12956         * examples/xml/.cvsignore:
12957         * gst/.cvsignore:
12958         * gst/autoplug/.cvsignore:
12959         * gst/elements/.cvsignore:
12960         * gst/indexers/.cvsignore:
12961         * gst/parse/.cvsignore:
12962         * gst/registries/.cvsignore:
12963         * gst/schedulers/.cvsignore:
12964         * libs/gst/bytestream/.cvsignore:
12965         * libs/gst/control/.cvsignore:
12966         * libs/gst/getbits/.cvsignore:
12967         * tests/.cvsignore:
12968         * tests/bufspeed/.cvsignore:
12969         * tests/instantiate/.cvsignore:
12970         * tests/memchunk/.cvsignore:
12971         * tests/muxing/.cvsignore:
12972         * tests/sched/.cvsignore:
12973         * tests/seeking/.cvsignore:
12974         * tests/threadstate/.cvsignore:
12975         * testsuite/.cvsignore:
12976         * testsuite/caps/.cvsignore:
12977         * testsuite/cleanup/.cvsignore:
12978         * testsuite/dynparams/.cvsignore:
12979         * testsuite/plugin/.cvsignore:
12980         * tools/.cvsignore:
12981           update - this is huge, because it includes *.bb, *.bbg and *.da files
12982           which are generated for gcov.
12983
12984 2004-01-11  David Schleef  <ds@schleef.org>
12985
12986         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
12987         a function to parse integers in ways that strto[u]l() does not.
12988
12989 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12990
12991         * tools/gst-inspect.c: (print_caps):
12992           improve output of caps a bit
12993
12994 2004-01-11  David Schleef  <ds@schleef.org>
12995
12996         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
12997         inherit correct flags (READONLY and DONTKEEP).
12998
12999 2004-01-11  David Schleef  <ds@schleef.org>
13000
13001         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
13002         (gst_filesrc_map_region):
13003         * gst/gstbuffer.c: (_gst_buffer_initialize),
13004         (_gst_buffer_sub_free), (gst_buffer_default_copy),
13005         (gst_buffer_new), (gst_buffer_create_sub),
13006         (gst_buffer_is_span_fast), (gst_buffer_span):
13007         * gst/gstbuffer.h:
13008         Change GstBuffer private structure element names. (all files)
13009         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13010         (gst_queue_link):
13011         * gst/gstqueue.h:
13012         Implement getcaps/pad_link functions that handle the case where
13013         there are data in the queue.
13014
13015 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13016
13017         * gst/elements/gstbufferstore.c:
13018           initialize debugging structure correctly
13019         * gst/elements/gsttee.c: (gst_tee_set_property):
13020           g_object_notify when property was changed
13021         * gst/elements/gsttypefindelement.c:
13022         (gst_type_find_element_change_state):
13023           clear caps correctly
13024
13025 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13026
13027         * gst/gstqueue.c: (gst_queue_init):
13028           Use better defaults for when a queue should block. This
13029           gets rid of jerky playback for quite a few files.
13030           It takes more memory.
13031
13032 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13033
13034         (gst_xml_registry_parse_padtemplate):
13035           make critical message slightly more useful
13036
13037 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13038
13039         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13040         (gst_debug_message_get), (gst_debug_log_default):
13041         * gst/gstinfo.h:
13042           Change gst_debug_log(_valist) to take a const format string.
13043           Change prototype of log function and functions using those to 
13044           take a GstDebugMessage instead of a string that requires using
13045           gst_debug_message_get.
13046
13047 2004-01-08  David Schleef  <ds@schleef.org>
13048
13049         * Makefile.am:
13050         * configure.ac:
13051         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13052         and -ftest-coverage, which allows gcov to show information about
13053         testsuite coverage.
13054
13055 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13056
13057         * gst/gstutils.h:
13058           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13059           GST_PARENT_CALL_WITH_DEFAULT
13060         * gst/elements/gstaggregator.c: 
13061         * gst/elements/gstbufferstore.c: 
13062         * gst/elements/gstfakesink.c: 
13063         * gst/elements/gstfakesrc.c: 
13064         * gst/elements/gstfdsink.c: 
13065         * gst/elements/gstfdsrc.c: 
13066         * gst/elements/gstfilesink.c: 
13067         * gst/elements/gstfilesrc.c: 
13068         * gst/elements/gstidentity.c: 
13069         * gst/elements/gstmd5sink.c: 
13070         * gst/elements/gstmultidisksrc.c:
13071         * gst/elements/gstpipefilter.c: 
13072         * gst/elements/gstshaper.c:
13073         * gst/elements/gststatistics.c:
13074         * gst/elements/gsttee.c:
13075         * gst/elements/gsttypefindelement.c:
13076           use them.
13077
13078 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13079
13080         * docs/gst/gstreamer-docs.sgml: remove props
13081         * docs/gst/gstreamer-sections.txt: remove props
13082         * docs/gst/tmpl/gst.sgml:
13083         * docs/gst/tmpl/gstbin.sgml:
13084         * docs/gst/tmpl/gstbuffer.sgml:
13085         * docs/gst/tmpl/gstcaps.sgml:
13086         * docs/gst/tmpl/gstclock.sgml:
13087         * docs/gst/tmpl/gstelement.sgml:
13088         * docs/gst/tmpl/gstindex.sgml:
13089         * docs/gst/tmpl/gstobject.sgml:
13090         * docs/gst/tmpl/gstpad.sgml:
13091         * docs/gst/tmpl/gstpadtemplate.sgml:
13092         * docs/gst/tmpl/gstreamer-unused.sgml:
13093         * docs/gst/tmpl/gstthread.sgml:
13094         * docs/gst/tmpl/gstxml.sgml:
13095           sync with code reorganization
13096
13097 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13098
13099         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13100         Make the 'Could not find compatible pad' message more informative.
13101
13102 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13103                                                                                 
13104         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13105           Fix for if we pass NULL as property to location.
13106         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13107         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13108           Fix for instantiate-test (see below).
13109         * gst/gststructure.c: (_gst_structure_parse_value):
13110           Fix compile error on gcc-2.96.
13111         * configure.ac:
13112         * tests/Makefile.am:
13113         * tests/instantiate/Makefile.am:
13114         * tests/instantiate/create.c: (create_all_elements), (main):
13115           Add a test that instantiates all elements. This makes it easy to
13116           track dead code for old API/design (like setting event functions
13117           on sink pads and so on).
13118
13119 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13120
13121         * gst/gstcaps.c: (gst_caps_append_structure):
13122           Move the poisoning to allow a NULL structure
13123         * gst/gstevent.c: (_gst_event_free):
13124           When freeing a navigation event, free the structure
13125           also
13126
13127 2004-01-04  David Schleef  <ds@schleef.org>
13128
13129         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13130         Remove usage of gst_pad_proxy_fixate.
13131         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13132         (gst_caps_split_one), (gst_caps_replace):
13133         Add poisoning code.
13134         * gst/gstmarshal.list:
13135         Add pointer__pointer for fixate signal
13136         * gst/gstpad.c: (gst_real_pad_class_init),
13137         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13138         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13139         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13140         Add poisoning code. Add fixate signal on RealPad. Change
13141         set_explicit_caps() to take const GstCaps, like try_set_caps().
13142         * gst/gstpad.h:
13143         * testsuite/caps/Makefile.am:
13144         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13145
13146 2004-01-03  David Schleef  <ds@schleef.org>
13147
13148         * gst/elements/gsttypefindelement.c:
13149         (gst_type_find_element_have_type), (gst_type_find_element_init):
13150         Use gst_pad_use_explicit_caps for src pad.
13151         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13152         before using it.
13153
13154 2004-01-03  David Schleef  <ds@schleef.org>
13155
13156         * gst/gstelement.c: (gst_element_link_pads_filtered),
13157         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13158         that linking was successful.
13159         * gst/gstpad.c: (gst_pad_link_free),
13160         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13161         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13162         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13163         GstPadLinkReturn correctly between functions, and don't fail
13164         when DELAYED is used (DELAYED is very important).  Better
13165         cleanup on unlinking and unnegotiation.  Should fix some spider
13166         bugs.
13167
13168 2004-01-02  David Schleef  <ds@schleef.org>
13169
13170         * gst/gstelement.c: (gst_element_class_init),
13171         (gst_element_base_class_init): ->padtemplates should be cleared
13172         in base_init, since we need to have a fresh list for every
13173         class.  (Alternately, we chould copy the list and share the
13174         actual pad templates (not the list), but that would require
13175         changing every plugin to move pad template registration from
13176         base_init to class_init.)
13177
13178 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13179
13180         * gst/gstelement.c: (gst_element_class_add_pad_template):
13181           Refuse registering a pad template if another pad template
13182           with the same name already exists (#114715).
13183
13184 2004-01-02  David Schleef  <ds@schleef.org>
13185
13186         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13187         (gst_caps_is_equal_fixed): Add new function.
13188         * gst/gstcaps.h: ditto.
13189         * gst/gstpad.c: (gst_real_pad_class_init),
13190         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13191         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13192         check new caps against existing caps -- if they're the same, return
13193         OK without renegotiating.  caps-nego-failed signal fixed so that
13194         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13195         to save an extra caps copy.  Don't complete negotiation if a pad
13196         link function returns DELAYED.
13197
13198 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13199
13200         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13201           Fix wrong g_return_if_fail
13202
13203 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13204
13205         * gst/gstbin.c: (gst_bin_class_init):
13206         Change the marshalling of element_added/element_removed
13207         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13208         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13209
13210 2004-01-01  David Schleef  <ds@schleef.org>
13211
13212         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13213         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13214         (gst_pad_use_explicit_caps):
13215         * gst/gstpad.h:
13216         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13217         to use an internal getcaps and link fuction so that negotiation
13218         always results in the explicitly set caps.
13219         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13220         are particularly useful for decoders.
13221
13222 2003-12-31  David Schleef  <ds@schleef.org>
13223
13224         * gst/elements/gstidentity.c: (gst_identity_class_init),
13225         (gst_identity_init), (gst_identity_chain),
13226         (gst_identity_set_property), (gst_identity_get_property):
13227         * gst/elements/gstidentity.h:
13228         * gst/gstqueue.c: (gst_queue_init):
13229           Negotiation fixes.
13230
13231 2003-12-31  David Schleef  <ds@schleef.org>
13232
13233         * gst/gstcaps.c: (gst_caps_intersect),
13234         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13235           Implement gst_caps_normalize().
13236         * testsuite/caps/normalisation.c: (main):
13237           Add an additional test
13238
13239 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13240
13241         * gst/gstqueue.c: (gst_queue_init):
13242           use gst_pad_proxy_getcaps()
13243
13244 2003-12-31  David Schleef  <ds@schleef.org>
13245
13246         * gst/elements/gstshaper.c: (gst_shaper_link):
13247         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13248         * gst/gstqueue.c: (gst_queue_link):
13249           Negotiation fixes.
13250
13251 2003-12-31  David Schleef  <ds@schleef.org>
13252
13253         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13254         * gst/gstpad.h: Add functions that are useful as default pad
13255         link and fixate functions for elements.
13256
13257 2003-12-30  David Schleef  <ds@schleef.org>
13258
13259         * gst/gstpad.c: (gst_pad_link_try):
13260           Fix segfault when attempting to return to old caps
13261
13262 2003-12-29  David Schleef  <ds@schleef.org>
13263
13264         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13265         (gst_caps_structure_simplify), (gst_caps_simplify):
13266         * gst/gstcaps.h:
13267           Add simplify function
13268         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13269         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13270         * gst/gstpad.h:
13271           Copy over srcnotify, sinknotify when calling old pad_link
13272           functions.  Add new is_negotiated() function.
13273         * gst/gststructure.c: (gst_structure_copy):
13274           Fix an incredibly stupid bug that should have been noticed
13275           weeks ago.  _copy() returned the argument, not the new copy.
13276
13277 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13278
13279         * gst/gstcaps.c: (gst_caps_append):
13280           add sanity checks
13281         * gst/gstcaps.h: (gst_caps_debug):
13282           remove, it doesn't exist anymore.
13283         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13284         (gst_element_threadsafe_properties_post_run):
13285           make debugging messages not clutter up THREAD debug category
13286         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13287         (gst_element_change_state):
13288           update to new caps API
13289         * gst/gstinterface.c: (gst_implements_interface_cast):
13290           don't put vital code in g_return_if_fail
13291         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13292         (gst_pad_link_filtered):
13293           add pst_pad_try_link and use it.
13294         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13295           implement correctly, deprecate first one.
13296         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13297           add and implement.
13298         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13299           implement.
13300         (gst_pad_get_negotiated_caps):
13301           add and implement. Make GST_PAD_CAPS call this function.
13302         (gst_pad_get_caps):
13303           remove unneeded check..
13304         (gst_pad_recover_caps_error):
13305           disable, always return FALSE.
13306         (gst_real_pad_dispose):
13307           don't free caps and appfilter anymore, they're unused.
13308         * gst/gstpad.h:
13309           Reflect changes mentioned above.
13310         * gst/gstsystemclock.c: (gst_system_clock_wait):
13311           Make 'clock is way behind' a debugging message.
13312         * gst/gstthread.c: (gst_thread_change_state):
13313           Fix debugging message
13314
13315 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13316
13317         * gst/gstinfo.h:
13318           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13319         * docs/gst/tmpl/gstreamer-unused.sgml:
13320           removed all traces of cvs conflicts
13321
13322 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13323
13324         * configure.ac:
13325         * gst/schedulers/cothreads_compat.h:
13326         * libs/Makefile.am:
13327           remove last instances of wingo cothread usage
13328
13329 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13330
13331         * gst/gstplugin.c:
13332         * gst/gstversion.h.in:
13333         * gst/parse/grammar.y:
13334           change comment block from /** to /* when not gtk-doc comments
13335
13336 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13337
13338         * gst/gst.c: whitespace and doc style fixes
13339
13340 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13341
13342         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13343
13344 2003-12-24  Colin Walters  <walters@verbum.org>
13345
13346         * gst/elements/gsttypefindelement.c:
13347           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13348           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13349           Don't double-free caps.
13350
13351 2003-12-23  David Schleef  <ds@schleef.org>
13352
13353         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13354           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13355           Many little fixes and additions of debug statements to
13356           get rhythmbox working.
13357
13358 2003-12-23  Colin Walters  <walters@verbum.org>
13359
13360         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13361         Use GST_PAD_LINK_SUCCESSFUL.
13362
13363 2003-12-23  David Schleef  <ds@schleef.org>
13364
13365         * gst/elements/gstaggregator.c:
13366         * gst/elements/gsttee.c:
13367           Use gst_pad_proxy_getcaps().
13368         * gst/gstpad.c:
13369         * gst/gstpad.h:
13370           Add gst_pad_proxy_getcaps(), which filter elements can use
13371           as a generic getcaps implementation.
13372           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13373           was advertised.
13374
13375 2003-12-23  David Schleef  <ds@schleef.org>
13376
13377         * gst/gstpad.c:
13378           Rearrange/rewrite much of the pad negotiation code, since it
13379           resembled pasta.  This actually changes the way some
13380           negotiation works, since the previous code was inconsistent
13381           depending on how it was invoked.  Add (internal) structure
13382           GstPadLink, which is used to hold some information (more in
13383           the future) about the link between two pads.  Fixes a number
13384           of bugs, including random lossage of filter caps when the
13385           initial negotiation is delayed.  A few functions are still
13386           unimplemented.
13387         * gst/gstpad.h:
13388           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13389           these when testing GstPadLinkReturn values instead of comparing
13390           directly.
13391
13392 2003-12-23  David Schleef  <ds@schleef.org>
13393
13394         * gst/gstvalue.c: 
13395         * gst/gstvalue.h:
13396           Rearrange lots of code.  Change registration of compare function
13397           into registration of compare/serialize/deserialize functions.
13398           Doesn't include implementation of gst_value_[de]serialize(),
13399           but that should be easy.
13400
13401 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13402
13403         * docs/gst/gstreamer-sections.txt:
13404         * docs/gst/tmpl/gstprops.sgml: removed
13405         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13406           David removed props and caps code, so let's remove their docs as well.
13407           Removed all no longer existing symbols from gstreamer-sections.txt
13408           
13409 2003-12-22  Colin Walters  <walters@verbum.org>
13410
13411         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13412           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13413           of tags directly.
13414
13415 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13416
13417         * gst/elements/gstelements.c:
13418           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13419         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13420           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13421           gst_caps (peer).
13422
13423 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13424
13425         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13426         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13427         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13428         (gst_spider_identity_sink_loop_type_finding):
13429         * gst/autoplug/gstspideridentity.h:
13430           Fix autoplugging in spider element, so it works with new caps.
13431           This was mainly caused by identifying empty caps incorrectly.
13432
13433 2003-12-22  David Schleef  <ds@schleef.org>
13434
13435         * gststructure.c, gstvalue.c, gstvalue.h: Add
13436           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13437           using g_value_copy()
13438
13439 2003-12-21  David Schleef  <ds@schleef.org>
13440
13441         * many, many files: Merge CAPS branch.  This includes:
13442           - implemention of GstValue and several GstValue types
13443           - implemention of GstStructure
13444           - entire rewrite of GstCaps
13445           - removal of GstProps
13446           - many changes to GstPad to compensate for new caps paradigm
13447           - removal of GstBufferpool
13448         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13449         gstvalue.h, gst/gstcaps[2]*.[ch]:
13450           - rename gstcaps2.[ch] to gstcaps.[ch]
13451
13452 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13453
13454         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13455         (gst_queue_chain), (gst_queue_handle_src_event):
13456           implement timeout for sending events. Workaround for if the
13457           pipeline on this queue is not passing any data.
13458
13459 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13460                                                                                 
13461         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13462         * moved CVS to freedesktop.org
13463