gst/base/gstbasetransform.c: Better debug if no transform is possible.
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2
3         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
4           Better debug if no transform is possible.
5
6 2005-07-27  Wim Taymans  <wim@fluendo.com>
7
8         * docs/random/wtay/network-transp:
9         Some old doc I had.
10
11 2005-07-27  Wim Taymans  <wim@fluendo.com>
12
13         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
14         (gst_dp_event_from_packet):
15         Fix serialization of seek events.
16
17 2005-07-27  Wim Taymans  <wim@fluendo.com>
18
19         * check/gst-libs/gdp.c: (GST_START_TEST):
20         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
21         Fix compilation and fix event serialization.
22
23 2005-07-27  Wim Taymans  <wim@fluendo.com>
24
25         * CHANGES-0.9:
26         * docs/design/part-TODO.txt:
27         * docs/design/part-events.txt:
28         Some docs updates
29
30         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
31         (gst_base_sink_event), (gst_base_sink_do_sync),
32         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
33         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
34         (gst_base_src_do_seek), (gst_base_src_event_handler),
35         (gst_base_src_loop):
36         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
37         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
38         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
39         (gst_base_transform_event), (gst_base_transform_handle_buffer),
40         (gst_base_transform_set_passthrough),
41         (gst_base_transform_is_passthrough):
42         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
43         * gst/elements/gstfilesink.c: (gst_file_sink_event):
44         Event updates.
45
46         * gst/gstbuffer.h:
47         Use faster casts.
48
49         * gst/gstelement.c: (gst_element_seek):
50         * gst/gstelement.h:
51         Update gst_element_seek.
52
53         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
54         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
55         (gst_event_new_flush_start), (gst_event_new_flush_stop),
56         (gst_event_new_eos), (gst_event_new_newsegment),
57         (gst_event_parse_newsegment), (gst_event_new_tag),
58         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
59         (gst_event_parse_qos), (gst_event_new_seek),
60         (gst_event_parse_seek), (gst_event_new_navigation):
61         * gst/gstevent.h:
62         Make GstEvent use GstStructure. Add parsing code, make sure the
63         API is sufficiently generic.
64         Mark possible directions of events and serialization.
65
66         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
67         (_gst_message_copy), (gst_message_new_segment_start),
68         (gst_message_new_segment_done), (gst_message_new_custom),
69         (gst_message_parse_segment_start),
70         (gst_message_parse_segment_done):
71         Small cleanups.
72
73         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
74         (gst_pad_set_caps), (gst_pad_send_event):
75         Update for new events. 
76         Catch events sent in wrong directions.
77
78         * gst/gstqueue.c: (gst_queue_link_src),
79         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
80         (gst_queue_handle_src_query):
81         Event updates.
82
83         * gst/gsttag.c:
84         * gst/gsttag.h:
85         Remove event code from this file.
86
87         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
88         (gst_dp_event_from_packet):
89         Event updates.
90
91 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
92
93         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
94         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
95         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
96           Make debugging actually useful.
97
98 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
99
100         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
101         (gst_pad_fixate_caps):
102           Implement default fixation once again, so that gst_pad_fixate()
103           actually does anything at all. This probably needs to be some
104           sort of a last resort, and use profile-based fixation first, but
105           since that doesn't exist yet, this is the best we have. Fixes
106           visualization in Totem.
107
108 2005-07-22  Wim Taymans  <wim@fluendo.com>
109
110         * docs/design/part-events.txt:
111         Small update.
112
113         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
114         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
115         (gst_base_sink_activate_pull):
116         Some more comments.
117
118         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
119         (gst_fake_src_create):
120         Fix handoff marshall.
121
122         * gst/elements/gstidentity.c: (gst_identity_class_init),
123         (gst_identity_transform_ip):
124         We're a real inplace element.
125
126         * gst/gstbus.c: (gst_bus_post):
127         Added some comments.
128
129         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
130         * tests/muxing/case1.c: (main):
131         * tests/sched/dynamic-pipeline.c: (main):
132         * tests/sched/interrupt1.c: (main):
133         * tests/sched/interrupt2.c: (main):
134         * tests/sched/interrupt3.c: (main):
135         * tests/sched/runxml.c: (main):
136         * tests/sched/sched-stress.c: (main):
137         * tests/seeking/seeking1.c: (event_received), (main):
138         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
139         (main):
140         * tests/threadstate/threadstate3.c: (main):
141         * tests/threadstate/threadstate4.c: (main):
142         * tests/threadstate/threadstate5.c: (main):
143         Fix the tests.
144
145 2005-07-21  Wim Taymans  <wim@fluendo.com>
146
147         * docs/design/part-seeking.txt:
148         Some small additions.
149
150         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
151         (gst_base_sink_get_times), (gst_base_sink_do_sync),
152         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
153         * gst/base/gstbasesink.h:
154         discont values are gint64, handle the math correctly.
155
156         * gst/base/gstbasesrc.c: (gst_base_src_loop):
157         Make the basesrc report error if the source pad is not linked.
158
159         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
160         (gst_queue_loop), (gst_queue_handle_src_query),
161         (gst_queue_src_activate_push):
162         Make queue collect data even if the srcpad is not linked.
163         Start pushing out data as soon as it is linked.
164
165         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
166         * gst/gstutils.h:
167         Added gst_flow_get_name() to ease error reporting.
168
169 2005-07-20  Wim Taymans  <wim@fluendo.com>
170
171         * gst/gstmessage.c: (gst_message_new_segment_start),
172         (gst_message_new_segment_done), (gst_message_parse_segment_start),
173         (gst_message_parse_segment_done):
174         * gst/gstmessage.h:
175         Added a bunch of messages for advanced seeking.
176
177         * gst/parse/grammar.y:
178         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
179         (gst_dpman_state_changed):
180         Fix some new-pad -> pad-added signals
181
182 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
183
184         * docs/manual/appendix-porting.xml:
185         * docs/pwg/appendix-porting.xml:
186           Document new-pad/state-change signal renames and the FixedList
187           type rename.
188
189 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
190
191         * docs/manual/advanced-autoplugging.xml:
192         * docs/manual/basics-helloworld.xml:
193         * docs/manual/basics-pads.xml:
194         * docs/random/ds/0.9-suggested-changes:
195         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
196         * gst/gstelement.h:
197         * gst/gstevent.h:
198         * gst/gstformat.h:
199         * gst/gstquery.h:
200         * gst/gststructure.c: (gst_structure_value_get_generic_type),
201         (gst_structure_parse_array), (gst_structure_parse_value):
202         * gst/gstvalue.c: (gst_type_is_fixed),
203         (gst_value_list_prepend_value), (gst_value_list_append_value),
204         (gst_value_list_get_size), (gst_value_list_get_value),
205         (gst_value_transform_array_string), (gst_value_serialize_array),
206         (gst_value_deserialize_array), (gst_value_intersect_array),
207         (gst_value_is_fixed), (_gst_value_initialize):
208         * gst/gstvalue.h:
209           GstElement::new-pad -> pad-added, GstElement::state-change ->
210           state-changed, GstValueFixedList -> GstValueArray, add format and
211           flags as their own arguments in gst_element_seek() (should improve
212           "bindeability"), remove function generators since they don't work
213           under a whole bunch of compilers (they were deprecated already
214           anyway).
215
216 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
217
218         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
219         (_gst_debug_register_funcptr):
220         * gst/gstinfo.h:
221           Fix illegal cast on some platforms (#309253).
222
223 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
224
225         * gst/gstmessage.c: (gst_message_new_custom):
226         * gst/gstmessage.h:
227           Add _new_custom, make _new_application a macro to _new_custom.
228
229 2005-07-20  Wim Taymans  <wim@fluendo.com>
230
231         * gst/base/gstbasesrc.c: (gst_base_src_init),
232         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
233         * gst/base/gstbasesrc.h:
234         Add a gboolean to decide when to push out a discont.
235
236         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
237         (gst_queue_loop), (gst_queue_handle_src_query),
238         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
239         (gst_queue_set_property), (gst_queue_get_property):
240         Some cleanups.
241
242         * tests/threadstate/threadstate1.c: (main):
243         Make a thread test compile and run... very silly..
244
245
246 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
247
248         * docs/manual/appendix-porting.xml:
249           Mention removal of libgstgconf-0.9.la and existence of gconf
250           elements.
251
252 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
253
254         * docs/pwg/advanced-clock.xml:
255         * docs/pwg/appendix-porting.xml:
256         * docs/pwg/intro-preface.xml:
257         * docs/pwg/other-base.xml:
258         * docs/pwg/other-manager.xml:
259         * docs/pwg/other-nton.xml:
260         * docs/pwg/other-ntoone.xml:
261         * docs/pwg/other-oneton.xml:
262         * docs/pwg/pwg.xml:
263           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
264           demuxer), remove n-to-n (was never written), fix some code examples
265           and links and update the porting section to include all this.
266
267 2005-07-19  Wim Taymans  <wim@fluendo.com>
268
269         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
270         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
271         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
272         (gst_queue_src_activate_push), (gst_queue_change_state),
273         (gst_queue_get_property):
274         * gst/gstqueue.h:
275         Propagate GstFlowReturn more intelligently upstream and output
276         an ERROR/EOS when streaming stopped due to fatal error.
277
278 2005-07-19  Wim Taymans  <wim@fluendo.com>
279
280         * tools/gst-launch.c: (check_intr), (event_loop), (main):
281         Don't block forever for the state change to complete, the
282         pipeline already did with a sensible timeout.
283
284 2005-07-19  Wim Taymans  <wim@fluendo.com>
285
286         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
287         Make sure we never call the create function is we
288         got deactivated.
289
290 2005-07-19  Andy Wingo  <wingo@pobox.com>
291
292         * gst/parse/parse.l: Attempt to solve bug #172815.
293
294 2005-07-19  Wim Taymans  <wim@fluendo.com>
295
296         * docs/design/part-clocks.txt:
297         * docs/design/part-events.txt:
298         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
299         Small docs updates.
300         Only update the seeking values when we are not
301         busy streaming.
302
303 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
304
305         * gst/base/gstbasesrc.c: (gst_base_src_loop):
306           Oops, ignore the result of gst_pad_push_event here.
307
308 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
309
310         * gst/base/gstbasesrc.c: (gst_base_src_loop),
311         (gst_base_src_activate_push):
312           Send discont event from the loop function, as pads
313           aren't activated yet in the activate_push handler.
314
315         * gst/gstbin.c: (bin_bus_handler):
316           Don't leak element name.
317
318 2005-07-18  Andy Wingo  <wingo@pobox.com>
319
320         * configure.ac: Use AS_LIBTOOL_TAGS.
321
322 2005-07-18  Wim Taymans  <wim@fluendo.com>
323
324         * docs/gst/gstreamer.types:
325         Remove deleted types.
326
327 2005-07-18  Wim Taymans  <wim@fluendo.com>
328
329         * check/elements/gstfakesrc.c: (GST_START_TEST):
330         * configure.ac:
331         * gst/Makefile.am:
332         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
333         (init_popt_callback):
334         * gst/gst.h:
335         * gst/gst_private.h:
336         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
337         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
338         * gst/gstbin.h:
339         * gst/gstbus.h:
340         * gst/gstconfig.h.in:
341         * gst/gstelement.c: (gst_element_class_init),
342         (gst_element_set_base_time), (gst_element_get_base_time),
343         (iterator_fold_with_resync), (gst_element_change_state),
344         (gst_element_dispose), (gst_element_get_bus):
345         * gst/gstelement.h:
346         * gst/gstelementfactory.h:
347         * gst/gsterror.c: (_gst_core_errors_init):
348         * gst/gsterror.h:
349         * gst/gstevent.h:
350         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
351         * gst/gstindex.c:
352         * gst/gstinfo.c: (_gst_debug_init):
353         * gst/gstmessage.c: (_gst_message_copy):
354         * gst/gstmessage.h:
355         * gst/gstminiobject.h:
356         * gst/gstobject.c:
357         * gst/gstobject.h:
358         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
359         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
360         * gst/gstpad.h:
361         * gst/gstparse.h:
362         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
363         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
364         (gst_pipeline_get_last_stream_time):
365         * gst/gstpipeline.h:
366         * gst/gstpluginfeature.h:
367         * gst/gstquery.h:
368         * gst/gstscheduler.c:
369         * gst/gstscheduler.h:
370         * gst/gststructure.h:
371         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
372         (gst_task_finalize), (gst_task_func), (gst_task_create),
373         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
374         (gst_task_stop), (gst_task_pause):
375         * gst/gsttask.h:
376         * gst/gsttypefind.h:
377         * gst/gsttypes.h:
378         * gst/registries/gstlibxmlregistry.c: (load_feature),
379         (gst_xml_registry_load), (gst_xml_registry_save_feature):
380         * gst/registries/gstxmlregistry.c:
381         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
382         * gst/schedulers/threadscheduler.c:
383         * libs/gst/control/dparammanager.h:
384         * tools/gst-inspect.c: (print_element_list),
385         (print_plugin_features), (print_element_features):
386         * tools/gst-xmlinspect.c: (print_element_list),
387         (print_plugin_info), (main):
388         Removed plugable schedulers.
389         Removed Scheduler/Manager from elements.
390         Removed gsttypes.h, rearranged includes.
391         Removed dependency pad<->element, element<>pipeline, and
392         various others,  fix includes.
393         implement gst_pad_get_parent() with gst_object_get_parent()
394         Make GstTask sefcontained.
395         Fix _get_state() on GstBin, it did not return ASYNC with a 0
396         timeout.
397         Fix endless loop in iterator_fold_with_resync.
398
399
400 2005-07-18  Wim Taymans  <wim@fluendo.com>
401
402         * gst/Makefile.am:
403         * gst/gstarch.h:
404         Remove old file.
405
406 2005-07-18  Wim Taymans  <wim@fluendo.com>
407
408         * gst/Makefile.am:
409         No more cothreads.h
410
411 2005-07-18  Wim Taymans  <wim@fluendo.com>
412
413         * gst/cothreads.c:
414         * gst/cothreads.h:
415         Let's remove these.
416
417 2005-07-18  Wim Taymans  <wim@fluendo.com>
418
419         * docs/design/part-dynamic.txt:
420         * docs/design/part-events.txt:
421         * docs/design/part-seeking.txt:
422         Some more docs in the works.
423
424         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
425         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
426         (gst_base_transform_setcaps), (gst_base_transform_get_size),
427         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
428         (gst_base_transform_handle_buffer),
429         (gst_base_transform_sink_activate_push),
430         (gst_base_transform_src_activate_pull),
431         (gst_base_transform_set_passthrough),
432         (gst_base_transform_is_passthrough):
433         Refcounting fixes.
434
435         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
436         Cleanups.
437
438         * gst/gstevent.c: (gst_event_finalize):
439         Set SRC to NULL.
440
441         * gst/gstutils.c: (gst_element_unlink),
442         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
443         (gst_pad_proxy_setcaps):
444         * gst/gstutils.h:
445         Add _get_parent_element() to get a pads parent as an element.
446
447 2005-07-18  Wim Taymans  <wim@fluendo.com>
448
449         * check/gst/gstbin.c: (GST_START_TEST):
450         Remove bogus test.
451
452 2005-07-18  Wim Taymans  <wim@fluendo.com>
453
454         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
455         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
456         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
457         (gst_base_sink_event), (gst_base_sink_do_sync),
458         (gst_base_sink_chain), (gst_base_sink_loop),
459         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
460         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
461         Refcounting fixes.
462         Fix logic for returning ASYNC when not prerolled.
463
464 2005-07-18  Wim Taymans  <wim@fluendo.com>
465
466         * gst/gstqueue.c: (gst_queue_handle_sink_event):
467         Fix nasty refcount bug.
468
469 2005-07-16 Philippe Khalaf <burger@speedy.org>
470         * gst/elements/gstfdsrc.c:
471         * gst/elements/gstfdsrc.h:
472         * gst/elements/gstelements.c:
473         * gst/elements/Makefile.am:
474         Ported fdsrc to 0.9.
475
476 2005-07-16  Wim Taymans  <wim@fluendo.com>
477
478         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
479         (gst_base_sink_do_sync):
480         Fix compile error.
481
482 2005-07-16  Wim Taymans  <wim@fluendo.com>
483
484         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
485         (gst_base_sink_event), (gst_base_sink_get_times),
486         (gst_base_sink_do_sync), (gst_base_sink_change_state):
487         * gst/base/gstbasesink.h:
488         Store and use discont values when syncing buffers as described
489         in design docs.
490         
491         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
492         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
493         (gst_base_src_activate_push):
494         Push discont event when starting.
495
496         * gst/elements/gstidentity.c: (gst_identity_transform):
497         Small cleanups.
498
499         * gst/gstbin.c: (gst_bin_change_state):
500         Small cleanups in base_time  distribution.
501
502         * gst/gstelement.c: (gst_element_set_base_time),
503         (gst_element_get_base_time), (gst_element_change_state):
504         * gst/gstelement.h:
505         Added methods for the base_time of the element.
506         Some MT fixes.
507
508         * gst/gstpipeline.c: (gst_pipeline_send_event),
509         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
510         (gst_pipeline_get_last_stream_time):
511         * gst/gstpipeline.h:
512         MT fixes.
513         Handle seeking as described in design doc, remove stream_time
514         hack.
515         Cleanups clock and stream_time selection code. Added accessors
516         for the stream_time.
517         
518
519 2005-07-16  Andy Wingo  <wingo@pobox.com>
520
521         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
522         (#305291).
523
524 2005-07-16  Wim Taymans  <wim@fluendo.com>
525
526         * check/gst/gstbin.c: (GST_START_TEST):
527         Make elements silent as the deep_notify refs the
528         parent, which might make the test fail.
529
530         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
531         Don't hold the lock for too long.
532
533 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
534
535         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
536           Don't unref the caps we passed to gst_caps_make_writable() after
537           passing them. gst_caps_make_writable() will do that for us.
538
539 2005-07-15  Andy Wingo  <wingo@pobox.com>
540
541         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
542         (#157311).
543
544         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
545         own marshalling function for the handoff signal. Properly type the
546         buffer as a buffer. Fixes some warnings. Should do a more general
547         solution.
548         (gst_identity_class_init): Plug into the right marshaller.
549
550 2005-07-15  Wim Taymans  <wim@fluendo.com>
551
552         * docs/design/part-TODO.txt:
553         * docs/design/part-clocks.txt:
554         * docs/design/part-element-sink.txt:
555         * docs/design/part-events.txt:
556         * docs/design/part-gstpipeline.txt:
557         Updated docs, mostly DISCONT related.
558
559 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
560
561         * docs/pwg/building-pads.xml:
562           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
563
564 2005-07-15  Andy Wingo  <wingo@pobox.com>
565
566         * tools/gst-typefind.c: Update, add copyright block.
567
568         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
569         Normalize and truncate caps before fixation.
570
571         * gst/gstcaps.h:
572         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
573         discards all but the first structure from its argument.
574
575 2005-07-15  Wim Taymans  <wim@fluendo.com>
576
577         * gst/base/gstbasetransform.c: (gst_base_transform_init),
578         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
579         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
580         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
581         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
582         (gst_base_transform_chain), (gst_base_transform_change_state),
583         (gst_base_transform_set_passthrough),
584         (gst_base_transform_is_passthrough):
585         * gst/base/gstbasetransform.h:
586         Make passthrough work using the bufferpools.
587         Changed API a bit, subclasses have to write into a buffer
588         provided by the base class.
589         More debug info in nego functions.
590         
591         * gst/elements/gstidentity.c: (gst_identity_init),
592         (gst_identity_transform):
593         Port to new base class.
594
595 2005-07-15  Wim Taymans  <wim@fluendo.com>
596
597         * gst/gstmessage.c: (gst_message_new_state_changed):
598         * tools/gst-launch.c: (event_loop), (main):
599         Totally dump messages in -launch with the -m option.
600         Fix message name for State messages,
601
602 2005-07-14  Wim Taymans  <wim@fluendo.com>
603
604         * gst/base/gstbasesrc.c: (gst_base_src_loop):
605         Post error messages on errors.
606
607 2005-07-14  Wim Taymans  <wim@fluendo.com>
608
609         * gst/gstcaps.c: (gst_caps_do_simplify):
610         Remove debug info.
611
612         * gst/gsterror.h:
613         Define error for stream stopped.
614
615         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
616         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
617         Do proper return values.
618
619         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
620         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
621         (gst_pad_get_range):
622         Better return values.
623
624         * gst/gstpad.h:
625         Reorganise return values, add macro to check for fatal errors.
626
627         * gst/gstqueue.c: (gst_queue_chain):
628         Return proper GstFlowReturn values,
629
630 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
631
632         * docs/gst/gstreamer-sections.txt:
633         * docs/gst/gstreamer.types:
634         * docs/gst/tmpl/gst.sgml:
635         * docs/gst/tmpl/gstbasesink.sgml:
636         * docs/gst/tmpl/gstbasesrc.sgml:
637         * docs/gst/tmpl/gstbasetransform.sgml:
638         * docs/gst/tmpl/gstbin.sgml:
639         * docs/gst/tmpl/gstbuffer.sgml:
640         * docs/gst/tmpl/gstcaps.sgml:
641         * docs/gst/tmpl/gstclock.sgml:
642         * docs/gst/tmpl/gstcompat.sgml:
643         * docs/gst/tmpl/gstconfig.sgml:
644         * docs/gst/tmpl/gstelement.sgml:
645         * docs/gst/tmpl/gstelementdetails.sgml:
646         * docs/gst/tmpl/gstelementfactory.sgml:
647         * docs/gst/tmpl/gstenumtypes.sgml:
648         * docs/gst/tmpl/gsterror.sgml:
649         * docs/gst/tmpl/gstevent.sgml:
650         * docs/gst/tmpl/gstfakesink.sgml:
651         * docs/gst/tmpl/gstfakesrc.sgml:
652         * docs/gst/tmpl/gstfilesink.sgml:
653         * docs/gst/tmpl/gstfilesrc.sgml:
654         * docs/gst/tmpl/gstfilter.sgml:
655         * docs/gst/tmpl/gstformat.sgml:
656         * docs/gst/tmpl/gstghostpad.sgml:
657         * docs/gst/tmpl/gstimplementsinterface.sgml:
658         * docs/gst/tmpl/gstindex.sgml:
659         * docs/gst/tmpl/gstindexfactory.sgml:
660         * docs/gst/tmpl/gstinfo.sgml:
661         * docs/gst/tmpl/gstiterator.sgml:
662         * docs/gst/tmpl/gstmacros.sgml:
663         * docs/gst/tmpl/gstmemchunk.sgml:
664         * docs/gst/tmpl/gstminiobject.sgml:
665         * docs/gst/tmpl/gstobject.sgml:
666         * docs/gst/tmpl/gstpad.sgml:
667         * docs/gst/tmpl/gstpadtemplate.sgml:
668         * docs/gst/tmpl/gstparse.sgml:
669         * docs/gst/tmpl/gstpipeline.sgml:
670         * docs/gst/tmpl/gstplugin.sgml:
671         * docs/gst/tmpl/gstpluginfeature.sgml:
672         * docs/gst/tmpl/gstquery.sgml:
673         * docs/gst/tmpl/gstqueue.sgml:
674         * docs/gst/tmpl/gstregistry.sgml:
675         * docs/gst/tmpl/gstregistrypool.sgml:
676         * docs/gst/tmpl/gstscheduler.sgml:
677         * docs/gst/tmpl/gstschedulerfactory.sgml:
678         * docs/gst/tmpl/gststructure.sgml:
679         * docs/gst/tmpl/gstsystemclock.sgml:
680         * docs/gst/tmpl/gsttaglist.sgml:
681         * docs/gst/tmpl/gsttagsetter.sgml:
682         * docs/gst/tmpl/gsttrace.sgml:
683         * docs/gst/tmpl/gsttrashstack.sgml:
684         * docs/gst/tmpl/gsttypefind.sgml:
685         * docs/gst/tmpl/gsttypefindfactory.sgml:
686         * docs/gst/tmpl/gsttypes.sgml:
687         * docs/gst/tmpl/gsturihandler.sgml:
688         * docs/gst/tmpl/gsturitype.sgml:
689         * docs/gst/tmpl/gstutils.sgml:
690         * docs/gst/tmpl/gstvalue.sgml:
691         * docs/gst/tmpl/gstversion.sgml:
692         * docs/gst/tmpl/gstxml.sgml:
693         * docs/libs/tmpl/gstcontrol.sgml:
694         * docs/libs/tmpl/gstdataprotocol.sgml:
695         * docs/libs/tmpl/gstdparam.sgml:
696         * docs/libs/tmpl/gstdplinint.sgml:
697         * docs/libs/tmpl/gstdpman.sgml:
698         * docs/libs/tmpl/gstdpsmooth.sgml:
699         * docs/libs/tmpl/gstgetbits.sgml:
700         * docs/libs/tmpl/gstunitconvert.sgml:
701         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
702         (gst_push_src_base_init), (gst_push_src_class_init),
703         (gst_push_src_init), (gst_push_src_create):
704         * gst/base/gstpushsrc.h:
705         * gst/elements/gstelements.c:
706         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
707         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
708         (gst_fake_sink_init), (gst_fake_sink_set_property),
709         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
710         (gst_fake_sink_event), (gst_fake_sink_preroll),
711         (gst_fake_sink_render), (gst_fake_sink_change_state):
712         * gst/elements/gstfakesink.h:
713         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
714         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
715         (gst_fake_src_base_init), (gst_fake_src_class_init),
716         (gst_fake_src_init), (gst_fake_src_event_handler),
717         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
718         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
719         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
720         (gst_fake_src_create_buffer), (gst_fake_src_create),
721         (gst_fake_src_start), (gst_fake_src_stop):
722         * gst/elements/gstfakesrc.h:
723         * gst/elements/gstfilesink.c: (_do_init),
724         (gst_file_sink_base_init), (gst_file_sink_class_init),
725         (gst_file_sink_init), (gst_file_sink_dispose),
726         (gst_file_sink_set_location), (gst_file_sink_set_property),
727         (gst_file_sink_get_property), (gst_file_sink_open_file),
728         (gst_file_sink_close_file), (gst_file_sink_query),
729         (gst_file_sink_event), (gst_file_sink_render),
730         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
731         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
732         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
733         * gst/elements/gstfilesink.h:
734         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
735         (gst_file_src_class_init), (gst_file_src_init),
736         (gst_file_src_finalize), (gst_file_src_set_location),
737         (gst_file_src_set_property), (gst_file_src_get_property),
738         (gst_file_src_map_region), (gst_file_src_map_small_region),
739         (gst_file_src_create_mmap), (gst_file_src_create_read),
740         (gst_file_src_create), (gst_file_src_is_seekable),
741         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
742         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
743         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
744         (gst_file_src_uri_handler_init):
745         * gst/elements/gstfilesrc.h:
746           more autistic cleanliness in functions/names/defines
747
748 2005-07-13  Andy Wingo  <wingo@pobox.com>
749
750         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
751         source couldn't negotiate.
752
753         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
754         connections again.
755
756         * gst/gstutils.h:
757         * gst/gstutils.c (gst_element_link_pads_filtered): New old
758         function. I am channeling Hades. Put your boots on suckers!!!
759
760 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
761
762         * testsuite/caps/Makefile.am:
763         * testsuite/caps/value_compare.c:
764         * testsuite/caps/value_intersect.c:
765         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
766           move two testsuite apps over to the check dir
767
768 2005-07-12  Wim Taymans  <wim@fluendo.com>
769
770         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
771         Added more debug info in the negotiate process.
772
773         * gst/gstmessage.h:
774         Prepare for segment playback.
775
776         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
777         Better debugging.
778
779         * gst/gstutils.c:
780         Some more docs.
781
782         * tools/gst-launch.c: (main):
783         NULL pipeline on errors.
784
785 2005-07-12  Andy Wingo  <wingo@pobox.com>
786
787         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
788         not it comes from a malloc region. Make sure our copy gets freed.
789
790 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
791
792         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
793         * check/gst/gstmessage.c: (GST_START_TEST):
794         * check/gst/gststructure.c: (GST_START_TEST),
795         (gst_structure_suite), (main):
796           more testing
797         * gst/gstelement.c: (gst_element_message_full):
798           clean up GError and debug string now that they get copied
799         * gst/gstmessage.c: (gst_message_new_error),
800         (gst_message_new_warning), (gst_message_parse_error),
801         (gst_message_parse_warning):
802           use GST_TYPE_G_ERROR for structure_new, and take copies of
803           arguments, so that we don't mess up refcounting
804
805 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
806
807         * check/Makefile.am:
808           add per-test valgrind targets
809         * check/gst-libs/gdp.c: (GST_START_TEST),
810         (gst_data_protocol_suite), (main):
811           clean up
812
813 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
814
815         * check/Makefile.am:
816           instate more valgrindable tests
817         * check/elements/gstfakesrc.c: (chain_func), (event_func),
818         (GST_START_TEST), (fakesrc_suite):
819         * check/gst/gstpad.c: (GST_START_TEST):
820         * check/gst/gststructure.c: (GST_START_TEST):
821           fix test leaks
822         * docs/gst/tmpl/gstminiobject.sgml:
823         * gst/gstpad.c: (gst_pad_finalize):
824           fix the static mutex leak
825
826 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
827
828         * check/Makefile.am:
829           add two more tests for valgrinding
830         * check/gst/gstvalue.c: (GST_START_TEST):
831           test refcount of deserialized buffer, found a leak
832         * docs/gst/gstreamer-docs.sgml:
833         * docs/gst/gstreamer-sections.txt:
834         * docs/gst/gstreamer.types:
835         * docs/gst/tmpl/gstminiobject.sgml:
836           add miniobject to docs
837         * gst/gstminiobject.c:
838           add some docs
839         * gst/gstvalue.c: (gst_value_deserialize_buffer),
840         (gst_string_unwrap):
841           fix a hard-to-find invalid write for one of the tests
842           fix a leak for deserialized buffers
843
844 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
845
846         * docs/pwg/advanced-events.xml:
847         * docs/pwg/advanced-request.xml:
848         * docs/pwg/advanced-scheduling.xml:
849         * docs/pwg/appendix-porting.xml:
850         * docs/pwg/building-boiler.xml:
851         * docs/pwg/intro-preface.xml:
852         * docs/pwg/other-ntoone.xml:
853           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
854           of example code and explanation for pad activation, loop() and
855           getrange() functions and a bit more. Remove old comments pointing
856           to loop-functions.
857         * examples/pwg/Makefile.am:
858           Add loop/getrange examples.
859
860 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
861
862         * configure.ac:
863           check for valgrind binary + some fixes
864         * check/gst.supp:
865           valgrind suppressions for the tests
866         * check/Makefile.am:
867           add a valgrind: target that valgrinds the unit tests
868         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
869         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
870         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
871         * check/gst/gstghostpad.c:
872           added some cleanup
873         * check/gst/gstdata.c:
874           removed
875         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
876         (thread_unref), (gst_mini_object_suite), (main):
877           added
878         * gst/gst.c: (gst_deinit):
879         * gst/gst.h:
880           add a method to clean up.
881         * gst/gstsystemclock.c: (gst_system_clock_dispose),
882         (gst_system_clock_obtain):
883           allow for disposing the system clock.
884         * tools/gst-launch.c: (main):
885           deinit
886
887 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
888
889         * docs/gst/tmpl/gstbasesrc.sgml:
890         * docs/gst/tmpl/gstfakesrc.sgml:
891         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
892         (gst_base_src_init), (gst_base_src_set_property),
893         (gst_base_src_get_property), (gst_base_src_get_range),
894         (gst_base_src_start):
895         * gst/base/gstbasesrc.h:
896           add num-buffers property
897         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
898         (gst_fakesrc_init), (gst_fakesrc_set_property),
899         (gst_fakesrc_get_property), (gst_fakesrc_create),
900         (gst_fakesrc_start):
901           remove num-buffers property
902
903 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
904
905         * docs/gst/gstreamer-sections.txt:
906         * docs/gst/tmpl/gstbasesink.sgml:
907         * docs/gst/tmpl/gstbasesrc.sgml:
908         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
909         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
910         (gst_base_sink_finalize), (gst_base_sink_set_clock),
911         (gst_base_sink_set_property), (gst_base_sink_get_property),
912         (gst_base_sink_handle_object), (gst_base_sink_event),
913         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
914         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
915         (gst_base_sink_loop), (gst_base_sink_deactivate),
916         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
917         (gst_base_sink_change_state):
918         * gst/base/gstbasesink.h:
919         * gst/base/gstbasesrc.h:
920         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
921         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
922         (gst_filesink_init):
923           more macro splitting
924
925 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
926
927         * gst/gstelement.c: (gst_element_get_bus):
928           add debug
929         * tools/gst-launch.c: (check_intr), (event_loop):
930           fix bus leaks
931
932 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
933
934         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
935           fix a caps leak
936
937 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
938
939         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
940         (gst_base_src_finalize):
941           add finalize method and clean up properly
942         * gst/gstpipeline.c: (gst_pipeline_dispose):
943           add debug
944
945 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
946
947         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
948         (gst_bin_suite):
949           add more things to check
950         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
951         * gst/gstelement.c:
952           more debug
953
954 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
955
956         * check/elements/gstfakesrc.c: (chain_func), (event_func),
957         (GST_START_TEST), (fakesrc_suite):
958         * check/gst-libs/gdp.c: (GST_START_TEST):
959         * check/gst/gst.c: (GST_START_TEST):
960         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
961         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
962         * check/gst/gstbus.c: (GST_START_TEST):
963         * check/gst/gstcaps.c: (GST_START_TEST):
964         * check/gst/gstdata.c: (GST_START_TEST):
965         * check/gst/gstelement.c: (GST_START_TEST):
966         * check/gst/gstghostpad.c: (GST_START_TEST):
967         * check/gst/gstiterator.c: (GST_START_TEST):
968         * check/gst/gstmessage.c: (GST_START_TEST):
969         * check/gst/gstobject.c: (GST_START_TEST):
970         * check/gst/gstpad.c: (GST_START_TEST):
971         * check/gst/gststructure.c: (GST_START_TEST):
972         * check/gst/gstsystemclock.c: (GST_START_TEST),
973         (gst_systemclock_suite):
974         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
975         * check/gst/gstvalue.c: (GST_START_TEST):
976         * check/pipelines/cleanup.c: (GST_START_TEST):
977         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
978         * check/states/sinks.c: (GST_START_TEST):
979         * check/gstcheck.c: (gst_check_init):
980         * check/gstcheck.h:
981           add debugging category
982           use GST_START_TEST now, so we add a debug line
983
984 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
985
986         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
987           add test for state change message on a bin
988         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
989           add another test
990         * gst/gstbin.c: (gst_bin_init):
991         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
992         * gst/gstelement.c: (gst_element_post_message),
993         (gst_element_set_state):
994         * gst/gstelementfactory.c: (gst_element_factory_create):
995         * gst/gstmessage.c: (gst_message_new):
996         * gst/gstscheduler.c:
997           various debugging additions and cleanups
998
999 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1000
1001         * check/Makefile.am:
1002         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1003         (main):
1004           adding tests for elements
1005         * gst/gstelement.c: (gst_element_dispose):
1006
1007 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1008
1009         * gst/registries/gstlibxmlregistry.c: (load_feature):
1010           plug more leaks.  A simple gst_init() now is leakfree, yay.
1011
1012 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1013
1014         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1015         (gst_xml_registry_load):
1016           plug another memleak
1017
1018 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1019
1020         * configure.ac:
1021           use GST_SET_ERROR_CFLAGS
1022         * docs/faq/cvs.xml:
1023           change to ERROR_CFLAGS
1024
1025 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1026
1027         * configure.ac:
1028           make GST_ERROR_CFLAGS overridable and re-enable Werror
1029         * docs/faq/cvs.xml:
1030           add a note about error CFLAGS
1031         * docs/gst/tmpl/gstfakesrc.sgml:
1032         * gst/elements/gstfakesrc.c:
1033           comment out some unused code
1034         * gst/gst.c: (split_and_iterate):
1035         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1036         (load_feature):
1037           plug some memleaks
1038
1039 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1040
1041         * common/Makefile.am:
1042         * common/gtk-doc.mak:
1043         * docs/gst/Makefile.am:
1044           factor out gtk-doc.mak
1045
1046 2005-07-07  Wim Taymans  <wim@fluendo.com>
1047
1048         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1049         (gst_thread_scheduler_dispose):
1050         Unlock the STREAM_LOCK completely.
1051
1052 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1053
1054         * check/Makefile.am:
1055         * check/elements/.cvsignore:
1056         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1057         (START_TEST), (fakesrc_suite), (main):
1058         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1059         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1060         (gst_fakesrc_create), (gst_fakesrc_start):
1061         * gst/elements/gstfakesrc.h:
1062           adding a first element test
1063
1064 2005-07-07  Andy Wingo  <wingo@pobox.com>
1065
1066         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1067         debug message.
1068
1069 2005-07-07  Wim Taymans  <wim@fluendo.com>
1070
1071         * gst/gstquery.c:
1072         * gst/gstquery.h:
1073         Remove old types
1074
1075 2005-07-07  Wim Taymans  <wim@fluendo.com>
1076
1077         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1078         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1079         Allow subclasses to implement their own negotiation.
1080
1081 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1082
1083         * docs/design/part-gstbin.txt:
1084         * docs/design/part-gstpipeline.txt:
1085           Update design notes to reflect the movement of
1086           responsibility for bus handling from GstPipeline to
1087           GstBin
1088
1089 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1090
1091         * configure.ac:
1092           Remove unnecessary queue2/3/4 examples.
1093
1094 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1095
1096         * examples/Makefile.am:
1097         * examples/helloworld/helloworld.c: (event_loop), (main):
1098         * examples/queue/queue.c: (event_loop), (main):
1099         * examples/queue2/queue2.c: (main):
1100           Update a couple of the examples to work again.
1101
1102         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1103         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1104          Spelling corrections and extra debug.
1105         
1106         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1107         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1108         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1109         * gst/gstbin.h:
1110         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1111         (gst_pipeline_change_state):
1112         * gst/gstpipeline.h:
1113           Move the bus handler for children to the GstBin, and create a
1114           separate bus for receiving messages from children to the one the
1115           bus sends 'upwards' on.
1116
1117 2005-07-06  Wim Taymans  <wim@fluendo.com>
1118
1119         * gst/base/README:
1120         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1121         (gst_base_sink_handle_object), (gst_base_sink_loop),
1122         (gst_base_sink_change_state):
1123         * gst/base/gstbasesink.h:
1124         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1125         (gst_base_src_init), (gst_base_src_setcaps),
1126         (gst_base_src_getcaps), (gst_base_src_loop),
1127         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1128         (gst_base_src_start), (gst_base_src_change_state):
1129         * gst/base/gstbasesrc.h:
1130         Make basesrc negotiate.
1131         Handle the case where preroll fails in basesink.
1132         Update README.
1133
1134 2005-07-06  Wim Taymans  <wim@fluendo.com>
1135
1136         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1137         Implement the fixate function.
1138         Clean up acceptcaps.
1139
1140 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1141
1142         * docs/pwg/building-filterfactory.xml:
1143         * docs/pwg/pwg.xml:
1144           Remove never-written filter-factory chapter; I'll add the various
1145           base classes to part 4 ("other element types") later on.
1146
1147 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1148
1149         * docs/pwg/advanced-negotiation.xml:
1150         * docs/pwg/building-boiler.xml:
1151         * docs/pwg/building-pads.xml:
1152         * docs/pwg/pwg.xml:
1153         * examples/pwg/Makefile.am:
1154           Add a chapter on caps negotiation, simplify the original code
1155           samples a bit w.r.t. caps negotiation, add link to the advanced
1156           section. Add a bunch of examples showing different use cases of
1157           different types of caps negotiation. Upstream renegotiation isn't
1158           fully documented yet since nobody knows how that works.
1159
1160 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1161
1162         * check/gst/gstpad.c:
1163         * check/gstcheck.c:
1164         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1165           if pad has no parent, return NULL as list of internal links
1166
1167 2005-07-05  Andy Wingo  <wingo@pobox.com>
1168
1169         * gst/elements/gstfilesrc.c:
1170         * gst/elements/gstfakesrc.c: 
1171         * gst/base/gstpushsrc.c:
1172         * gst/base/gstbasesrc.h: 
1173         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1174         
1175 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1176
1177         * Makefile.am:
1178           better report generation target (lcov needs a patch)
1179
1180 2005-07-05  Andy Wingo  <wingo@pobox.com>
1181
1182         * gst/elements, testsuite: Null if we got it...
1183
1184 2005-07-05  Wim Taymans  <wim@fluendo.com>
1185
1186         * configure.ac:
1187         * libs/gst/dataprotocol/Makefile.am:
1188         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1189         * libs/gst/dataprotocol/dataprotocol.h:
1190         * pkgconfig/Makefile.am:
1191         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1192         * pkgconfig/gstreamer-dataprotocol.pc.in:
1193         Ported dataprotol to 0.9. 
1194         Added pkgconfig files.
1195
1196 2005-07-05  Andy Wingo  <wingo@pobox.com>
1197
1198         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1199         Default to returning TRUE for the case when tranform_caps returns
1200         a fixed caps, like for identity or volume.
1201
1202         * check/gst/gstbus.c (pound_bus_with_messages): 
1203         * check/gst/gstmessage.c (START_TEST): 
1204         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1205         message API change.
1206
1207         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1208         logic weaks here: always run transform_caps, trying passthrough
1209         operation only if the original caps intersects with the transform.
1210
1211         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1212         source and sink caps.
1213
1214         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1215         Intersect the peer caps with the pad template before going into
1216         transform_caps.
1217         (gst_base_transform_transform_caps): More debugging.
1218
1219         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1220         src argument.
1221
1222 2005-07-04  Edward Hervey  <edward@fluendo.com>
1223
1224         * gst/gstutils.c:
1225         * gst/gstutils.h:
1226         (gst_pad_add_*_probe): now returns the signal id for better wrapping
1227         in bindings.
1228
1229 2005-07-04  Andy Wingo  <wingo@pobox.com>
1230
1231         * check/gst/gstpad.c: Only set explicit caps on pads.
1232
1233 2005-07-01  Andy Wingo  <wingo@pobox.com>
1234
1235         * tests/network-clock.scm: Commentary update.
1236
1237         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
1238         Didn't really make sense, not implementable with basetransform,
1239         etc.
1240         (gst_identity_transform): Unref inbuf via make_writable. Feeble
1241         attempt at implementing the sync property, needs an unlock method.
1242
1243         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
1244         New func, by default returns the same caps (the identity
1245         transformation).
1246         (gst_base_transform_getcaps): Uses transform_caps to return
1247         something sensible.
1248         (gst_base_transform_setcaps): Complicated logic to get caps on
1249         both pads, even if they are different, and to call set_caps once
1250         for every time both pads get their caps set.
1251         (gst_base_transform_handle_buffer): Give the ref to the transform
1252         function. Allows in-place modification of the buffer.
1253
1254         * gst/base/gstbasetransform.h (transform_caps): New class method.
1255         Given caps on one side, what can I do on the other.
1256         (set_caps): Take two caps, one for each side of the element.
1257
1258         * gst/gstpad.h:
1259         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
1260         caps in place. This is safe because we can check the mutability of
1261         the caps, and a good idea because fixate functions are just called
1262         as a matter of last resort. (Not actually implemented.)
1263         (gst_pad_set_caps): If the caps we're setting is actually the same
1264         as the existing pad caps, just update the pointer without calling
1265         setcaps. Assert that caps is either NULL or fixed, as per the
1266         docs.
1267
1268         * gst/gstghostpad.c: Update for fixate changes.
1269
1270 2005-07-02  Andy Wingo  <wingo@pobox.com>
1271
1272         * gst/gstcaps.c:
1273         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
1274         two refcounts makes it immutable, which is enough. Doc more.
1275
1276 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
1277
1278         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
1279           Put the mini_object into GValue as a mini_object,
1280           not a gpointer, since that's how we declared
1281           the signal.
1282
1283 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1284
1285         * examples/pwg/Makefile.am:
1286           Fix buildbot again.
1287
1288 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1289
1290         * docs/pwg/building-testapp.xml:
1291           Add extra check.
1292         * examples/pwg/Makefile.am:
1293           Fix buildbot.
1294
1295 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1296
1297         * configure.ac:
1298         * examples/Makefile.am:
1299         * examples/pwg/Makefile.am:
1300         * examples/pwg/extract.pl:
1301           Enable building the PWG examples.
1302         * docs/pwg/advanced-interfaces.xml:
1303           Add URI interface stub.
1304         * docs/pwg/advanced-types.xml:
1305         * docs/pwg/other-autoplugger.xml:
1306         * docs/pwg/appendix-porting.xml:
1307         * docs/pwg/pwg.xml:
1308           Add porting guide (mostly stubs), remove autoplugging (see ADM).
1309         * docs/pwg/building-boiler.xml:
1310         * docs/pwg/building-chainfn.xml:
1311         * docs/pwg/building-pads.xml:
1312         * docs/pwg/building-props.xml:
1313         * docs/pwg/building-state.xml:
1314         * docs/pwg/building-testapp.xml:
1315           Update the building-*.xml parts for 0.9 changes. All examples
1316           code blocks compile in examples/pwg/*.
1317
1318 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1319
1320         * docs/manual/advanced-autoplugging.xml:
1321         * docs/manual/appendix-checklist.xml:
1322         * docs/manual/appendix-integration.xml:
1323         * docs/manual/highlevel-components.xml:
1324           Fix playbin/decodebin examples, update docs a bit, mention bus
1325           instead of signals in various places, mention kmplayer and
1326           kaffeine since they have a working GStreamer backend in the KDE
1327           section.
1328
1329 2005-06-30  Wim Taymans  <wim@fluendo.com>
1330
1331         * CHANGES-0.9:
1332         * docs/design/draft-ghostpads.txt:
1333         * docs/design/draft-push-pull.txt:
1334         * docs/design/draft-query.txt:
1335         * docs/design/part-TODO.txt:
1336         * docs/design/part-query.txt:
1337         Added CHANGES-0.9 doc, updated status of other docs.
1338         
1339         * gst/gstquery.h:
1340         Remove "hmm" macro
1341
1342 2005-06-30  Wim Taymans  <wim@fluendo.com>
1343
1344         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1345         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1346         (gst_base_sink_change_state):
1347         * gst/base/gstbasesink.h:
1348         Some tweaks, only EOS and a buffer complete a preroll.
1349
1350 2005-06-30  Andy Wingo  <wingo@pobox.com>
1351
1352         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
1353         activate_push down to the internal pad as well.
1354
1355 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
1356
1357         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1358
1359         * gst/gsttaginterface.c:
1360           Some documentation fixes (#307394 and #307397).
1361
1362 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
1363
1364         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1365
1366         * gst/gstvalue.c: (gst_value_intersect_list):
1367           Fix memleak (#309125).
1368
1369 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1370
1371         * docs/manual/advanced-dataaccess.xml:
1372           Fix fakesrc example to compile; doesn't work, bug somewhere...?
1373         * docs/manual/basics-pads.xml:
1374           Add reference for filtered caps to above chapter.
1375
1376 2005-06-30  Wim Taymans  <wim@fluendo.com>
1377
1378         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
1379         (gst_bin_change_state):
1380         Probes are gone.
1381         Lame attempt at making the state change function a bit
1382         more readable.
1383
1384 2005-06-30  Wim Taymans  <wim@fluendo.com>
1385
1386         * docs/design/part-clocks.txt:
1387         * docs/design/part-element-sink.txt:
1388         * docs/design/part-events.txt:
1389         * docs/design/part-preroll.txt:
1390         * docs/design/part-states.txt:
1391         Some more tweeks and additions to the docs.
1392
1393 2005-06-30  Wim Taymans  <wim@fluendo.com>
1394
1395         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1396         (default_have_data), (gst_pad_class_init), (gst_pad_init),
1397         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1398         (gst_pad_check_pull_range), (gst_pad_get_range),
1399         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
1400         * gst/gstpad.h:
1401         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
1402         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1403         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1404         (gst_pad_remove_buffer_probe):
1405         Removed atomic operations, use existing LOCK.
1406         Move exception handling out of main code path.
1407
1408 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1409
1410         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1411         (silly_return_true_function), (gst_pad_class_init),
1412         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
1413         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
1414         (gst_pad_send_event):
1415           Fix accumulator, add default value by using _emitv() instead
1416           of _emit() for signal emission.
1417
1418 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1419
1420         * docs/manual/advanced-dataaccess.xml:
1421         * examples/manual/Makefile.am:
1422           Add probe example.
1423         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
1424           Make work (??).
1425
1426 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
1427
1428         * gst/elements/gstfilesink.c: (gst_filesink_render):
1429           Simplify code so that we don't have to handle short
1430           writes and return GST_FLOW_ERROR if an error occured.
1431
1432 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1433
1434         * docs/gst/gstreamer-docs.sgml:
1435           Remove probes more.
1436
1437 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1438
1439         * docs/gst/gstreamer-sections.txt:
1440         * docs/gst/tmpl/gstpad.sgml:
1441         * docs/gst/tmpl/gstprobe.sgml:
1442         * gst/Makefile.am:
1443         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
1444         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
1445         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1446         (gst_pad_push_event), (gst_pad_send_event):
1447         * gst/gstpad.h:
1448         * gst/gstutils.c: (gst_pad_add_data_probe),
1449         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
1450         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
1451         (gst_pad_remove_buffer_probe):
1452         * gst/gstutils.h:
1453           Remove old probes, add new g-signal-based probes and some utility
1454           functions.
1455
1456 2005-06-29  Edward Hervey  <edward@fluendo.com>
1457
1458         * gst/gstelementfactory.c:
1459         * gst/gstutils.h:
1460         * gst/gstutils.c:
1461         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
1462         the definition to the header file.
1463
1464 2005-06-29  Andy Wingo  <wingo@pobox.com>
1465
1466         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
1467         plugins from the source directory.
1468
1469 2005-06-29  Wim Taymans  <wim@fluendo.com>
1470
1471         * docs/gst/tmpl/gstbuffer.sgml:
1472         * docs/gst/tmpl/gstclock.sgml:
1473         Some fixings for blantently wrong text.
1474
1475 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1476
1477         * check/Makefile.am:
1478         * gst/gst.c: (add_path_func), (init_pre):
1479         * gst/gstregistry.c: (gst_registry_add_path):
1480           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
1481           only scan the GST_PLUGIN_PATH locations, and not add
1482           system locations
1483
1484 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
1485
1486         * docs/gst/gstreamer-sections.txt:
1487         * docs/gst/tmpl/gstbasesrc.sgml:
1488         * gst/gstelement.c:
1489         * gst/gstelement.h:
1490         * gst/gstevent.c:
1491         * gst/gstutils.c:
1492           doc fixes
1493
1494 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1495
1496         * docs/manual/advanced-autoplugging.xml:
1497           Fix autoplugging example.
1498
1499 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1500
1501         * docs/manual/advanced-autoplugging.xml:
1502         * docs/manual/mime-world.fig:
1503           Try to get autoplugging working, fix type detection. Fix text
1504           in hello-world image.
1505
1506 2005-06-29  Wim Taymans  <wim@fluendo.com>
1507
1508         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1509         (gst_base_sink_change_state):
1510         Small debug line.
1511
1512         * gst/gstclock.h:
1513         map SIGNAL and BROADCAST to the right function.
1514
1515         * gst/gstobject.h:
1516         Remove redundant braces.
1517
1518         * gst/gstpad.c: (gst_pad_set_caps):
1519         Don't call setcaps function when reseting caps to NULL.
1520
1521         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1522         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
1523         (gst_system_clock_id_unschedule):
1524         Use BROADCAST as this is what we do.
1525
1526 2005-06-29  Wim Taymans  <wim@fluendo.com>
1527
1528         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
1529         We are actually prerolling before commiting the state
1530         change. 
1531
1532 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1533
1534         * docs/manual/advanced-clocks.xml:
1535         * docs/manual/advanced-interfaces.xml:
1536         * docs/manual/advanced-metadata.xml:
1537         * docs/manual/advanced-position.xml:
1538         * docs/manual/advanced-schedulers.xml:
1539         * docs/manual/advanced-threads.xml:
1540         * docs/manual/appendix-porting.xml:
1541         * docs/manual/basics-bins.xml:
1542         * docs/manual/basics-bus.xml:
1543         * docs/manual/basics-elements.xml:
1544         * docs/manual/basics-helloworld.xml:
1545         * docs/manual/basics-pads.xml:
1546         * docs/manual/highlevel-components.xml:
1547         * docs/manual/manual.xml:
1548         * docs/manual/thread.fig:
1549           Update (until threads/scheduling) Application Development Manual;
1550           remove GstThread, add GstBus, add simple porting checklist, add
1551           documentation for tag writing, clocks, make all examples until this
1552           part compile and run.
1553         * examples/manual/Makefile.am:
1554           Update from changes to Application Development Manual; add bus
1555           example, remove thread example.
1556
1557 2005-06-28  Wim Taymans  <wim@fluendo.com>
1558
1559         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
1560         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
1561         (gst_bus_source_dispatch):
1562         Add debugging messages.
1563         Make internal methods static.
1564         Handle the case where the bus is flushed in the handler.
1565         
1566         * gst/gstelement.c: (gst_element_get_bus):
1567         Fix refcount in _get_bus();
1568
1569         * gst/gstpipeline.c: (gst_pipeline_change_state),
1570         (gst_pipeline_get_clock_func):
1571         Clock refcounting fixes.
1572         Handle the case where preroll timed out more gracefully.
1573         
1574         * gst/gstsystemclock.c: (gst_system_clock_dispose):
1575         Clean up the internal thread in dispose. This is needed
1576         for subclasses that actually get disposed.
1577         
1578         * gst/schedulers/threadscheduler.c:
1579         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1580         (gst_thread_scheduler_dispose):
1581         Free thread pool in dispose.
1582
1583 2005-06-28  Andy Wingo  <wingo@pobox.com>
1584
1585         * tests/network-clock-utils.scm (debug, print-event): New utils.
1586
1587         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
1588         (*packet-loss*): Unified loss probability.
1589         (network-time): Report out-of-band events.
1590
1591         * tests/plot-data: Add support for out-of-band events. Hack it
1592         into this script instead of passing it down the pipe; should fix
1593         this later.
1594
1595 2005-06-28  Wim Taymans  <wim@fluendo.com>
1596
1597         * docs/gst/gstreamer.types:
1598         * docs/gst/tmpl/gstbasesrc.sgml:
1599         * docs/gst/tmpl/gstpad.sgml:
1600         Docs fixes.
1601
1602 2005-06-28  Wim Taymans  <wim@fluendo.com>
1603
1604         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1605         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
1606         (gst_proxy_pad_do_fixatecaps):
1607         Correctly proxy the check_pull_range function.
1608
1609 2005-06-28  Andy Wingo  <wingo@pobox.com>
1610
1611         * tests/network-clock.scm: Removed need for slib.
1612         
1613 2005-06-28  Wim Taymans  <wim@fluendo.com>
1614
1615         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
1616         (gst_basesink_preroll_queue_flush):
1617         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
1618         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
1619         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1620         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
1621         (gst_proxy_pad_set_property):
1622         * gst/gstpad.c:
1623         * gst/gstpad.h:
1624         * gst/gstqueue.c: (gst_queue_init):
1625         The deprecated pad loop function is removed now.
1626
1627 2005-06-28  Andy Wingo  <wingo@pobox.com>
1628
1629         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
1630         New parameters, simulate network packet loss.
1631
1632         * tests/network-clock-utils.scm: Initialize the RNG.
1633
1634 2005-06-28  Wim Taymans  <wim@fluendo.com>
1635
1636         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
1637         (gst_basesink_event), (gst_basesink_deactivate):
1638         Flushing the preroll queue always needs to unlock the waiters.
1639
1640 2005-06-28  Edward Hervey  <edward@fluendo.com>
1641
1642         * gst/gstpipeline.c: (gst_pipeline_send_event): 
1643         Wheen a seek was successful on a pipeline, set the stream_time to the
1644         seek offset in order to have a synchronized stream_time.
1645
1646 2005-06-28  Wim Taymans  <wim@fluendo.com>
1647
1648         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1649         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
1650         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
1651         (gst_proxy_pad_do_fixatecaps):
1652         Call wrapper function instead of just calling the function
1653         pointers. This takes care of any locking and whatmore.
1654
1655 2005-06-28  Wim Taymans  <wim@fluendo.com>
1656
1657         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
1658         (gst_pad_pull_range):
1659         * gst/gstpad.h:
1660         CONNECTED -> LINKED.
1661
1662 2005-06-28  Andy Wingo  <wingo@pobox.com>
1663
1664         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
1665         source-munging commit!!!
1666
1667         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
1668         (gst_object_sink): Take gpointer arguments, not GstObject --
1669         avoids casts. Like GLib.
1670
1671         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
1672         activate.
1673
1674 2005-06-27  Andy Wingo  <wingo@pobox.com>
1675
1676         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
1677         remaining buffer.
1678
1679         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
1680         returns a sorted copy of the trace list.
1681         (gst_alloc_trace_print_live): New API, only prints traces with
1682         live objects. Sort the list.
1683         (gst_alloc_trace_print_all): Sort the list.
1684         (gst_alloc_trace_print): Align columns.
1685
1686         * gst/elements/gstttypefindelement.c:
1687         * gst/elements/gsttee.c:
1688         * gst/base/gstbasesrc.c:
1689         * gst/base/gstbasesink.c:
1690         * gst/base/gstbasetransform.c:
1691         * gst/gstqueue.c: Adapt for pad activation changes.
1692
1693         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
1694         sched.
1695         (gst_pipeline_dispose): Drop ref on sched.
1696
1697         * gst/gstpad.c (gst_pad_init): Set the default activate func.
1698         (gst_pad_activate_default): Push mode by default.
1699         (pre_activate_switch, post_activate_switch): New stubs, things to
1700         do before and after switching activation modes on pads.
1701         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
1702         the pad's activate function to choose which mode to activate.
1703         Shortcut on deactivation and call the right function directly.
1704         (gst_pad_activate_pull): New API, (de)activates a pad in pull
1705         mode.
1706         (gst_pad_activate_push): New API, same for push mode.
1707         (gst_pad_set_activate_function) 
1708         (gst_pad_set_activatepull_function) 
1709         (gst_pad_set_activatepush_function): Setters for new API.
1710
1711         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
1712         Trace all miniobjects.
1713         (gst_mini_object_make_writable): Unref the arg if we copy, like
1714         gst_caps_make_writable.
1715
1716         * gst/gstmessage.c (_gst_message_initialize): No trace init.
1717
1718         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
1719         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
1720         Adapt for new pad API.
1721
1722         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
1723
1724         * gst/gstelement.h:
1725         * gst/gstelement.c (gst_element_iterate_src_pads) 
1726         (gst_element_iterate_sink_pads): New API functions.
1727         
1728         * gst/gstelement.c (iterator_fold_with_resync): New utility,
1729         should fold into gstiterator.c in some form.
1730         (gst_element_pads_activate): Simplified via use of fold and
1731         delegation of decisions to gstpad->activate.
1732
1733         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
1734         help in debugging.
1735
1736         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
1737         class once in init, like gstmessage. Didn't run into this issue
1738         but it seems correct. Don't initialize a trace, gstminiobject does
1739         that.
1740
1741         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
1742         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
1743         to the bus.
1744         (assert_live_count): New util function, uses alloc traces to check
1745         cleanup.
1746
1747         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
1748         To be modified when unlink drops the internal pad.
1749
1750 2005-06-27  Wim Taymans  <wim@fluendo.com>
1751
1752         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
1753         (gst_bin_change_state):
1754         Cleanup the get_state() function a little, make sure it
1755         iterates the same set of elements.
1756         Added stub iterate_state_order().
1757
1758 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
1759
1760         * docs/gst/gstreamer-docs.sgml:
1761         * docs/gst/gstreamer-sections.txt:
1762         * docs/gst/gstreamer.types:
1763         * docs/gst/tmpl/gstbasesink.sgml:
1764         * docs/gst/tmpl/gstbasesrc.sgml:
1765         * docs/gst/tmpl/gstbasetransform.sgml:
1766         * docs/gst/tmpl/gstelement.sgml:
1767         * docs/gst/tmpl/gstiterator.sgml:
1768         * gst/base/gstbasesrc.c:
1769         * gst/base/gstbasesrc.h:
1770         * gst/base/gstbasetransform.h:
1771         * gst/gstelement.c:
1772         * gst/gstiterator.h:
1773           adding basetransform and iterator docs
1774
1775 2005-06-27  Andy Wingo  <wingo@pobox.com>
1776
1777         * docs/design/part-activation.txt: Notes on how activation should
1778         work -- not quite implemented yet.
1779
1780 2005-06-25  Wim Taymans  <wim@fluendo.com>
1781
1782         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
1783         At least get the chain function correct, needs more
1784         fixing.
1785
1786 2005-06-25  Wim Taymans  <wim@fluendo.com>
1787
1788         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1789         (gst_basesink_handle_object), (gst_basesink_event),
1790         (gst_basesink_do_sync), (gst_basesink_handle_event),
1791         (gst_basesink_change_state):
1792         * gst/gsttask.h:
1793         Right, two problems here: ghostpads don't take locks and
1794         glib _rec_mutex_lock_full() with depth==0 still locks.
1795         Catch illegal locking and g_warn them.
1796
1797 2005-06-25  Wim Taymans  <wim@fluendo.com>
1798
1799         * check/states/sinks.c: (START_TEST), (gst_object_suite):
1800         Have to check for completion now...
1801
1802 2005-06-25  Wim Taymans  <wim@fluendo.com>
1803
1804         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1805         (gst_basesink_handle_object), (gst_basesink_event),
1806         (gst_basesink_do_sync), (gst_basesink_handle_event),
1807         (gst_basesink_change_state):
1808         * gst/gstpad.h:
1809         Unlock STREAM_LOCK whatever the recursion was.
1810
1811 2005-06-25  Wim Taymans  <wim@fluendo.com>
1812
1813         * gst/base/gstbasesink.c: (gst_basesink_set_property),
1814         (gst_basesink_preroll_queue_empty),
1815         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
1816         (gst_basesink_event), (gst_basesink_do_sync),
1817         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
1818         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
1819         (gst_basesink_change_state):
1820         Reworked the base sink, handle event and buffer serialisation
1821         correctly and removed possible deadlock.
1822         Handle EOS correctly.
1823
1824 2005-06-25  Wim Taymans  <wim@fluendo.com>
1825
1826         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
1827         (gst_pipeline_change_state):
1828         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1829         Allow elements to post EOS in the state change function.
1830         Fix up -launch, make it exit the poll loop when the
1831         pipeline actually changed state.
1832         Fix up warning parsing in -launch.
1833
1834 2005-06-25  Wim Taymans  <wim@fluendo.com>
1835
1836         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
1837         (gst_tee_sink_activate):
1838         Core takes STREAM_LOCK for us now.
1839
1840 2005-06-25  Wim Taymans  <wim@fluendo.com>
1841
1842         * gst/gstelement.c: (gst_element_get_state_func),
1843         (gst_element_set_state):
1844         * gst/gstelement.h:
1845         * gst/gstmessage.c: (gst_message_parse_error),
1846         (gst_message_parse_warning):
1847         Keep track of current target state while performing a state
1848         change so that subclasses can do something interesting.
1849         Fix parsing of warning/error messages when GError is NULL.
1850
1851 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
1852
1853         * docs/gst/Makefile.am:
1854         * docs/gst/gstreamer-docs.sgml:
1855         * docs/gst/gstreamer-sections.txt:
1856         * docs/gst/gstreamer.types:
1857         * docs/gst/tmpl/gstbasesink.sgml:
1858         * docs/gst/tmpl/gstbasesrc.sgml:
1859         * docs/gst/tmpl/gstbin.sgml:
1860         * docs/gst/tmpl/gstcompat.sgml:
1861         * docs/gst/tmpl/gstfakesink.sgml:
1862         * docs/gst/tmpl/gstfakesrc.sgml:
1863         * docs/gst/tmpl/gstfilesink.sgml:
1864         * docs/gst/tmpl/gstfilesrc.sgml:
1865         * docs/gst/tmpl/gstindex.sgml:
1866         * docs/manual/appendix-quotes.xml:
1867         * gst/base/gstbasesrc.h:
1868         * gst/elements/gstfakesrc.h:
1869         * gst/gstmessage.h:
1870           start pulling in base classes and elements in our docs
1871
1872 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
1873
1874         * docs/gst/Makefile.am:
1875         * docs/libs/Makefile.am:
1876           fixed make distcheck with gtk-doc 1.3
1877
1878 2005-06-23  Wim Taymans  <wim@fluendo.com>
1879
1880         * gst/gstelement.c: (gst_element_get_state_func),
1881         (gst_element_set_state), (gst_element_change_state):
1882         When the state did not change, also report NO_PREROLL
1883         when it matters.
1884
1885 2005-06-23  Wim Taymans  <wim@fluendo.com>
1886
1887         * gst/gstpad.c: (gst_pad_event_default):
1888         * gst/gstqueue.c: (gst_queue_loop):
1889         No unsafe task pausing please.
1890
1891 2005-06-23  Wim Taymans  <wim@fluendo.com>
1892
1893         * gst/schedulers/threadscheduler.c:
1894         (gst_thread_scheduler_task_start),
1895         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
1896         Ref the task before pushing it on the threadpool. This
1897         makes sure that we have a ref when the threadfunction is
1898         actually called.
1899
1900 2005-06-23  Andy Wingo  <wingo@pobox.com>
1901
1902         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
1903         offset is greater than the file's size.
1904
1905         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
1906         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
1907         * gst/gstobject.c (gst_object_class_init): Make the class lock
1908         recursive. Wim won't let me drop deep_notify. Decodebin works
1909         again, whoopdy doo.
1910
1911         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
1912         internal pad, and hacks accordingly. Doesn't do it on the target
1913         pad because we change its caps. Probably catches all cases of
1914         interest tho.
1915         (gst_ghost_pad_set_property): Connect to notify::caps as
1916         appropritate.
1917
1918         * tests/network-clock.scm (plot-simulation): Pipe data to the
1919         elite python skript.
1920
1921         * tests/network-clock-utils.scm (define-parameter): New macro,
1922         defines a parameter that can be set via the command line.
1923         (set-parameter!, parse-parameter-arguments): Command line args
1924         parser.
1925
1926         * tests/plot-data: Simple matplotlib-based plotter, takes input on
1927         stdin.
1928
1929 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
1930
1931         * gst/elements/gsttypefindelement.c:
1932         (gst_type_find_element_handle_event):
1933           Don't restart typefinding on a discont.
1934         * gst/gstelement.c: (gst_element_set_state):
1935           Debug spelling fix.
1936         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
1937           Allow changing mode of an active pad.
1938           Debug output fixes.
1939         * gst/registries/gstlibxmlregistry.c: (load_feature):
1940           Don't cast a static pad template to a normal pad template.
1941
1942 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
1943
1944         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
1945         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
1946           remove gst_strtoll completely, since it didn't actually do
1947           anything more than what g_ascii_strtoull already does.
1948           check for range errors when deserializing
1949           do a cast for the unsigned cases; but further fixing needs
1950           a decision on what the interpretation of "(int)" and
1951           deserialization should be for values that fall outside the
1952           type's boundaries (ie, refuse, or interpret as casting)
1953
1954 2005-06-23  Wim Taymans  <wim@fluendo.com>
1955
1956         * check/Makefile.am:
1957         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
1958         * docs/design/part-live-source.txt:
1959         * docs/design/part-states.txt:
1960         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1961         (gst_basesrc_set_live), (gst_basesrc_is_live),
1962         (gst_basesrc_get_range), (gst_basesrc_activate),
1963         (gst_basesrc_change_state):
1964         * gst/base/gstbasesrc.h:
1965         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1966         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1967         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
1968         * gst/gstelement.c: (gst_element_get_state_func),
1969         (gst_element_set_state):
1970         * gst/gstelement.h:
1971         * gst/gsttypes.h:
1972         * tools/gst-launch.c: (event_loop), (main):
1973         Added support for live sources and other elements that
1974         cannot do preroll.
1975         Updated design docs, added live-source design doc.
1976         Implemented live source functionality in basesrc
1977         Fix error condition in _bin_get_state()
1978         Implement live source handling in -launch.
1979         Added check for live sources.
1980         Fixed case in GstBin where elements were changed state
1981         multiple times.
1982
1983
1984 2005-06-23  Andy Wingo  <wingo@pobox.com>
1985
1986         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
1987         borken refcounting.
1988
1989         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
1990         gst_caps_replace takes care of this for us.
1991
1992         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
1993         gst_pad_set_caps on the target, not just its setcaps() function.
1994
1995         * tests/network-clock.scm: 
1996         * tests/network-clock-utils.scm: A network clock simulator.
1997         Something of an algorithmic testbed before doing something in C.
1998
1999 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2000
2001         * check/Makefile.am:
2002         * check/gst/capslist.h:
2003           copy over from 0.8, and add two with bitmasks specified with
2004           (int) 0xFF...
2005         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2006           add test to parse everything from capslist.h
2007         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2008         (main):
2009           add test for structure deserialization
2010         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2011           add tests for deserialization of strings to int types
2012         * gst/gststructure.c: (gst_structure_nth_field_name):
2013         * gst/gststructure.h:
2014           add a way to get the name of a field referenced by index
2015         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2016           instead of checking if the resulting long long lies between
2017           min and max, we check if the long long would fit into
2018           a number of bytes for the final type.
2019           This fixes cases where a string represents 2^32 - 1, which
2020           when cast to int would be the (valid) -1, but is bigger than
2021           G_MAXINT
2022
2023 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2024
2025         * gst/parse/grammar.y:
2026           add a log line for type deserialization
2027
2028 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2029
2030         * check/gst/gstvalue.c: (START_TEST):
2031         * gst/gstvalue.c: (gst_value_deserialize):
2032           return long long, not int, so gint64 deserialization actually
2033           works.  Is there any flag that makes the compiler check this ?
2034           Fixes #308559
2035
2036 2005-06-22  Wim Taymans  <wim@fluendo.com>
2037
2038         * gst/gstbuffer.h:
2039         Added convenience macros for setting buffers in GValue.
2040
2041 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2042
2043         * check/gst/.cvsignore:
2044         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2045           add a test deserializing int64, and comment part out because
2046           it fails, yay !
2047
2048 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2049
2050         * check/Makefile.am:
2051         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2052         * testsuite/Makefile.am:
2053         * testsuite/caps/Makefile.am:
2054         * testsuite/caps/value_serialize.c:
2055         * testsuite/test_gst_init.c:
2056           move a value_serialize test over
2057
2058 2005-06-20  Wim Taymans  <wim@fluendo.com>
2059
2060         * gst/gstpad.c:
2061         Small doc updates.
2062         
2063         * gst/gstvalue.c: (gst_value_compare_buffer),
2064         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2065         (gst_value_compare_flags), (gst_value_serialize_flags),
2066         (gst_value_deserialize_flags), (_gst_value_initialize):
2067         Fix serialisation of buffers, they are not boxed types anymore
2068
2069 2005-06-20  Wim Taymans  <wim@fluendo.com>
2070
2071         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2072         Testcase to show error in buffer-on-caps serialisation.
2073
2074 2005-06-20  Andy Wingo  <wingo@pobox.com>
2075
2076         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2077         will be adding to later.
2078
2079         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2080         if its socks fill with rocks.
2081         (gst_system_clock_obtain): Set the name on object construction.
2082         Avoid double-checked locking.
2083
2084 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2085
2086         * gst/gsturi.c: (gst_element_make_from_uri):
2087           Fix potential endless loop.
2088
2089 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2090
2091         * check/Makefile.am:
2092           add gsttag
2093         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2094         (main):
2095           move over from testsuite dir and clean up
2096         * configure.ac:
2097         * gst/gsttag.c:
2098         * testsuite/Makefile.am:
2099         * testsuite/tags/.cvsignore:
2100         * testsuite/tags/Makefile.am:
2101         * testsuite/tags/merge.c:
2102           remove testsuite/tags
2103
2104 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2105
2106         * docs/gst/gstreamer-sections.txt:
2107         * docs/gst/tmpl/gstenumtypes.sgml:
2108         * win32/gstenumtypes.c:
2109           clean up documentation build a little
2110
2111 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2112
2113         * check/gstcheck.h:
2114           add macros for checking refcounts on objects and caps
2115         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2116           add some more unit tests
2117         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2118         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2119           fix leaked refcounts (I hope :)) so unittest works
2120         * gst/gstpad.h:
2121           whitespace removal
2122
2123 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2124
2125         * configure.ac: back to HEAD
2126
2127 === release 0.9.1 ===
2128
2129 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2130
2131         * NEWS:
2132         * RELEASE:
2133           updated
2134
2135 2005-06-17  Andy Wingo  <wingo@pobox.com>
2136
2137         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2138         assert; it's always possible that the pad gets deactivated in
2139         between the checks in gstpad.c and the implementation. Rely on
2140         finish_preroll() to return a FLUSHING or similar instead of on the
2141         assert.
2142         
2143         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2144         clock and post an EOS message if we come out of finish_preroll in
2145         the playing state.
2146
2147 2005-06-16  David Schleef  <ds@schleef.org>
2148
2149         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2150         (gst_capsfilter_set_property): Allow NULL as possible value
2151         for filter_caps property, indicating GST_CAPS_ANY.
2152
2153 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2154
2155         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2156           fix debug output
2157         * gst/schedulers/Makefile.am:
2158           use libgst prefix
2159         * gstreamer.spec.in:
2160           fix spec for it
2161
2162 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2163
2164         * gstreamer.spec.in:
2165           clean up
2166
2167 2005-06-08  Andy Wingo  <wingo@pobox.com>
2168
2169         * gst/gstutils.c: RPAD fixes all around.
2170         (gst_element_link_pads): Refcounting fixes.
2171
2172         * tools/gst-inspect.c:
2173         * tools/gst-xmlinspect.c:
2174         * parse/grammar.y:
2175         * gst/base/gsttypefindhelper.c:
2176         * gst/base/gstbasesink.c:
2177         * gst/gstqueue.c: RPAD fixes.
2178
2179         * gst/gstghostpad.h:
2180         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2181         pads. The tricky thing is they provide both source and sink
2182         interfaces, since they proxy the internal pad for the external
2183         pad, and vice versa. Implement with lower-level ProxyPad objects,
2184         with the interior proxy pad as a child of the exterior ghost pad.
2185         Should write a doc on this.
2186         
2187         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2188         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2189         gst_object API.
2190         
2191         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2192         pads are real pads. No ghost pads in this file. Not documenting
2193         the myriad s/RPAD/PAD/ and REALIZE fixes.
2194         (gst_pad_class_init): Add properties for "direction" and
2195         "template". Both are construct-only, so they can't change during
2196         the life of the pad. Fixes properly deriving from GstPad.
2197         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2198         derived objects, just set properties when creating the objects via
2199         g_object_new.
2200         (gst_pad_get_parent): Implement as a function, return NULL if the
2201         parent is not an element.
2202         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2203         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2204         
2205         * gst/gstobject.c (gst_object_class_init): Make name a construct
2206         property. Don't set it in the object init.
2207
2208         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2209         with UNKNOWN direction.
2210         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2211         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2212         (gst_element_remove_pad): Remove ghost-pad special cases.
2213         (gst_element_pads_activate): Remove rpad cruft.
2214
2215         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2216         catch the pad's-parent-not-an-element case.
2217
2218         * gst/gst.h: Include gstghostpad.h.
2219
2220         * gst/gst.c (init_post): No more real, ghost pads.
2221
2222         * gst/Makefile.am: Add gstghostpad.[ch].
2223
2224         * check/Makefile.am:
2225         * check/gst/gstbin.c:
2226         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
2227         into a bin creates ghost pads, and that the refcounts are right.
2228         Partly moved from gstbin.c.
2229
2230 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2231
2232         * check/gst-libs/.cvsignore:
2233         * check/gst/.cvsignore:
2234         * check/pipelines/.cvsignore:
2235           ignore more
2236         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
2237         (START_TEST), (cleanup_suite), (main):
2238           add some tests related to cleanup after running pipelines
2239
2240 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2241
2242         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
2243           add a testsuite for GstBuffer
2244
2245 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2246
2247         * gst/gstminiobject.h:
2248           add defines for accessing the refcount
2249
2250 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
2251
2252         * Makefile.am: added support for html unit test coverage reports
2253
2254 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
2255
2256         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
2257           Free existing caps if the capsfilter changes. Add a FIXME about
2258           setting those caps on the pads.
2259
2260         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
2261           Before adding a ghost pad to a parent bin, check that there isn't
2262           already one for the element on the bin. Prevents infinite recursion
2263           when using decodebin in parse pipelines. Andy says he'll rewrite the
2264           way this works anyway, so ignore the hack.
2265
2266 2005-06-02  Andy Wingo  <wingo@pobox.com>
2267
2268         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
2269         file size, pass it on to the type find helper.
2270
2271         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
2272         segment_start and segment_end properly according to the seek
2273         method. Segment_end is still a bit flaky because offset can be
2274         negative for CUR and END cases, but it takes -1 as an "unset"
2275         value.
2276
2277 2005-06-02  Wim Taymans  <wim@fluendo.com>
2278
2279         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
2280         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
2281         (gst_basesink_activate):
2282         * gst/base/gstbasesink.h:
2283         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2284         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2285         (gst_pad_query), (gst_pad_start_task):
2286         * gst/gstpad.h:
2287         * gst/gstqueue.c: (gst_queue_bufferalloc),
2288         (gst_queue_handle_sink_event), (gst_queue_chain):
2289         Bufferalloc: return GstFlowReturn to more accuratly report
2290         why allocation failed.
2291
2292 2005-06-02  Wim Taymans  <wim@fluendo.com>
2293
2294         * gst/gstpipeline.c: (gst_pipeline_send_event):
2295         Take snapshot of state without blocking.
2296
2297 2005-06-02  Wim Taymans  <wim@fluendo.com>
2298
2299         * docs/design/part-TODO.txt:
2300         * docs/design/part-caps.txt:
2301         * docs/design/part-clocks.txt:
2302         * docs/design/part-negotiation.txt:
2303         * docs/design/part-preroll.txt:
2304         Small doc updates 
2305
2306 2005-05-30  Wim Taymans  <wim@fluendo.com>
2307
2308         * gst/elements/gstidentity.c: (gst_identity_event),
2309         (gst_identity_transform), (gst_identity_get_property):
2310         Protect last_message property as it is accessed from
2311         multiple threads.
2312
2313 2005-05-30  Wim Taymans  <wim@fluendo.com>
2314
2315         * gst/gstelement.c: (gst_element_init),
2316         (gst_element_pads_activate), (gst_element_change_state):
2317         Slicker pad activation code.
2318
2319 2005-05-30  Wim Taymans  <wim@fluendo.com>
2320
2321         * gst/Makefile.am:
2322         * gst/gstelement.h:
2323         * gst/gstelementfactory.h:
2324         * gst/gsttypes.h:
2325         Move elementfactory methods to separate .h file.
2326
2327 2005-05-30  Wim Taymans  <wim@fluendo.com>
2328
2329         * docs/design/part-overview.txt:
2330         * gst/gstsystemclock.h:
2331         Small typo fixes, doc updates.
2332
2333 2005-05-30  Wim Taymans  <wim@fluendo.com>
2334
2335         * gst/gst.c: (gst_init_get_popt_table), (init_post),
2336         (init_popt_callback):
2337         Remove cpu-opt flag.
2338
2339 2005-05-30  Wim Taymans  <wim@fluendo.com>
2340
2341         * gst/gstbuffer.c: (gst_subbuffer_finalize),
2342         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
2343         * gst/gstbuffer.h:
2344         Avoid typechecking in places where not needed.
2345         Added accessor for malloc_data.
2346
2347 2005-05-30  Wim Taymans  <wim@fluendo.com>
2348
2349         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
2350         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
2351         (gst_pad_configure_sink), (gst_pad_configure_src),
2352         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
2353         (gst_pad_start_task):
2354         Propagate errors from _set_caps() in configure_src/sink
2355         functions instead of returning TRUE.
2356         FLUSH events can travel up and downstream
2357
2358
2359 2005-05-30  Wim Taymans  <wim@fluendo.com>
2360
2361         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2362         (gst_basesink_activate):
2363         Handle EOS in preroll.
2364
2365 2005-05-30  Wim Taymans  <wim@fluendo.com>
2366
2367         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2368         (gst_queue_loop), (gst_queue_handle_src_event):
2369         Remove old pieces of code
2370         Flushing the queue in an upstream event is a very bad idea.
2371
2372 2005-05-26  Andy Wingo  <wingo@pobox.com>
2373
2374         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
2375         gst_value_set_mini_object so as to add a ref on the object (which
2376         will be removed when the value is unset).
2377
2378         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
2379         arg type in ::handoff.
2380
2381         * gst/gstelement.c (gst_element_change_state): Also deactivate
2382         pads in READY->NULL, just in case the element didn't make it to
2383         PAUSED. Wingo tested, Wim approved.
2384
2385 2005-05-26  Wim Taymans  <wim@fluendo.com>
2386
2387         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2388         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
2389         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
2390         A flushing pad cannot be used to alloc_buffer from.
2391
2392 2005-05-26  Wim Taymans  <wim@fluendo.com>
2393
2394         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
2395         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
2396         (gst_bus_source_dispatch), (gst_bus_source_finalize),
2397         (gst_bus_create_watch), (gst_bus_add_watch_full):
2398         * gst/gstbus.h:
2399         Implement a real GSource and use g_main_context_wakeup() to
2400         signal new messages instead of the socketpair.
2401
2402 2005-05-25  Wim Taymans  <wim@fluendo.com>
2403
2404         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
2405         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
2406         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2407         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2408         (gst_pad_send_event), (gst_pad_start_task):
2409         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
2410         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
2411         (gst_queue_sink_activate), (gst_queue_src_activate),
2412         (gst_queue_change_state):
2413         * gst/gstqueue.h:
2414         Fix state changes for non sinks. We now change sinks, then elements
2415         with unconnected srcpads, then the rest.
2416         More efficient queue unlocking in flush and state changes.
2417         Set the pad activate mode even if it does not have an activate
2418         function.
2419
2420 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2421
2422         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
2423           Don't go in pull mode for non-seekable sources.
2424         * gst/elements/gsttypefindelement.h:
2425         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2426         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
2427         (free_entry), (stop_typefinding),
2428         (gst_type_find_element_handle_event), (find_peek),
2429         (gst_type_find_element_chain), (do_pull_typefind),
2430         (gst_type_find_element_change_state):
2431           Allow typefinding (w/o seeking) in push-mode, simplified version
2432           of what was in 0.8.
2433         * gst/gstutils.c: (gst_buffer_join):
2434         * gst/gstutils.h:
2435           gst_buffer_join() from 0.8.
2436
2437 2005-05-25  Wim Taymans  <wim@fluendo.com>
2438
2439         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
2440         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
2441         (gst_pad_send_event), (gst_pad_start_task):
2442         Disable attempt at mode switching until it is figured out.
2443
2444 2005-05-25  Wim Taymans  <wim@fluendo.com>
2445
2446         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
2447         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
2448         (gst_basesink_finish_preroll), (gst_basesink_chain),
2449         (gst_basesink_loop), (gst_basesink_activate),
2450         (gst_basesink_change_state):
2451         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
2452         (gst_basesrc_get_range), (gst_basesrc_loop),
2453         (gst_basesrc_activate):
2454         * gst/elements/gsttee.c: (gst_tee_sink_activate):
2455         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2456         (gst_real_pad_init), (gst_real_pad_set_property),
2457         (gst_real_pad_get_property), (gst_pad_set_active),
2458         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
2459         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
2460         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
2461         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
2462         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2463         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
2464         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
2465         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2466         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
2467         (gst_pad_stop_task):
2468         * gst/gstpad.h:
2469         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
2470         (gst_queue_loop), (gst_queue_src_activate):
2471         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
2472         (gst_task_get_state):
2473         * gst/gsttask.h:
2474         * gst/schedulers/threadscheduler.c:
2475         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
2476         Implement gst_pad_pause/start/stop_task(), take STREAM lock
2477         in task function.
2478         Remove ACTIVE pad flag, use FLUSHING everywhere
2479         Added _pad_chain(), _pad_get_range() to call chain/getrange 
2480         functions.
2481         Add locks around IS_FLUSHING when reading.
2482         Take STREAM lock in chain(), get_range() functions so plugins
2483         don't need to take it anymore.
2484         
2485
2486
2487 2005-05-25  Wim Taymans  <wim@fluendo.com>
2488
2489         * tools/gst-launch.c: (event_loop):
2490         Unref message after using its contents instead of
2491         before.
2492
2493 2005-05-24  Wim Taymans  <wim@fluendo.com>
2494
2495         * docs/design/draft-ghostpads.txt:
2496         * docs/design/draft-push-pull.txt:
2497         * docs/design/draft-query.txt:
2498         * docs/design/part-overview.txt:
2499         Docs updates, added general overview doc.
2500
2501 2005-05-21  David Schleef  <ds@schleef.org>
2502
2503         * docs/gst/tmpl/old/GstBin.sgml:
2504         * docs/gst/tmpl/old/GstBuffer.sgml:
2505         * docs/gst/tmpl/old/GstCaps.sgml:
2506         * docs/gst/tmpl/old/GstClock.sgml:
2507         * docs/gst/tmpl/old/GstCompat.sgml:
2508         * docs/gst/tmpl/old/GstData.sgml:
2509         * docs/gst/tmpl/old/GstElement.sgml:
2510         * docs/gst/tmpl/old/GstEvent.sgml:
2511         * docs/gst/tmpl/old/GstIndex.sgml:
2512         * docs/gst/tmpl/old/GstStructure.sgml:
2513         * docs/gst/tmpl/old/GstTag.sgml:
2514         * docs/gst/tmpl/old/cothreads.sgml:
2515         * docs/gst/tmpl/old/cothreads_compat.sgml:
2516         * docs/gst/tmpl/old/gettext.sgml:
2517         * docs/gst/tmpl/old/gobject2gtk.sgml:
2518         * docs/gst/tmpl/old/grammar.tab.sgml:
2519         * docs/gst/tmpl/old/gst-i18n-app.sgml:
2520         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
2521         * docs/gst/tmpl/old/gst_private.sgml:
2522         * docs/gst/tmpl/old/gstaggregator.sgml:
2523         * docs/gst/tmpl/old/gstarch.sgml:
2524         * docs/gst/tmpl/old/gstatomic_impl.sgml:
2525         * docs/gst/tmpl/old/gstbufferstore.sgml:
2526         * docs/gst/tmpl/old/gstdata_private.sgml:
2527         * docs/gst/tmpl/old/gstdisksink.sgml:
2528         * docs/gst/tmpl/old/gstdisksrc.sgml:
2529         * docs/gst/tmpl/old/gstelementfactory.sgml:
2530         * docs/gst/tmpl/old/gstextratypes.sgml:
2531         * docs/gst/tmpl/old/gstfakesink.sgml:
2532         * docs/gst/tmpl/old/gstfakesrc.sgml:
2533         * docs/gst/tmpl/old/gstfdsink.sgml:
2534         * docs/gst/tmpl/old/gstfdsrc.sgml:
2535         * docs/gst/tmpl/old/gstfilesink.sgml:
2536         * docs/gst/tmpl/old/gstfilesrc.sgml:
2537         * docs/gst/tmpl/old/gsthttpsrc.sgml:
2538         * docs/gst/tmpl/old/gstidentity.sgml:
2539         * docs/gst/tmpl/old/gstindexfactory.sgml:
2540         * docs/gst/tmpl/old/gstmarshal.sgml:
2541         * docs/gst/tmpl/old/gstmd5sink.sgml:
2542         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
2543         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
2544         * docs/gst/tmpl/old/gstpadtemplate.sgml:
2545         * docs/gst/tmpl/old/gstpipefilter.sgml:
2546         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
2547         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
2548         * docs/gst/tmpl/old/gstshaper.sgml:
2549         * docs/gst/tmpl/old/gstspider.sgml:
2550         * docs/gst/tmpl/old/gstspideridentity.sgml:
2551         * docs/gst/tmpl/old/gststatistics.sgml:
2552         * docs/gst/tmpl/old/gsttee.sgml:
2553         * docs/gst/tmpl/old/gsttimecache.sgml:
2554         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
2555         * docs/gst/tmpl/old/gstxmlregistry.sgml:
2556         * docs/gst/tmpl/old/gthread-cothreads.sgml:
2557         * docs/gst/tmpl/old/types.sgml:
2558           I didn't intend to add these or check them in.
2559
2560 2005-05-19  David Schleef  <ds@schleef.org>
2561
2562         * configure.ac: Use -no-common everywhere.  In a sane world, it
2563           would be the default in libtool, because without it, you can't
2564           build DLLs on Windows.
2565         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
2566         * docs/gst/gstreamer-sections.txt:
2567         * docs/gst/tmpl/gstcpu.sgml:
2568         * docs/gst/tmpl/gstdata.sgml:
2569         * docs/gst/tmpl/gstthread.sgml:
2570
2571 2005-05-19  David Schleef  <ds@schleef.org>
2572
2573         * gst/gstminiobject.c: (gst_value_set_mini_object),
2574         (gst_value_take_mini_object), (gst_value_get_mini_object):
2575         * gst/gstminiobject.h: Add GValue set/get functions.
2576
2577 2005-05-19  Wim Taymans  <wim@fluendo.com>
2578
2579         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
2580         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
2581         (gst_subbuffer_init), (gst_buffer_is_span_fast):
2582         * gst/gstbuffer.h:
2583         * gst/gstbus.c: (gst_bus_post):
2584         * gst/gstelement.c: (gst_element_get_random_pad):
2585         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
2586         Make subbufer unref the parent in finalize.
2587         some more debugging info.
2588
2589
2590 2005-05-19  Wim Taymans  <wim@fluendo.com>
2591
2592         * gst/base/gstbasesink.c: (gst_basesink_class_init),
2593         (gst_basesink_init), (gst_basesink_finalize),
2594         (gst_basesink_activate), (gst_basesink_change_state):
2595         Don't free preroll queue too early.
2596
2597 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2598
2599         * gst/Makefile.am:
2600         * gst/ROADMAP:
2601           Hi, I'm outdated. Please shoot me.
2602
2603 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2604
2605         * gst/gstpipeline.c: (gst_pipeline_send_event):
2606           Do not access variables after they have been deleted.
2607
2608 2005-05-19  Wim Taymans  <wim@fluendo.com>
2609
2610         * tools/gst-inspect.c: (print_plugin_features):
2611         A plugin feature does unfortunatly not use the
2612         object name yet...
2613
2614 2005-05-18  Wim Taymans  <wim@fluendo.com>
2615
2616         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
2617         Port _span() functions to new subbuffers.
2618
2619 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2620
2621         * gst/gstbin.c: (gst_bin_add_func):
2622           Fix clock settery in bins when adding kids after the clock has
2623           been selected.
2624
2625 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2626
2627         * gst/elements/gstidentity.c: (gst_identity_class_init):
2628           Workaround until signals support GstMiniObject.
2629
2630 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
2631
2632         * gst/gstbuffer.c:
2633         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
2634
2635 2005-05-18  Wim Taymans  <wim@fluendo.com>
2636
2637         * gst/base/Makefile.am:
2638         * gst/base/gstadapter.c: (gst_adapter_base_init),
2639         (gst_adapter_class_init), (gst_adapter_init),
2640         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
2641         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
2642         (gst_adapter_flush), (gst_adapter_available),
2643         (gst_adapter_available_fast):
2644         * gst/base/gstadapter.h:
2645         Ported and added adapter to the base classes.
2646
2647 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
2648
2649         * gst/gst.c:
2650         * gst/gstmessage.c:
2651           Make sure the class is reffed/unreffed once before threads can be
2652           used.  Fixes #304551.
2653
2654 2005-05-17  Wim Taymans  <wim@fluendo.com>
2655
2656         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
2657         (gst_basesink_chain_unlocked), (gst_basesink_activate):
2658         * gst/gstminiobject.c: (gst_mini_object_get_type),
2659         (gst_mini_object_free):
2660         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
2661         (gst_pad_push), (gst_pad_push_event):
2662         * gst/gstqueue.c: (gst_queue_change_state):
2663         Don't queue buffers in basesink when we are flushing.
2664         Unref buffer when flushing in basesink.
2665         Flush queue when going to READY
2666         Unref buffer when _push() returns an error.
2667         Don't free MiniObject instance when refcount is incremented
2668         in _finalize() so that we can recover objects.
2669
2670 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2671
2672         * docs/manual/advanced-schedulers.xml:
2673         * docs/manual/appendix-checklist.xml:
2674         * docs/pwg/advanced-clock.xml:
2675         * docs/pwg/advanced-interfaces.xml:
2676         * docs/pwg/advanced-request.xml:
2677         * docs/pwg/advanced-types.xml:
2678         * docs/pwg/intro-preface.xml:
2679         * examples/plugins/example.c: (gst_example_get_type),
2680         (gst_example_class_init), (gst_example_chain),
2681         (gst_example_set_property), (gst_example_get_property),
2682         (gst_example_change_state), (plugin_init):
2683         * examples/plugins/example.h:
2684           small doc fixes
2685
2686 2005-05-17  Wim Taymans  <wim@fluendo.com>
2687
2688         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
2689         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
2690         * gst/gstqueue.c: (gst_queue_change_state):
2691         Clear queue when going to READY.
2692         Remove IN_SETCAPS flag too.
2693
2694 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
2695
2696         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
2697           Remove implicit cast from gboolean to GstElementStateReturn;
2698           make sure we still return failure in paused => ready case if
2699           the parent class fails to change state and our own stop 
2700           vfunc succeeds.
2701
2702 2005-05-17  Wim Taymans  <wim@fluendo.com>
2703
2704         * tools/gst-launch.c: (event_loop):
2705         Message was unreffed too soon.
2706
2707 2005-05-16  Andy Wingo  <wingo@pobox.com>
2708
2709         * gst/gstbin.c (sink_iterator_filter): Err... um...
2710
2711         * check/gst/gstbin.c (test_ghost_pads): New test for the
2712         ghosting-if-elements-not-in-same-bin behavior.
2713
2714 2005-05-16  David Schleef  <ds@schleef.org>
2715
2716         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
2717         accessing refcount directly.
2718
2719 2005-05-15  David Schleef  <ds@schleef.org>
2720
2721         * check/Makefile.am: remove GstData checks
2722         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
2723         * gst/Makefile.am: add miniobject, remove data
2724         * gst/gst.h: add miniobject, remove data
2725         * gst/gstdata.c: remove
2726         * gst/gstdata.h: remove
2727         * gst/gstdata_private.h: remove
2728         * gst/gsttypes.h: remove GstEvent and GstMessage
2729         * gst/gstelement.c: (gst_element_post_message): fix for API changes
2730         * gst/gstmarshal.list: change BOXED -> OBJECT
2731
2732         Implement GstMiniObject.
2733         * gst/gstminiobject.c:
2734         * gst/gstminiobject.h:
2735
2736         Modify to be subclasses of GstMiniObject.
2737         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
2738         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
2739         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
2740         (gst_subbuffer_get_type), (gst_subbuffer_init),
2741         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
2742         (gst_buffer_span):
2743         * gst/gstbuffer.h:
2744         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
2745         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
2746         (_gst_event_copy), (gst_event_new):
2747         * gst/gstevent.h:
2748         * gst/gstmessage.c: (_gst_message_initialize),
2749         (gst_message_get_type), (gst_message_class_init),
2750         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
2751         (gst_message_new), (gst_message_new_error),
2752         (gst_message_new_warning), (gst_message_new_tag),
2753         (gst_message_new_state_changed), (gst_message_new_application):
2754         * gst/gstmessage.h:
2755         * gst/gstprobe.c: (gst_probe_perform),
2756         (gst_probe_dispatcher_dispatch):
2757         * gst/gstprobe.h:
2758         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
2759         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
2760         (_gst_query_copy), (gst_query_new):
2761
2762         Update elements for GstData -> GstMiniObject changes
2763         * gst/gstquery.h:
2764         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
2765         (gst_queue_chain), (gst_queue_loop):
2766         * gst/elements/gstbufferstore.c:
2767         (gst_buffer_store_add_buffer_func),
2768         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
2769         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2770         (gst_fakesink_render):
2771         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2772         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
2773         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
2774         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
2775         (gst_filesrc_create_read):
2776         * gst/elements/gstidentity.c: (gst_identity_class_init):
2777         * gst/elements/gsttypefindelement.c:
2778         (gst_type_find_element_src_event), (free_entry_buffers),
2779         (gst_type_find_element_handle_event):
2780         * libs/gst/dataprotocol/dataprotocol.c:
2781         (gst_dp_header_from_buffer):
2782         * libs/gst/dataprotocol/dataprotocol.h:
2783         * libs/gst/dataprotocol/dp-private.h:
2784
2785 2005-05-15  David Schleef  <ds@schleef.org>
2786
2787         * gst/elements/gstelements.c: Don't include headers that were
2788         just removed.
2789
2790 2005-05-15  David Schleef  <ds@schleef.org>
2791
2792         * gst/elements/Makefile.am: Remove some elements that don't
2793         need to be in the core (or even exist at all).
2794         * gst/elements/gstaggregator.c:
2795         * gst/elements/gstaggregator.h:
2796         * gst/elements/gstmd5sink.c:
2797         * gst/elements/gstmd5sink.h:
2798         * gst/elements/gstmultifilesrc.c:
2799         * gst/elements/gstmultifilesrc.h:
2800         * gst/elements/gstpipefilter.c:
2801         * gst/elements/gstpipefilter.h:
2802         * gst/elements/gstshaper.c:
2803         * gst/elements/gstshaper.h:
2804         * gst/elements/gststatistics.c:
2805         * gst/elements/gststatistics.h:
2806         * po/POTFILES.in: Remove above files.
2807
2808 2005-05-14  Andy Wingo  <wingo@pobox.com>
2809
2810         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
2811         so as to get the refs right.
2812         (sink_iterator_filter): New function, wraps bin_element_is_sink,
2813         unreffing objects that don't pass the filter.
2814
2815         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
2816         gst_element_set_bus.
2817         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
2818         normal cases, this will destroy the bus.
2819
2820         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
2821         object.
2822
2823         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
2824         has no sinks.
2825
2826 2005-05-13  Andy Wingo  <wingo@pobox.com>
2827
2828         * gst/gstutils.c (gst_element_link_pads): Instead of calling
2829         gst_pad_link, call pad_link_maybe_ghosting,
2830         (pad_link_maybe_ghosting): Links pads, making sure that the
2831         elements being linked are in the same bin.
2832         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
2833         Helpers for pad_link_maybe_ghosting.
2834
2835 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2836
2837         * configure.ac:
2838           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
2839
2840 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
2841
2842         * docs/design/part-element-source.txt:
2843           Mention GstPushSrc
2844
2845 2005-05-12  Wim Taymans  <wim@fluendo.com>
2846
2847         * gst/base/gstbasesink.c: (gst_basesink_init),
2848         (gst_basesink_activate):
2849         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
2850         (gst_basesrc_is_seekable):
2851         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
2852         (bin_element_is_sink), (gst_bin_change_state):
2853         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2854         * gst/gstelement.h:
2855         Identify sinks by their flag to avoid overly complicated
2856         checks (fow now).
2857         Do state changes even for elements not reachable from the
2858         sinks.
2859         BaseSink is a sink now :)
2860         Some more debugging info in the basesrc.
2861
2862
2863 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2864
2865         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
2866           Implement _query on a bin, similar to _send_event.
2867
2868 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
2869
2870         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
2871           Discont event offset format should be GST_FORMAT_BYTES,
2872           not GST_FORMAT_TIME.
2873
2874 2005-05-12  Wim Taymans  <wim@fluendo.com>
2875
2876         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
2877         Same fix as Ronald's but without the signal. 
2878
2879 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2880
2881         * gst/gstutils.c: (gst_element_query_position):
2882           No, an element is not a pad.
2883
2884 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2885
2886         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
2887         (gst_bin_get_state):
2888           If a child is removed from a bin while we remove the child from
2889           the bin and while we're retrieving its state, signal this to the
2890           get_state function so we abort the wait (instead of waiting for
2891           a timeout) and can immediately re-iterate over all other elements.
2892
2893 2005-05-12  Wim Taymans  <wim@fluendo.com>
2894
2895         * gst/base/Makefile.am:
2896         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
2897         (gst_basesrc_start):
2898         * gst/base/gstbasesrc.h:
2899         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
2900         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
2901         (gst_pushsrc_init), (gst_pushsrc_create):
2902         * gst/base/gstpushsrc.h:
2903         Added is_seekable to BaseSrc
2904         Added simple PushSrc.
2905
2906 2005-05-11  Wim Taymans  <wim@fluendo.com>
2907
2908         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
2909         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2910         (gst_element_link_pads), (gst_element_query_position),
2911         (gst_element_query_convert), (intersect_caps_func),
2912         (gst_pad_query_position), (gst_pad_query_convert):
2913         Fix refcounting in utils function.
2914         No point in trying to activate a pad when it's added, it could
2915         be added from the state change function and then we deadlock, the
2916         element has to decide what to do.
2917
2918 2005-05-10  Andy Wingo  <wingo@pobox.com>
2919
2920         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
2921         *all* the arguments.
2922
2923         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
2924         stream lock if it's a FLUSH_DONE; normal flushes don't get the
2925         lock (according to the docs -- if this is wrong change the docs).
2926
2927         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
2928         flush messages in the NULL state.
2929
2930         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
2931         message immediately and return.
2932         (gst_bus_set_flushing): New function. If a bus is flushing, it
2933         flushes out any queued messages and immediately unrefs new
2934         messages. This is so when an element goes to NULL, all of the
2935         unhandled messages coming from it can be freed, and their
2936         references to the element dropped. In other words: message source
2937         ref considered harmful :P
2938
2939         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
2940         we're finished with it.
2941
2942         * gst/gstmessage.c (gst_message_new_state_changed): 
2943
2944 2005-05-10  Wim Taymans  <wim@fluendo.com>
2945
2946         * gst/gstvalue.c: (gst_value_compare_flags),
2947         (gst_value_serialize_flags), (gst_value_deserialize_flags),
2948         (_gst_value_initialize):
2949         Added flags serialize/deserialize/compare code.
2950
2951 2005-05-09  Andy Wingo  <wingo@pobox.com>
2952
2953         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
2954         Intersect the peer's caps with our caps.
2955
2956 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2957
2958         * gst/base/gsttypefindhelper.c: (helper_find_peek):
2959         * gst/elements/gsttypefindelement.c: (find_peek):
2960           Handle negative offsets better. Fixes decodebin.
2961
2962 2005-05-09  Wim Taymans  <wim@fluendo.com>
2963
2964         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
2965         (gst_base_transform_event):
2966         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
2967         Implement accept_caps.
2968         Fix silly lock/unlock mismatch in base class.
2969
2970 2005-05-09  Wim Taymans  <wim@fluendo.com>
2971
2972         * docs/design/draft-push-pull.txt:
2973         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
2974         * gst/elements/gstfilesink.c: (gst_filesink_init),
2975         (gst_filesink_query):
2976         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
2977         (gst_type_find_handle_src_query), (find_element_get_length):
2978         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
2979         * gst/gstelement.h:
2980         * gst/gstmessage.c:
2981         * gst/gstmessage.h:
2982         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
2983         (gst_real_pad_get_caps_unlocked),
2984         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
2985         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2986         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
2987         (gst_real_pad_dispose), (gst_real_pad_finalize),
2988         (gst_pad_load_and_link), (gst_pad_save_thyself),
2989         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
2990         (gst_pad_check_pull_range), (gst_pad_pull_range),
2991         (gst_pad_template_get_type), (gst_pad_template_class_init),
2992         (gst_pad_template_init), (gst_pad_template_dispose),
2993         (name_is_valid), (gst_static_pad_template_get),
2994         (gst_pad_template_new), (gst_static_pad_template_get_caps),
2995         (gst_pad_template_get_caps), (gst_pad_set_element_private),
2996         (gst_pad_get_element_private), (gst_pad_start_task),
2997         (gst_pad_pause_task), (gst_pad_stop_task),
2998         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
2999         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3000         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3001         (gst_ghost_pad_new):
3002         * gst/gstpad.h:
3003         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3004         (gst_query_new_position), (gst_query_set_position),
3005         (gst_query_parse_position), (gst_query_new_convert),
3006         (gst_query_set_convert), (gst_query_parse_convert):
3007         * gst/gstquery.h:
3008         * gst/gstqueryutils.c:
3009         * gst/gstqueryutils.h:
3010         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3011         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3012         (gst_queue_handle_src_query):
3013         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3014         (gst_element_query_position), (gst_element_query_convert),
3015         (intersect_caps_func), (gst_pad_query_position),
3016         (gst_pad_query_convert):
3017         * gst/gstutils.h:
3018         * tools/gst-inspect.c: (print_pad_info):
3019         * tools/gst-xmlinspect.c: (print_element_info):
3020         Remove old query functions. Ported old code.
3021         Added position/convert helper functions to gstutils.
3022         Reordered gstpad.c code, grouping relevant things.
3023         Remove gst_message_new(), always need to speficy a specific
3024         message.
3025
3026
3027 2005-05-09  Andy Wingo  <wingo@pobox.com>
3028
3029         * gst/gstiterator.h: Add some includes.
3030
3031         * gst/gstqueryutils.h: Include more headers.
3032
3033         * gst/gstpad.h:
3034         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3035         some uses of gst_pad_query.
3036
3037         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3038         NULL out parameters.
3039         (gst_query_new_position): New proc, allocates a new position
3040         query.
3041
3042         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3043         gstqueryutils.c to the build.
3044
3045         * gst/gststructure.c (gst_structure_set_valist): Implement with
3046         the generic G_VALUE_COLLECT.
3047         
3048 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3049
3050         * gst/Makefile.am: (gst_headers):
3051         Added gstqueryutils.h to the list of headers to install, that was
3052         a 'nachty' move wingo :)
3053
3054 2005-05-06  Andy Wingo  <wingo@pobox.com>
3055
3056         * gst/gstquery.h
3057         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3058         GstData, init a memchunk.
3059         (standard_definitions): Add a few query types, deprecate a few.
3060         (gst_query_get_type): New proc.
3061         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3062         implementation.
3063         (gst_query_new_application, gst_query_get_structure): New public
3064         procs.
3065
3066         * docs/design/draft-query.txt: Removed LINKS from the query types,
3067         because all the rest can be dispatched to other pads -- seemed
3068         ugly to have a query that couldn't be dispatched. internal_links
3069         is fine as a pad method.
3070
3071         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3072         in gstpad.c, but maintain binary compatibility for the moment.
3073         Will fix before 0.9 is out.
3074
3075         * gst/gstqueryutils.c: 
3076         * gst/gstqueryutils.h: New files, implement 3 methods for each
3077         query type: parse_query, parse_response, and set. Probably need an
3078         allocator as well.
3079
3080         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3081
3082         * gst/elements/gstfilesink.c (gst_filesink_query2):
3083         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3084         query_types, and formats methods.
3085
3086         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3087         (gst_pad_set_query2_function): New functions.
3088         (gst_real_pad_init): Set query2_default as the default query2
3089         function. Basically just dispatches to internally linked pads.
3090
3091         Needs review!
3092         
3093         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3094         without using the atomic operations. Only one thread can possibly
3095         be accessing the data at this point. Changed so as to avoid
3096         gst_atomic operations.
3097
3098 2005-05-06  Wim Taymans  <wim@fluendo.com>
3099
3100         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3101         Also set caps if we use the fallback buffer alloc.
3102
3103 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3104
3105         * docs/gst/Makefile.am:
3106         * docs/gst/gstreamer-docs.sgml:
3107         * docs/gst/gstreamer-sections.txt:
3108         * docs/gst/tmpl/gstatomic.sgml:
3109         * docs/gst/tmpl/gstmemchunk.sgml:
3110         * testsuite/elements/struct_i386.h:
3111         * win32/GStreamer.vcproj:
3112         * win32/Makefile:
3113           Purge GstAtomic stuff from docs and win32 makefiles as well
3114
3115 2005-05-06  Wim Taymans  <wim@fluendo.com>
3116
3117         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3118         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3119         * gst/gstpad.c: (gst_pad_peer_get_caps):
3120         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3121         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3122         (gst_queue_src_activate), (gst_queue_change_state):
3123         * gst/gstqueue.h:
3124         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3125         (intersect_caps_func):
3126         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3127         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3128         Some fixes for the peer_get_caps() change.
3129
3130 2005-05-06  Wim Taymans  <wim@fluendo.com>
3131
3132         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3133         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3134         (gst_basesink_activate):
3135         Actually do something with error codes returned from the push
3136         functions.
3137
3138 2005-05-06  Wim Taymans  <wim@fluendo.com>
3139
3140         * docs/design/part-element-sink.txt:
3141         * docs/design/part-element-source.txt:
3142         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3143         (gst_basesink_event), (gst_basesink_activate):
3144         * gst/base/gstbasesink.h:
3145         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3146         (gst_basesrc_activate):
3147         * gst/base/gstbasesrc.h:
3148         * gst/gstelement.c: (gst_element_pads_activate):
3149         Some more documentation.
3150         Fixed scheduling decision in _pads_activate().
3151
3152 2005-05-05  Andy Wingo  <wingo@pobox.com>
3153
3154         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3155         the test suite.
3156
3157 2005-05-05  Wim Taymans  <wim@fluendo.com>
3158
3159         * gst/base/Makefile.am:
3160         * gst/base/gstbasesink.h:
3161         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3162         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3163         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3164         (gst_collectpads_class_init), (gst_collectpads_init),
3165         (gst_collectpads_finalize), (gst_collectpads_new),
3166         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3167         (find_pad), (gst_collectpads_remove_pad),
3168         (gst_collectpads_is_active), (gst_collectpads_collect),
3169         (gst_collectpads_collect_range), (gst_collectpads_start),
3170         (gst_collectpads_stop), (gst_collectpads_peek),
3171         (gst_collectpads_pop), (gst_collectpads_available),
3172         (gst_collectpads_read), (gst_collectpads_flush),
3173         (gst_collectpads_chain):
3174         * gst/base/gstcollectpads.h:
3175         * gst/elements/Makefile.am:
3176         * gst/elements/gstelements.c:
3177         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3178         (gst_fakesink_get_times), (gst_fakesink_event),
3179         (gst_fakesink_preroll), (gst_fakesink_render):
3180         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3181         (gst_filesink_init), (gst_filesink_set_location),
3182         (gst_filesink_open_file), (gst_filesink_close_file),
3183         (gst_filesink_pad_query), (gst_filesink_event),
3184         (gst_filesink_render), (gst_filesink_change_state):
3185         * gst/elements/gstfilesink.h:
3186         Added object to help in making collect pad based elements.
3187         Ported filesink.
3188         Make event function in sink baseclass return gboolean.
3189
3190 2005-05-05  Wim Taymans  <wim@fluendo.com>
3191
3192         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3193         (gst_bin_get_by_name):
3194         * gst/gstbuffer.h:
3195         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3196         (gst_clock_finalize):
3197         * gst/gstdata.c: (gst_data_replace):
3198         * gst/gstdata.h:
3199         * gst/gstelement.c: (gst_element_request_pad),
3200         (gst_element_pads_activate):
3201         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3202         (gst_object_unref):
3203         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3204         (gst_pad_set_checkgetrange_function),
3205         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3206         (gst_pad_check_pull_range), (gst_pad_pull_range),
3207         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3208         (gst_pad_pause_task), (gst_pad_stop_task):
3209         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3210         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3211         Fix name lookup in GstBin.
3212         Added _data_replace() function and _buffer_replace()
3213         Use finalize method to clean up clock.
3214         Fix refcounting on request pads.
3215         Fix pad schedule mode error.
3216         Some more object refcounting debug info,
3217
3218
3219 2005-05-04  Andy Wingo <wingo@pobox.com>
3220
3221         * check/Makefile.am:
3222         * docs/gst/tmpl/gstatomic.sgml:
3223         * docs/gst/tmpl/gstplugin.sgml:
3224         * gst/base/gstbasesink.c: (gst_basesink_activate):
3225         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
3226         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
3227         (gst_basesrc_query), (gst_basesrc_set_property),
3228         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
3229         (gst_basesrc_activate):
3230         * gst/base/gstbasesrc.h:
3231         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
3232         (gst_base_transform_src_activate):
3233         * gst/elements/gstelements.c:
3234         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3235         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
3236         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3237         * gst/elements/gsttypefindelement.c: (find_element_get_length),
3238         (gst_type_find_element_checkgetrange),
3239         (gst_type_find_element_activate):
3240         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
3241         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
3242         (gst_caps_load_thyself):
3243         * gst/gstelement.c: (gst_element_pads_activate),
3244         (gst_element_save_thyself), (gst_element_restore_thyself):
3245         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
3246         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
3247         * gst/gstpad.h:
3248         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
3249         (gst_xml_parse_file), (gst_xml_parse_memory),
3250         (gst_xml_get_element), (gst_xml_make_element):
3251         * gst/indexers/gstfileindex.c: (gst_file_index_load),
3252         (_file_index_id_save_xml), (gst_file_index_commit):
3253         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
3254         (read_enum), (load_pad_template), (load_feature), (load_plugin),
3255         (load_paths):
3256         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
3257         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
3258         * tools/gst-complete.c: (main):
3259         * tools/gst-compprep.c: (main):
3260         * tools/gst-inspect.c: (print_element_properties_info):
3261         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
3262         * tools/gst-xmlinspect.c: (print_element_properties):
3263         GCC 4 fixen.
3264         
3265 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
3266
3267         * gst/gstplugin.c: (gst_plugin_check_module),
3268         (gst_plugin_check_file), (gst_plugin_load_file):
3269             apply patch from #172526 to make register work on MacOSX
3270
3271 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3272
3273         * docs/gst/tmpl/gstconfig.sgml:
3274         * gst/gstconfig.h.in:
3275           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
3276         * testsuite/debug/printf_extension.c: (main):
3277           Do not use GST_PTR_FORMAT on pointers to types with
3278           sizeof < sizeof(gpointer).  Fixes test on 64-bit
3279         * testsuite/elements/property.h:
3280           use correct printf format
3281
3282 2005-05-02  Wim Taymans  <wim@fluendo.com>
3283
3284         * docs/design/draft-push-pull.txt:
3285         * docs/design/draft-query.txt:
3286         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
3287         (gst_basesrc_start):
3288         Added draft for new query API.
3289         Added draft for better selecting scheduling methods.
3290         Make basesrc ignore length if the subclass does not support
3291         it.
3292
3293 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3294
3295         * gst/Makefile.am:
3296           possible fixes for automake-1.5 - _LIBADD is reserved
3297
3298 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
3299
3300         * docs/faq/Makefile.am:
3301         * docs/manual/Makefile.am:
3302         * docs/manuals.mak:
3303         * docs/pwg/Makefile.am:
3304         * gst/Makefile.am:
3305           possible fixes for automake-1.5
3306
3307 2005-04-28  Wim Taymans  <wim@fluendo.com>
3308
3309         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3310         (gst_basesink_pad_getcaps), (gst_basesink_init),
3311         (gst_basesink_do_sync):
3312         * gst/gstclock.c: (gst_clock_entry_new):
3313         * gst/gstevent.c: (gst_event_discont_get_value):
3314         * gst/gstpipeline.c: (pipeline_bus_handler),
3315         (gst_pipeline_change_state):
3316         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
3317         Better debugging of clocking info.
3318         Allow NULL values when getting discont values.
3319
3320 2005-04-27  Wim Taymans  <wim@fluendo.com>
3321
3322         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
3323         * check/gst/gstpad.c: (gst_pad_suite):
3324         Increase timeout for checks.
3325
3326 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3327
3328         * check/Makefile.am:
3329           fix the broken rule for cleanup.  Apparently this rule is
3330           only needed on FC2, so maybe this warrants further autotool
3331           inspection.
3332
3333 2005-04-26  Wim Taymans  <wim@fluendo.com>
3334
3335         * gst/gsttrashstack.h:
3336         Ooohh. a nasty one! After having a failed pop() from the stack,
3337         it's possible that the stack is empty. In that case, don't
3338         follow the NULL pointer.
3339
3340 2005-04-25  Wim Taymans  <wim@fluendo.com>
3341
3342         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3343         (gst_pad_set_checkgetrange_function),
3344         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
3345         (gst_pad_check_pull_range), (gst_pad_pull_range),
3346         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3347         (gst_pad_pause_task), (gst_pad_stop_task):
3348         * gst/gstplugin.c: (gst_plugin_load):
3349         * gst/gstplugin.h:
3350         Remove gst_library_load as it does more harm than good with
3351         the new g_module flags.
3352         Revert bogus caps template check in pad linking, pad caps
3353         are important when linking not the template, which is more
3354         general than the current caps.
3355
3356 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3357
3358         * gst/autoplug/.cvsignore:
3359         * gst/autoplug/Makefile.am:
3360         * gst/autoplug/gstsearchfuncs.c:
3361         * gst/autoplug/gstsearchfuncs.h:
3362         * gst/autoplug/gstspider.c:
3363         * gst/autoplug/gstspider.h:
3364         * gst/autoplug/gstspideridentity.c:
3365         * gst/autoplug/gstspideridentity.h:
3366         * gst/autoplug/spidertest.c:
3367           Die, spider, die.
3368
3369 2005-04-25  Wim Taymans  <wim@fluendo.com>
3370
3371         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3372         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3373         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
3374         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
3375         * gst/gstpad.h:
3376         Added stubs for unimplemented functions. 
3377
3378 2005-04-24  David Schleef  <ds@schleef.org>
3379
3380         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
3381         please fix.
3382
3383 2005-04-24  David Schleef  <ds@schleef.org>
3384
3385         Convert everything from GstAtomicInt to g_atomic_int_*, and
3386         remove gstatomic.
3387         * gst/Makefile.am:
3388         * gst/gstatomic.c:
3389         * gst/gstatomic.h:
3390         * gst/gstatomic_impl.h:
3391         * gst/gstbuffer.c:
3392         * gst/gstcaps.c:
3393         * gst/gstcaps.h:
3394         * gst/gstclock.c:
3395         * gst/gstclock.h:
3396         * gst/gstdata.c:
3397         * gst/gstdata.h:
3398         * gst/gstdata_private.h:
3399         * gst/gstevent.c:
3400         * gst/gstinfo.c:
3401         * gst/gstinfo.h:
3402         * gst/gstmessage.c:
3403         * gst/gstobject.c:
3404         * gst/gstobject.h:
3405         * gst/gststructure.c:
3406         * gst/gststructure.h:
3407         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
3408         * gst/gstutils.h:
3409
3410 2005-04-24  David Schleef  <ds@schleef.org>
3411
3412         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
3413         make the regressions tests work.  Remove some code that is no
3414         longer true.
3415         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
3416         Disable warning for pads without templates.
3417
3418 2005-04-24  David Schleef  <ds@schleef.org>
3419
3420         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
3421         functions that handle filtered links.
3422         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
3423         removed functions.
3424         * gst/gstutils.c: Fix/remove utility functions that handle
3425         filtered caps.
3426         * gst/gstutils.h:
3427         * gst/gstvalue.c: Add serialization/deserialization of caps
3428         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
3429         requires fixing so that the filter caps notation creates
3430         a capsfilter element and sets the filter_caps property.  I
3431         think everyone probably wants to keep the shorthand notation.
3432         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
3433         * docs/gst/tmpl/gstpad.sgml:
3434
3435         * gst/elements/gstelements.c: Register capsfilter element.
3436         * gst/Makefile.am: fix spacing
3437         * docs/random/ds/0.9-suggested-changes: random
3438
3439 2005-04-23  David Schleef  <ds@schleef.org>
3440
3441         * gst/elements/Makefile.am:
3442         * gst/elements/gstcapsfilter.c: New element that acts like an
3443         identity, but filters caps.  Will eventually replace filtered
3444         caps in pad linking.
3445         * gst/gstutils.c: (gst_element_create_all_pads): New function
3446         to create all the ALWAYS pads that are registered with an
3447         element class.  This functionality should eventually be
3448         merged in with GstElement initialization.
3449         * gst/gstutils.h:
3450         * testsuite/trigger/README: part of trigger test code that should
3451         have been checked in a long time ago.
3452
3453 2005-04-23  David Schleef  <ds@schleef.org>
3454
3455         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
3456         needed with new versions of libtool (nobody will confirm this),
3457         and hard to carry around.
3458         * gst/autoplug/Makefile.am:
3459         * gst/base/Makefile.am:
3460         * gst/elements/Makefile.am:
3461         * gst/indexers/Makefile.am:
3462         * gst/schedulers/Makefile.am:
3463         * libs/gst/bytestream/Makefile.am:
3464         * libs/gst/control/Makefile.am:
3465         * libs/gst/dataprotocol/Makefile.am:
3466         * libs/gst/getbits/Makefile.am:
3467
3468 2005-04-21  Wim Taymans  <wim@fluendo.com>
3469
3470         * docs/design/draft-push-pull.txt:
3471         * docs/design/part-MT-refcounting.txt:
3472         * docs/design/part-TODO.txt:
3473         * docs/design/part-caps.txt:
3474         * docs/design/part-events.txt:
3475         * docs/design/part-gstbus.txt:
3476         * docs/design/part-gstpipeline.txt:
3477         * docs/design/part-messages.txt:
3478         * docs/design/part-push-pull.txt:
3479         * docs/design/part-query.txt:
3480         Some more docs.
3481
3482 2005-04-21  Wim Taymans  <wim@fluendo.com>
3483
3484         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
3485         (gst_message_new), (gst_message_new_error),
3486         (gst_message_new_warning), (gst_message_new_tag),
3487         (gst_message_new_state_changed), (gst_message_new_application),
3488         (gst_message_get_structure):
3489         * gst/gstmessage.h:
3490         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3491         (gst_structure_copy_conditional):
3492         Use parent refcount in GstMessage to ensure GstStructure
3493         consistency.
3494         Cleaned up headers a bit.
3495         
3496
3497 2005-04-20  Wim Taymans  <wim@fluendo.com>
3498
3499         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3500         (gst_basesink_pad_getcaps), (gst_basesink_init),
3501         (gst_basesink_chain_unlocked):
3502         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
3503         (gst_type_find_helper):
3504         * gst/elements/gsttypefindelement.c:
3505         (gst_type_find_element_have_type), (gst_type_find_element_init),
3506         (stop_typefinding), (gst_type_find_element_handle_event),
3507         (find_suggest), (gst_type_find_element_chain),
3508         (gst_type_find_element_checkgetrange),
3509         (gst_type_find_element_getrange), (do_typefind),
3510         (gst_type_find_element_activate):
3511         * gst/gstbuffer.c: (_gst_buffer_sub_free),
3512         (gst_buffer_default_free), (gst_buffer_default_copy),
3513         (gst_buffer_set_caps):
3514         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
3515         (gst_caps_replace):
3516         * gst/gstmessage.c: (gst_message_new),
3517         (gst_message_new_state_changed):
3518         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3519         (gst_pad_set_checkgetrange_function),
3520         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
3521         (gst_pad_set_caps), (gst_pad_check_pull_range),
3522         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
3523         * gst/gstpad.h:
3524         * gst/gsttypefind.c: (gst_type_find_register):
3525         Make gst_caps_replace() work like other _replace() functions.
3526         Use _caps_replace() where possible.
3527         Make sure _message_new() initialises its field.
3528         Add gst_static_pad_template_get_caps()
3529
3530
3531 2005-04-18  Andy Wingo  <wingo@pobox.com>
3532
3533         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
3534         on the peer, not the pad. I think that was a typo. Pass an extra
3535         arg to see if random access is possible. Activate the pads as
3536         PULL_RANGE if possible.
3537
3538         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
3539
3540         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
3541         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
3542         to PROP_....
3543
3544 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3545
3546         * docs/faq/using.xml:
3547           Add note on gstreamer-properties (#154996).
3548
3549 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3550
3551         * docs/random/bbb/optional-properties:
3552           Some analysis on optional properties.
3553
3554 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3555
3556         * docs/gst/tmpl/gstelementfactory.sgml:
3557         * gst/gstelement.h:
3558         * gst/gstelementfactory.c: (gst_element_factory_init),
3559         (gst_element_factory_cleanup), (gst_element_register),
3560         (__gst_element_factory_add_static_pad_template),
3561         (gst_element_factory_get_static_pad_templates),
3562         (gst_element_factory_can_src_caps),
3563         (gst_element_factory_can_sink_caps):
3564         * gst/registries/Makefile.am:
3565         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
3566         (gst_xml_registry_class_init), (gst_xml_registry_init),
3567         (gst_xml_registry_new), (gst_xml_registry_set_property),
3568         (gst_xml_registry_get_property), (get_time), (make_dir),
3569         (gst_xml_registry_get_perms_func),
3570         (plugin_times_older_than_recurse), (plugin_times_older_than),
3571         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
3572         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
3573         (add_to_char_array), (read_string), (read_uint), (read_enum),
3574         (load_pad_template), (load_feature), (load_plugin), (load_paths),
3575         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
3576         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
3577         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
3578         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
3579         (gst_xml_registry_rebuild):
3580         * gst/registries/gstlibxmlregistry.h:
3581         * tools/gst-compprep.c: (main):
3582         * tools/gst-inspect.c: (print_pad_templates_info):
3583         * tools/gst-xmlinspect.c: (print_element_info):
3584           Use libxml2 for registry parsing, use staticpadtemplates in
3585           elementfactories. Makes gst_init() +/- 10x faster.
3586
3587 2005-04-12  Wim Taymans  <wim@fluendo.com>
3588
3589         * gst/base/Makefile.am:
3590         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3591         (gst_basesink_pad_getcaps), (gst_basesink_init),
3592         (gst_basesink_event), (gst_basesink_change_state):
3593         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3594         (gst_basesrc_init), (gst_basesrc_query),
3595         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3596         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3597         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3598         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3599         (gst_basesrc_stop), (gst_basesrc_activate),
3600         (gst_basesrc_change_state):
3601         * gst/base/gsttypefindhelper.c: (helper_find_peek),
3602         (helper_find_suggest), (gst_type_find_helper):
3603         * gst/base/gsttypefindhelper.h:
3604         * gst/elements/Makefile.am:
3605         * gst/elements/gstelements.c:
3606         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3607         (gst_fakesink_get_times), (gst_fakesink_event),
3608         (gst_fakesink_preroll), (gst_fakesink_render):
3609         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3610         (gst_fakesrc_init), (gst_fakesrc_event_handler),
3611         (gst_fakesrc_get_property), (gst_fakesrc_create),
3612         (gst_fakesrc_start), (gst_fakesrc_stop):
3613         * gst/elements/gstfakesrc.h:
3614         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
3615         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3616         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3617         (gst_filesrc_create_read), (gst_filesrc_create),
3618         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
3619         (gst_filesrc_start):
3620         * gst/elements/gsttypefindelement.c:
3621         (gst_type_find_element_have_type), (gst_type_find_element_init),
3622         (start_typefinding), (stop_typefinding), (push_buffer_store),
3623         (gst_type_find_element_handle_event),
3624         (gst_type_find_element_chain),
3625         (gst_type_find_element_checkgetrange),
3626         (gst_type_find_element_getrange), (do_typefind),
3627         (gst_type_find_element_activate),
3628         (gst_type_find_element_change_state):
3629         * gst/elements/gsttypefindelement.h:
3630         * gst/gstpipeline.c: (pipeline_bus_handler):
3631         Added typefind helper.
3632         Small preroll fix in the base sink.
3633         Disable typefind code in basesrc.
3634         Crude port of typefindelement.
3635         Fakesrc cleanups.
3636
3637
3638 2005-04-11  Wim Taymans  <wim@fluendo.com>
3639
3640         * check/gst/gstbus.c: (gstbus_suite):
3641         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
3642         * check/gstcheck.h:
3643           Fix up the timeout so that the test does not fail.
3644
3645 2005-04-06  Wim Taymans  <wim@fluendo.com>
3646
3647         * gst/base/README:
3648         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3649         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
3650         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
3651         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
3652         (gst_basesrc_check_get_range), (gst_basesrc_loop),
3653         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
3654         (gst_basesrc_stop), (gst_basesrc_activate),
3655         (gst_basesrc_change_state), (basesrc_find_peek),
3656         (basesrc_find_suggest), (gst_basesrc_type_find):
3657         * gst/base/gstbasesrc.h:
3658         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
3659         (gst_filesrc_class_init), (gst_filesrc_init),
3660         (gst_filesrc_finalize), (gst_filesrc_set_location),
3661         (gst_filesrc_set_property), (gst_filesrc_get_property),
3662         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
3663         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
3664         (gst_filesrc_create_read), (gst_filesrc_create),
3665         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
3666         * gst/elements/gstfilesrc.h:
3667         * gst/gstelement.c: (gst_element_get_state_func),
3668         (gst_element_lost_state), (gst_element_pads_activate):
3669         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3670         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
3671         (gst_pad_pull_range):
3672         * gst/gstpad.h:
3673         More work on the generic source base class, implement seeking,
3674         query.
3675         Make filesrc extend the base source class.
3676         Added gst_pad_set_checkgetrange_function to GstPad.
3677
3678 2005-04-06  Andy Wingo  <wingo@pobox.com>
3679
3680         * pkgconfig/gstreamer-base.pc.in:
3681         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
3682
3683         * pkgconfig/Makefile.am:
3684         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
3685
3686 2005-04-04  Wim Taymans  <wim@fluendo.com>
3687
3688         * gst/base/Makefile.am:
3689         * gst/base/README:
3690         * gst/base/gstbasesink.c: (gst_basesink_base_init),
3691         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3692         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3693         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
3694         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
3695         (gst_basesrc_base_init), (gst_basesrc_class_init),
3696         (gst_basesrc_init), (gst_basesrc_get_formats),
3697         (gst_basesrc_get_query_types), (gst_basesrc_query),
3698         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
3699         (gst_basesrc_set_property), (gst_basesrc_get_property),
3700         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
3701         (gst_basesrc_loop), (gst_basesrc_activate),
3702         (gst_basesrc_change_state):
3703         * gst/base/gstbasesrc.h:
3704         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
3705         (gst_fakesrc_class_init), (gst_fakesrc_init),
3706         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
3707         (gst_fakesrc_get_property), (gst_fakesrc_create):
3708         * gst/elements/gstfakesrc.h:
3709         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
3710         (gst_filesrc_open_file), (gst_filesrc_loop),
3711         (gst_filesrc_activate), (filesrc_find_peek),
3712         (gst_filesrc_type_find):
3713         Made base source class, make fakesrc extend it.
3714         Add comments to basesink class.
3715         Some filesrc cleanup.
3716
3717 2005-03-31  David Schleef  <ds@schleef.org>
3718
3719         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
3720         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
3721         expected to link against libgstreamer.
3722         * gst/base/Makefile.am: link against libgstreamer
3723         * gst/elements/Makefile.am: same
3724
3725 2005-03-31  Andy Wingo  <wingo@pobox.com>
3726
3727         * tests/instantiate/Makefile.am:
3728         * tests/instantiate/caps.c: Add test to test speed of caps copy
3729         and free.
3730
3731         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
3732         GMemChunk to be fair.
3733
3734         * gst/gsttrashstack.h: Remove warning about using the fallback
3735         trash stack implementation, it's still faster than malloc.
3736
3737 2005-03-30  Andy Wingo  <wingo@pobox.com>
3738
3739         * tests/complexity.c: Add a copyright.
3740
3741 2005-03-31  Wim Taymans  <wim@fluendo.com>
3742
3743         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
3744         (gst_base_transform_class_init), (gst_base_transform_init),
3745         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
3746         (gst_base_transform_get_property),
3747         (gst_base_transform_sink_activate),
3748         (gst_base_transform_src_activate),
3749         (gst_base_transform_change_state):
3750         * gst/base/gstbasetransform.h:
3751         * gst/elements/gstidentity.c: (gst_identity_class_init),
3752         (gst_identity_event), (gst_identity_check_perfect),
3753         (gst_identity_transform), (gst_identity_start),
3754         (gst_identity_stop):
3755         Added start/stop methods to transform base class so subclasses 
3756         don't need to deal with state changes even.
3757
3758 2005-03-31  Wim Taymans  <wim@fluendo.com>
3759
3760         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
3761         (gst_event_new_discontinuous), (gst_event_discont_get_value):
3762         * gst/gstevent.h:
3763         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3764         (gst_pad_pull_range):
3765         Added rate to the discont event to prepare for variable speed
3766         and reverse playback.
3767
3768 2005-03-29  David Schleef  <ds@schleef.org>
3769
3770         * configure.ac:
3771         * testsuite/trigger/Makefile.am:
3772         * testsuite/trigger/trigger.c: A little example program to show
3773         how trigger-based elements can work.
3774
3775 2005-03-29  Wim Taymans  <wim@fluendo.com>
3776
3777         * gst/base/Makefile.am:
3778         * gst/base/README:
3779         * gst/base/gstbasesink.c: (gst_basesink_get_type),
3780         (gst_basesink_base_init), (gst_basesink_class_init),
3781         (gst_basesink_pad_getcaps), (gst_basesink_init),
3782         (gst_basesink_activate), (gst_basesink_change_state):
3783         * gst/base/gstbasesink.h:
3784         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
3785         (gst_base_transform_base_init), (gst_base_transform_finalize),
3786         (gst_base_transform_class_init), (gst_base_transform_init),
3787         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
3788         (gst_base_transform_event), (gst_base_transform_getrange),
3789         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
3790         (gst_base_transform_set_property),
3791         (gst_base_transform_get_property),
3792         (gst_base_transform_sink_activate),
3793         (gst_base_transform_src_activate),
3794         (gst_base_transform_change_state):
3795         * gst/base/gstbasetransform.h:
3796         * gst/elements/gstidentity.c: (gst_identity_finalize),
3797         (gst_identity_class_init), (gst_identity_init),
3798         (gst_identity_event), (gst_identity_check_perfect),
3799         (gst_identity_transform), (gst_identity_set_property),
3800         (gst_identity_get_property), (gst_identity_change_state):
3801         * gst/elements/gstidentity.h:
3802         * gst/gstelement.c: (gst_element_get_state_func),
3803         (gst_element_lost_state), (gst_element_pads_activate):
3804         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3805         (gst_pad_check_pull_range), (gst_pad_pull_range):
3806         * gst/gstpad.h:
3807         Simplify pad activation.
3808         Added function to check if pull_range can be performed.
3809         Error out when pulling inactive or flushing pads.
3810         Removed const from refcounted types as it does not make sense.
3811         Simplify pad templates in basesink
3812         Added base class for simple 1-to-1 transforms.
3813         Make identity subclass the base transform.
3814
3815 2005-03-29  Andy Wingo  <wingo@pobox.com>
3816
3817         * docs/libs/gstreamer-libs-overrides.txt: 
3818         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
3819         really don't understand what's going on, but like whatever. I want
3820         green buildbot!
3821
3822         * docs/gst/Makefile.am:
3823         * docs/libs/Makefile.am: Dist the overrides files.
3824
3825         * check/Makefile.am (clean-local): Remove .libs directories.
3826
3827         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
3828         elements to EXTRA_DIST, so po/ files are happy.
3829
3830         * po/POTFILES.in: Er, remove it here.
3831
3832         * po/POTFILES: Remove gstspider.c.
3833
3834         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
3835
3836         * docs/libs/gstreamer-libs-docs.sgml: 
3837         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
3838         bytestream.
3839
3840         * tests/complexity.c (main): Set the length of the preroll queue
3841         on the sinks to prevent a lockup.
3842
3843         * libs/gst/dataprotocol/Makefile.am: 
3844         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
3845         the same as the one in check/gst-libs/gdp.c.
3846
3847         * po/, docs/gst/: Commit automatic changes to docs and po files.
3848
3849         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
3850         the versioned libgstbase.
3851
3852         * check/Makefile.am: Depend on an unversioned gst-register, seems
3853         to make autoconf happier.
3854
3855         * gst/base/Makefile.am: Make libgstbase a versioned lib.
3856
3857 2005-03-28  Wim Taymans  <wim@fluendo.com>
3858
3859         * configure.ac:
3860         * docs/design/part-gstelement.txt:
3861         * docs/design/part-negotiation.txt:
3862         * docs/design/part-preroll.txt:
3863         * docs/design/part-scheduling.txt:
3864         * docs/design/part-states.txt:
3865         * gst/Makefile.am:
3866         * gst/base/Makefile.am:
3867         * gst/base/README:
3868         * gst/base/gstbasesink.c: (gst_basesink_get_template),
3869         (gst_basesink_base_init), (gst_basesink_class_init),
3870         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
3871         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
3872         (gst_basesink_set_pad_functions),
3873         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
3874         (gst_basesink_set_property), (gst_basesink_get_property),
3875         (gst_base_sink_get_template), (gst_base_sink_get_caps),
3876         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
3877         (gst_basesink_preroll_queue_push),
3878         (gst_basesink_preroll_queue_empty),
3879         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
3880         (gst_basesink_event), (gst_basesink_get_times),
3881         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
3882         (gst_basesink_chain_unlocked), (gst_basesink_chain),
3883         (gst_basesink_loop), (gst_basesink_activate),
3884         (gst_basesink_change_state):
3885         * gst/base/gstbasesink.h:
3886         * gst/elements/Makefile.am:
3887         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
3888         (gst_fakesink_class_init), (gst_fakesink_init),
3889         (gst_fakesink_set_property), (gst_fakesink_get_property),
3890         (gst_fakesink_get_times), (gst_fakesink_event),
3891         (gst_fakesink_preroll), (gst_fakesink_render),
3892         (gst_fakesink_change_state):
3893         * gst/elements/gstfakesink.h:
3894         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3895         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
3896         * gst/gstelement.c: (gst_element_add_pad),
3897         (gst_element_get_state_func), (gst_element_abort_state),
3898         (gst_element_commit_state), (gst_element_lost_state),
3899         (gst_element_set_state), (gst_element_pads_activate):
3900         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
3901         * gst/gstpipeline.c: (gst_pipeline_send_event),
3902         (gst_pipeline_change_state):
3903         Added state change code.
3904         Added/updated docs.
3905         Added sink base class, make fakesink extend the base class.
3906         Small cleanups in GstPipeline.
3907
3908 2005-03-26  David Schleef  <ds@schleef.org>
3909
3910         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
3911         is broken and should be implemented in a different library.
3912         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
3913         * gst/gst.h: remove gstcpu.h
3914         * gst/gstcpu.c: remove
3915         * gst/gstcpu.h: remove
3916         * gst/Makefile.am.future: Remove this file.  It's ancient.
3917
3918 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3919
3920         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
3921         (gst_bin_send_event):
3922           Add default event/set_manager handlers. The set_manager handler
3923           takes care that the manager is distributed over kids that were
3924           already in the bin before the manager was set. The event handler
3925           is a utility virtual function that sends the event over all sinks,
3926           so that gst_element_send_event (bin, event); has the expected
3927           behaviour.
3928         * gst/gstpad.c: (gst_pad_event_default):
3929           Re-install default event handling for discontinuities, so that
3930           seeking works without requiring hacks in applications or extra
3931           code in sinks.
3932         * gst/gstpipeline.c: (gst_pipeline_class_init),
3933         (gst_pipeline_send_event):
3934           Half hack, half utility: set a pipeline to PAUSED for seek events,
3935           since that is the only way we can guarantee a/v sync. Means that
3936           you can do gst_element_seek (pipeline, method, pos); on a pipeline
3937           and it "just works".
3938
3939 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3940
3941         * gst/gstpipeline.c: (gst_pipeline_use_clock):
3942           Lock/unlock mismatch.
3943
3944 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
3945
3946         * docs/faq/gst-uninstalled:
3947           add gst-plugins-base
3948         * docs/gst/Makefile.am:
3949           don't error out until docs are fixed
3950         * docs/gst/gstreamer.types:
3951           remove thread
3952
3953 2005-03-22  Wim Taymans  <wim@fluendo.com>
3954
3955         * check/Makefile.am:
3956         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
3957         * gst/gststructure.c: (gst_structure_set_valist),
3958         (gst_structure_copy_conditional):
3959         Activated more tests.
3960         Added message test.
3961         Added G_TYPE_POINTER to GstStructure.
3962         
3963
3964 2005-03-22  Wim Taymans  <wim@fluendo.com>
3965
3966         * docs/design/part-TODO.txt:
3967         * docs/design/part-events.txt:
3968         * docs/design/part-gstbin.txt:
3969         * docs/design/part-gstbus.txt:
3970         * docs/design/part-gstpipeline.txt:
3971         * docs/design/part-messages.txt:
3972         * gst/gstbus.c:
3973         * gst/gstmessage.c:
3974         Docs updates
3975
3976 2005-03-21  Wim Taymans  <wim@fluendo.com>
3977
3978         * gst/gstbus.c: (gst_bus_post):
3979         Fix copy-and-paste error.
3980
3981 2005-03-21  Wim Taymans  <wim@fluendo.com>
3982
3983         * check/Makefile.am:
3984         * gst/Makefile.am:
3985         * gst/elements/Makefile.am:
3986         * gst/elements/gstelements.c:
3987         * gst/elements/gstfakesink.c: (gst_fakesink_init),
3988         (gst_fakesink_event), (gst_fakesink_chain):
3989         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3990         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
3991         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
3992         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
3993         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
3994         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
3995         (gst_fakesrc_loop), (gst_fakesrc_activate),
3996         (gst_fakesrc_change_state):
3997         * gst/elements/gstfakesrc.h:
3998         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
3999         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4000         (gst_filesrc_open_file), (gst_filesrc_loop),
4001         (gst_filesrc_activate), (gst_filesrc_change_state),
4002         (filesrc_find_peek), (filesrc_find_suggest),
4003         (gst_filesrc_type_find):
4004         * gst/elements/gstidentity.c: (gst_identity_finalize),
4005         (gst_identity_class_init), (gst_identity_init),
4006         (gst_identity_proxy_getcaps), (identity_queue_push),
4007         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4008         (gst_identity_getrange), (gst_identity_chain),
4009         (gst_identity_sink_loop), (gst_identity_src_loop),
4010         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4011         (gst_identity_set_property), (gst_identity_get_property),
4012         (gst_identity_change_state):
4013         * gst/elements/gstidentity.h:
4014         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4015         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4016         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4017         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4018         (gst_tee_sink_activate):
4019         * gst/elements/gsttee.h:
4020         * gst/gst.c: (gst_register_core_elements), (init_post):
4021         * gst/gst.h:
4022         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4023         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4024         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4025         (gst_bin_change_state):
4026         * gst/gstbin.h:
4027         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4028         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4029         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4030         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4031         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4032         (bus_watch_callback), (bus_watch_destroy),
4033         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4034         (poll_timeout), (gst_bus_poll):
4035         * gst/gstbus.h:
4036         * gst/gstcaps.h:
4037         * gst/gstdata.h:
4038         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4039         (gst_element_post_message), (gst_element_message_full),
4040         (gst_element_get_state_func), (gst_element_get_state),
4041         (gst_element_abort_state), (gst_element_commit_state),
4042         (gst_element_lost_state), (gst_element_set_state),
4043         (gst_element_pads_activate), (gst_element_change_state),
4044         (gst_element_dispose), (gst_element_set_manager_func),
4045         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4046         (gst_element_set_manager), (gst_element_get_manager),
4047         (gst_element_set_bus), (gst_element_get_bus),
4048         (gst_element_set_scheduler), (gst_element_get_scheduler):
4049         * gst/gstelement.h:
4050         * gst/gstevent.c: (gst_event_new_segment_seek),
4051         (gst_event_new_flush):
4052         * gst/gstevent.h:
4053         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4054         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4055         (gst_message_new_eos), (gst_message_new_error),
4056         (gst_message_new_warning), (gst_message_new_tag),
4057         (gst_message_new_state_changed), (gst_message_new_application),
4058         (gst_message_get_structure), (gst_message_parse_tag),
4059         (gst_message_parse_state_changed), (gst_message_parse_error),
4060         (gst_message_parse_warning):
4061         * gst/gstmessage.h:
4062         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4063         (gst_real_pad_set_property), (gst_pad_set_active),
4064         (gst_pad_is_active), (gst_pad_set_blocked_async),
4065         (gst_pad_set_blocked), (gst_pad_is_blocked),
4066         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4067         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4068         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4069         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4070         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4071         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4072         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4073         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4074         (gst_pad_set_caps), (gst_pad_configure_sink),
4075         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4076         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4077         (gst_real_pad_dispose), (gst_real_pad_finalize),
4078         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4079         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4080         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4081         * gst/gstpad.h:
4082         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4083         (pipeline_bus_handler), (gst_pipeline_change_state),
4084         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4085         * gst/gstpipeline.h:
4086         * gst/gstprobe.h:
4087         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4088         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4089         (gst_queue_link_src), (gst_queue_bufferalloc),
4090         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4091         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4092         (gst_queue_loop), (gst_queue_handle_src_event),
4093         (gst_queue_handle_src_query), (gst_queue_src_activate),
4094         (gst_queue_change_state):
4095         * gst/gstqueue.h:
4096         * gst/gstscheduler.c: (gst_scheduler_init),
4097         (gst_scheduler_dispose), (gst_scheduler_create_task),
4098         (gst_scheduler_factory_create):
4099         * gst/gstscheduler.h:
4100         * gst/gststructure.c: (gst_structure_get_type),
4101         (gst_structure_copy_conditional):
4102         * gst/gststructure.h:
4103         * gst/gsttaginterface.h:
4104         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4105         (gst_task_init), (gst_task_dispose), (gst_task_create),
4106         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4107         (gst_task_pause):
4108         * gst/gsttask.h:
4109         * gst/gstthread.c:
4110         * gst/gstthread.h:
4111         * gst/gsttypes.h:
4112         * gst/schedulers/Makefile.am:
4113         * gst/schedulers/cothreads_compat.h:
4114         * gst/schedulers/entryscheduler.c:
4115         * gst/schedulers/faircothreads.c:
4116         * gst/schedulers/faircothreads.h:
4117         * gst/schedulers/fairscheduler.c:
4118         * gst/schedulers/gstbasicscheduler.c:
4119         * gst/schedulers/gstoptimalscheduler.c:
4120         * gst/schedulers/gthread-cothreads.h:
4121         * gst/schedulers/threadscheduler.c:
4122         (gst_thread_scheduler_task_get_type),
4123         (gst_thread_scheduler_task_class_init),
4124         (gst_thread_scheduler_task_init),
4125         (gst_thread_scheduler_task_start),
4126         (gst_thread_scheduler_task_stop),
4127         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4128         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4129         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4130         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4131         (plugin_init):
4132         * libs/gst/Makefile.am:
4133         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4134         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4135         (gst_file_pad_parent_set):
4136         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4137         (gst_dp_event_from_packet):
4138         * tests/complexity.c: (main):
4139         * tests/mass_elements.c: (main):
4140         * testsuite/states/locked.c: (message_received), (main):
4141         * testsuite/states/parent.c: (main):
4142         * tools/gst-inspect.c: (print_element_flag_info),
4143         (print_implementation_info), (print_pad_info):
4144         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4145         (main):
4146         * tools/gst-md5sum.c: (event_loop), (main):
4147         * tools/gst-typefind.c: (main):
4148         * tools/gst-xmlinspect.c: (print_element_info):
4149         Next big merge.
4150         Added GstBus for mainloop integration.
4151         Added GstMessage for sending notifications on the bus.
4152         Added GstTask as an abstraction for pipeline entry points.
4153         Removed GstThread.
4154         Removed Schedulers.
4155         Simplified GstQueue for multithreaded core.
4156         Made _link threadsafe, removed old capsnego.
4157         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4158         Added pad blocking functions.
4159         Reworked scheduling functions in GstPad to prepare for
4160         scheduling updates soon.
4161         Moved events out of data stream.
4162         Simplified GstEvent types.
4163         Added return values to push/pull.
4164         Removed clocking from GstElement.
4165         Added prototypes for state change function for next merge.
4166         Removed iterate from bins and state change management.
4167         Fixed some elements, disabled others for now.
4168         Fixed -inspect and -launch.
4169         Added check for GstBus.
4170
4171 2005-03-10  Wim Taymans  <wim@fluendo.com>
4172
4173         * docs/design/part-MT-refcounting.txt:
4174         * docs/design/part-clocks.txt:
4175         * docs/design/part-gstelement.txt:
4176         * docs/design/part-gstobject.txt:
4177         * docs/design/part-standards.txt:
4178         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4179         (gst_bin_remove_func), (gst_bin_remove):
4180         * gst/gstbin.h:
4181         * gst/gstbuffer.c:
4182         * gst/gstcaps.h:
4183         * testsuite/clock/clock1.c: (main):
4184         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4185         (main):
4186         * testsuite/dlopen/loadgst.c: (do_test):
4187         * testsuite/refcounting/bin.c: (add_remove_test1),
4188         (add_remove_test2), (main):
4189         * testsuite/refcounting/element.c: (main):
4190         * testsuite/refcounting/element_pad.c: (main):
4191         * testsuite/refcounting/pad.c: (main):
4192         * tools/gst-launch.c: (sigint_handler_sighandler):
4193         * tools/gst-typefind.c: (main):
4194         Doc updates.
4195         Added doc about clock.
4196         removed gst_bin_iterate_recurse_up(), marked methods
4197         for removal.
4198         Fix more testsuites.
4199
4200 2005-03-09  Wim Taymans  <wim@fluendo.com>
4201
4202         * gst/gstpad.c: (gst_pad_get_direction),
4203         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4204         (gst_pad_collect_valist):
4205         * testsuite/bins/interface.c: (main):
4206         * testsuite/caps/audioscale.c: (test_caps):
4207         * testsuite/caps/caps.c: (test1), (test2), (test3):
4208         * testsuite/caps/deserialize.c: (main):
4209         * testsuite/caps/enumcaps.c: (main):
4210         * testsuite/caps/filtercaps.c: (main):
4211         * testsuite/caps/intersect2.c: (main):
4212         * testsuite/caps/random.c: (main):
4213         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4214         * testsuite/caps/sets.c: (check_caps):
4215         * testsuite/caps/simplify.c: (check_caps), (main):
4216         * testsuite/caps/subtract.c: (check_caps):
4217         Fix _pad_get_direction wrt ghostpads.
4218         Fix caps testsuite.
4219
4220 2005-03-09  Wim Taymans  <wim@fluendo.com>
4221
4222         * check/Makefile.am:
4223         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
4224         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
4225         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
4226         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
4227         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
4228         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
4229         (gst_bin_remove), (gst_bin_iterate_recurse_up),
4230         (bin_element_is_sink), (gst_bin_iterate_sinks),
4231         (gst_bin_iterate_all_by_interface):
4232         * gst/gstbin.h:
4233         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
4234         (gst_element_change_state), (gst_element_dispose),
4235         (gst_element_finalize), (gst_element_set_loop_function):
4236         * gst/gstelement.h:
4237         * gst/gstiterator.c: (find_custom_fold_func):
4238         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4239         (gst_pad_collectv), (gst_pad_collect_valist),
4240         (gst_pad_template_new):
4241         * gst/gstpipeline.c: (gst_pipeline_class_init),
4242         (gst_pipeline_dispose), (gst_pipeline_set_property),
4243         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
4244         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
4245         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
4246         * gst/gstutils.h:
4247         * gst/schedulers/entryscheduler.c:
4248         * gst/schedulers/gstbasicscheduler.c:
4249         (gst_basic_scheduler_cothreaded_chain),
4250         (gst_basic_scheduler_chain_add_element):
4251         * testsuite/bins/interface.c: (main):
4252         Added GstBin test.
4253         Added GstSystemClock test.
4254         Implemented clock distribution code in GstBin.
4255         Implemented iterate sinks method for future use.
4256         Rearranged gstelement.h
4257         Fix GstIterator comparison bug.
4258         Moved some code to GstPipeline, mostly clocking related.
4259
4260 2005-03-09  Wim Taymans  <wim@fluendo.com>
4261
4262         * configure.ac:
4263         * gst/gst_private.h:
4264         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4265         (gst_bin_remove_func), (gst_bin_remove),
4266         (gst_bin_get_by_name_recurse_up):
4267         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
4268         (gst_clock_id_compare_func), (gst_clock_id_wait),
4269         (gst_clock_id_wait_async), (gst_clock_init),
4270         (gst_clock_adjust_unlocked), (gst_clock_get_time):
4271         * gst/gstelement.h:
4272         * gst/gstinfo.c: (_gst_debug_init):
4273         * gst/gstobject.h:
4274         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
4275         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
4276         * gst/gstpad.h:
4277         Bump version number, we're now 0.9.0
4278         Add future debugging category.
4279         Fix NULL _unref() in _get_by_name_recurse_up
4280         Rearrange gstpad.h.
4281         Update some docs.
4282
4283 2005-03-08  Wim Taymans  <wim@fluendo.com>
4284
4285         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
4286         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4287         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
4288         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
4289         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
4290         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
4291         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
4292         * gst/elements/gstidentity.c: (gst_identity_class_init):
4293         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
4294         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
4295         * gst/elements/gstshaper.c: (gst_shaper_class_init):
4296         * gst/elements/gststatistics.c: (gst_statistics_class_init):
4297         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
4298         (gst_tee_link):
4299         * gst/gstelement.c: (gst_element_class_init),
4300         (gst_element_base_class_init), (gst_element_init),
4301         (gst_element_get_random_pad), (gst_element_wait_state_change),
4302         (gst_element_change_state), (gst_element_dispose),
4303         (gst_element_finalize), (gst_element_set_loop_function):
4304         * gst/gstelement.h:
4305         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
4306         * gst/gstthread.c: (gst_thread_class_init),
4307         (gst_thread_release_children_locks), (gst_thread_change_state):
4308         * gst/schedulers/gstbasicscheduler.c:
4309         (gst_basic_scheduler_loopfunc_wrapper),
4310         (gst_basic_scheduler_chain_wrapper),
4311         (gst_basic_scheduler_src_wrapper),
4312         (gst_basic_scheduler_remove_element):
4313         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
4314         Remove threadsafe properties. Fix elements because GObject
4315         complains when installing a property before declaring a
4316         set/get_property handler.
4317         Rearrange gstelement.h file, use STATE macros for state locks.
4318         Free mutexes in the finalize method instead of dispose.
4319
4320 2005-03-08  Wim Taymans  <wim@fluendo.com>
4321
4322         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4323         * gst/gstthread.c: (gst_thread_release_children_locks):
4324         Added parentage check.
4325         Fix build og GstThread again.
4326
4327 2005-03-08  Wim Taymans  <wim@fluendo.com>
4328
4329         * docs/design/part-MT-refcounting.txt:
4330         * docs/design/part-conventions.txt:
4331         * docs/design/part-gstobject.txt:
4332         * docs/design/part-relations.txt:
4333         * docs/design/part-standards.txt:
4334         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4335         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
4336         (gst_bin_get_by_name), (gst_bin_get_by_interface),
4337         (gst_bin_iterate_all_by_interface):
4338         * gst/gstbuffer.h:
4339         * gst/gstclock.h:
4340         * gst/gstelement.c: (gst_element_class_init),
4341         (gst_element_change_state), (gst_element_set_loop_function):
4342         * gst/gstelement.h:
4343         * gst/gstiterator.c:
4344         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
4345         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
4346         (gst_object_dispatch_properties_changed), (gst_object_set_name),
4347         (gst_object_set_parent), (gst_object_unparent),
4348         (gst_object_check_uniqueness):
4349         * gst/gstobject.h:
4350         Docs updates, clean up some headers.
4351
4352 2005-03-07  Wim Taymans  <wim@fluendo.com>
4353
4354         * check/.cvsignore:
4355         * check/Makefile.am:
4356         * check/gst-libs/.cvsignore:
4357         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
4358         * check/gst/.cvsignore:
4359         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
4360         (START_TEST), (gstbus_suite), (main):
4361         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
4362         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
4363         (gst_data_suite), (main):
4364         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
4365         (add_fold_func), (gstiterator_suite), (main):
4366         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
4367         (thread_name_object), (thread_name_object_default),
4368         (gst_object_name_compare), (gst_object_suite), (main):
4369         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
4370         (gst_pad_suite), (main):
4371         * check/gstcheck.c: (gst_check_log_message_func),
4372         (gst_check_log_critical_func), (gst_check_init):
4373         * check/gstcheck.h:
4374         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
4375         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
4376         Added checks.
4377
4378 2005-03-07  Wim Taymans  <wim@fluendo.com>
4379
4380         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
4381         (gst_list_iterator_next), (gst_list_iterator_resync),
4382         (gst_list_iterator_free), (gst_iterator_new_list),
4383         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
4384         (gst_iterator_free), (gst_iterator_push), (filter_next),
4385         (filter_resync), (filter_uninit), (filter_free),
4386         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
4387         (gst_iterator_foreach), (find_custom_fold_func),
4388         (gst_iterator_find_custom):
4389         * gst/gstiterator.h:
4390         Added missing files.
4391
4392 2005-03-07  Wim Taymans  <wim@fluendo.com>
4393
4394         * Makefile.am:
4395         * configure.ac:
4396         * docs/design/part-MT-refcounting.txt:
4397         * docs/design/part-conventions.txt:
4398         * docs/design/part-gstobject.txt:
4399         * docs/design/part-relations.txt:
4400         * examples/mixer/mixer.c: (main):
4401         * examples/thread/thread.c: (eos), (main):
4402         * gst/Makefile.am:
4403         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
4404         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
4405         (gst_spider_plug_from_srcpad):
4406         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
4407         (gst_spider_identity_change_state),
4408         (gst_spider_identity_sink_loop_type_finding):
4409         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
4410         * gst/elements/gstidentity.c: (gst_identity_init):
4411         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
4412         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
4413         * gst/elements/gsttypefindelement.c: (free_entry):
4414         * gst/gst.c:
4415         * gst/gst.h:
4416         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
4417         (gst_bin_set_clock_func), (gst_bin_auto_clock),
4418         (gst_bin_set_index), (gst_bin_set_element_sched),
4419         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
4420         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
4421         (gst_bin_iterate_elements), (iterate_child_recurse),
4422         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
4423         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
4424         (compare_interface), (gst_bin_get_by_interface),
4425         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
4426         * gst/gstbin.h:
4427         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
4428         (gst_buffer_default_free), (gst_buffer_default_copy),
4429         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
4430         (gst_buffer_create_sub):
4431         * gst/gstbuffer.h:
4432         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
4433         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
4434         (gst_caps_unref), (gst_static_caps_get),
4435         (gst_caps_remove_and_get_structure), (gst_caps_append),
4436         (gst_caps_append_structure), (gst_caps_remove_structure),
4437         (gst_caps_copy_nth), (gst_caps_set_simple),
4438         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
4439         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
4440         (gst_caps_structure_intersect_field), (gst_caps_intersect),
4441         (gst_caps_structure_subtract_field), (gst_caps_subtract),
4442         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
4443         (gst_caps_structure_figure_out_union),
4444         (gst_caps_switch_structures), (gst_caps_do_simplify),
4445         (gst_caps_replace), (gst_caps_from_string),
4446         (gst_caps_copy_conditional):
4447         * gst/gstcaps.h:
4448         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
4449         (_gst_clock_id_free), (gst_clock_id_unref),
4450         (gst_clock_id_compare_func), (gst_clock_id_wait),
4451         (gst_clock_id_wait_async), (gst_clock_class_init),
4452         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
4453         (gst_clock_get_time), (gst_clock_set_time_adjust),
4454         (gst_clock_set_property), (gst_clock_get_property):
4455         * gst/gstclock.h:
4456         * gst/gstcompat.h:
4457         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
4458         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
4459         * gst/gstdata.h:
4460         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4461         (gst_element_requires_clock), (gst_element_provides_clock),
4462         (gst_element_set_clock), (gst_element_clock_wait),
4463         (gst_element_wait), (gst_element_set_time_delay),
4464         (gst_element_is_indexable), (gst_element_add_pad),
4465         (gst_element_add_ghost_pad), (gst_element_remove_pad),
4466         (pad_compare_name), (gst_element_get_static_pad),
4467         (gst_element_request_pad), (gst_element_get_request_pad),
4468         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
4469         (gst_element_class_get_pad_template_list),
4470         (gst_element_class_get_pad_template), (gst_element_error_func),
4471         (gst_element_get_random_pad), (gst_element_get_event_masks),
4472         (gst_element_send_event), (gst_element_seek),
4473         (gst_element_get_query_types), (gst_element_query),
4474         (gst_element_get_formats), (gst_element_convert),
4475         (gst_element_is_locked_state), (gst_element_set_locked_state),
4476         (gst_element_sync_state_with_parent), (gst_element_change_state),
4477         (gst_element_finalize), (gst_element_yield),
4478         (gst_element_interrupt), (gst_element_set_scheduler),
4479         (gst_element_get_scheduler), (gst_element_set_loop_function):
4480         * gst/gstelement.h:
4481         * gst/gstevent.h:
4482         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
4483         (gst_format_get_by_nick), (gst_format_get_details),
4484         (gst_format_iterate_definitions):
4485         * gst/gstformat.h:
4486         * gst/gstindex.c: (gst_index_gtype_resolver):
4487         * gst/gstinfo.c:
4488         * gst/gstinfo.h:
4489         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
4490         (gst_mem_chunk_free):
4491         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
4492         (gst_object_ref), (gst_object_unref), (gst_object_sink),
4493         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
4494         (gst_object_dispatch_properties_changed),
4495         (gst_object_set_name_default), (gst_object_set_name),
4496         (gst_object_get_name), (gst_object_set_name_prefix),
4497         (gst_object_get_name_prefix), (gst_object_set_parent),
4498         (gst_object_get_parent), (gst_object_unparent),
4499         (gst_object_check_uniqueness), (gst_object_save_thyself),
4500         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
4501         (gst_object_set_property), (gst_object_get_property),
4502         (gst_object_get_path_string):
4503         * gst/gstobject.h:
4504         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
4505         (gst_real_pad_init), (gst_real_pad_get_property),
4506         (gst_pad_custom_new), (gst_pad_get_direction),
4507         (gst_pad_set_active), (gst_pad_is_active),
4508         (gst_pad_set_event_function), (gst_pad_is_linked),
4509         (gst_pad_link_free), (gst_pad_link_intersect),
4510         (gst_pad_link_fixate), (gst_pad_set_caps),
4511         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
4512         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
4513         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
4514         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
4515         (gst_pad_get_caps), (gst_pad_peer_get_caps),
4516         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
4517         (gst_pad_realize), (gst_pad_get_allowed_caps),
4518         (gst_real_pad_dispose), (gst_real_pad_finalize),
4519         (gst_pad_collectv), (gst_pad_collect_valist),
4520         (gst_pad_template_dispose), (gst_pad_template_new),
4521         (gst_pad_get_internal_links):
4522         * gst/gstpad.h:
4523         * gst/gstpipeline.c: (gst_pipeline_dispose),
4524         (gst_pipeline_change_state):
4525         * gst/gstpipeline.h:
4526         * gst/gstplugin.c:
4527         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
4528         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
4529         * gst/gstpluginfeature.h:
4530         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
4531         * gst/gstquery.c: (_gst_query_type_initialize),
4532         (gst_query_type_register), (gst_query_type_get_by_nick),
4533         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
4534         * gst/gstquery.h:
4535         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
4536         * gst/gstscheduler.c: (gst_scheduler_add_element),
4537         (gst_scheduler_factory_create):
4538         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4539         (gst_structure_free), (gst_structure_set_name),
4540         (gst_structure_id_set_value), (gst_structure_set_value),
4541         (gst_structure_set_valist), (gst_structure_remove_field),
4542         (gst_structure_remove_fields),
4543         (gst_structure_remove_fields_valist),
4544         (gst_structure_remove_all_fields), (gst_structure_foreach),
4545         (gst_structure_map_in_place),
4546         (gst_caps_structure_fixate_field_nearest_int),
4547         (gst_caps_structure_fixate_field_nearest_double):
4548         * gst/gststructure.h:
4549         * gst/gstsystemclock.c: (gst_system_clock_class_init),
4550         (gst_system_clock_init), (gst_system_clock_dispose),
4551         (gst_system_clock_async_thread),
4552         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
4553         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
4554         * gst/gstsystemclock.h:
4555         * gst/gsttag.c: (gst_tag_list_add_value_internal),
4556         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
4557         * gst/gsttaginterface.c:
4558         * gst/gstthread.c: (gst_thread_dispose),
4559         (gst_thread_release_children_locks), (gst_thread_change_state),
4560         (gst_thread_main_loop):
4561         * gst/gsttrashstack.h:
4562         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
4563         * gst/gsttypes.h:
4564         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
4565         (gst_element_request_pad), (gst_element_get_pad_from_template),
4566         (gst_element_request_compatible_pad),
4567         (gst_element_get_compatible_pad_filtered),
4568         (gst_element_get_compatible_pad), (gst_element_state_get_name),
4569         (gst_element_link_pads_filtered), (gst_element_link_filtered),
4570         (gst_element_link_many), (gst_element_link),
4571         (gst_element_link_pads), (gst_element_unlink_pads),
4572         (gst_element_unlink_many), (gst_element_unlink),
4573         (gst_pad_can_link_filtered), (gst_pad_can_link),
4574         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
4575         (gst_object_default_error), (gst_bin_add_many),
4576         (gst_bin_remove_many), (gst_element_populate_std_props),
4577         (gst_element_class_install_std_props), (gst_buffer_merge),
4578         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
4579         (link_fold_func), (gst_pad_proxy_setcaps):
4580         * gst/gstutils.h:
4581         * gst/gstvalue.c: (gst_value_deserialize_string):
4582         * gst/parse/grammar.y:
4583         * gst/schedulers/gstbasicscheduler.c:
4584         (gst_basic_scheduler_cothreaded_chain),
4585         (gst_basic_scheduler_chain_recursive_add),
4586         (gst_basic_scheduler_pad_link):
4587         * gst/schedulers/gstoptimalscheduler.c:
4588         (get_group_schedule_function),
4589         (gst_opt_scheduler_state_transition),
4590         (gst_opt_scheduler_add_element), (element_get_reachables_func):
4591         * libs/gst/bytestream/bytestream.c:
4592         * libs/gst/dataprotocol/dataprotocol.c:
4593         (gst_dp_header_from_buffer):
4594         * po/nb.po:
4595         * po/ru.po:
4596         * tests/threadstate/threadstate2.c: (eos):
4597         * tools/gst-compprep.c: (main):
4598         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
4599         (print_pad_info), (print_children_info):
4600         * tools/gst-launch.c: (idle_func), (main):
4601         * tools/gst-md5sum.c: (idle_func), (main):
4602         * tools/gst-xmlinspect.c: (print_element_info):
4603         First THREADED backport attempt, focusing on adding locks and
4604         making sure the API is threadsafe. Needs more work. More docs
4605         follow this week.
4606
4607 2005-02-24  Andy Wingo  <wingo@pobox.com>
4608
4609         * tests/bench-complexity.scm:
4610         * tests/complexity.gnuplot: New files, good for running complexity
4611         benchmarks.
4612
4613         * tests/Makefile.am:
4614         * tests/complexity.c: New test, sets up N elements, at each level
4615         teeing into M streams per element. Eeeenteresting.
4616
4617         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
4618         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
4619         running bench-mass_elements.scm.
4620
4621         * tests/bench-mass_elements.scm: New script, runs mass_elements
4622         for various numbers of identities, outputting the results to a
4623         file. Requires guile 1.6. Just for testing.
4624
4625 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
4626
4627         * gst/schedulers/fairscheduler.c:
4628           compile with debug disabled
4629
4630 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
4631
4632         * configure.ac:
4633           hunting season on 0.9 is now OPEN
4634
4635 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
4636
4637         * docs/libs/tmpl/gstcontrol.sgml:
4638         * docs/libs/tmpl/gstdparam.sgml:
4639         * docs/libs/tmpl/gstdplinint.sgml:
4640         * docs/libs/tmpl/gstdpman.sgml:
4641         * docs/libs/tmpl/gstdpsmooth.sgml:
4642         * docs/libs/tmpl/gstunitconvert.sgml:
4643           more docs for the state of dparams
4644
4645 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4646
4647         * gst/gstelementfactory.c: (gst_element_factory_create):
4648         * gst/gstobject.c: (gst_object_init),
4649         (gst_object_set_name_default), (gst_object_set_name):
4650           name objects by default, not in gst_element_factory_create. Allows
4651           using elements created with g_object_new. (fixes #167283)
4652
4653 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4654
4655         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
4656           make the time that debugging functions print relative to when
4657           gst_init was called
4658
4659 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
4660
4661         * gst/gsttaginterface.c:
4662           Fix inline docs: tag setter vararg functions are NULL-terminated,
4663           GST_TAG_INVALID doesn't exist any more.
4664
4665 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4666
4667         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
4668         Allocate the 1 byte more memory that was forgotten!!!!!
4669         fixes memory corruption on 64bit platforms
4670
4671 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
4672
4673         * docs/pwg/building-pads.xml:
4674         * docs/pwg/intro-basics.xml:
4675           fixed a few typos, relabeled introductionary list of types
4676         * docs/random/ensonic/dparams.txt:
4677           more notes abut dparam changes
4678         * libs/gst/control/dparam.c: (gst_dparam_attach):
4679         * libs/gst/control/dparammanager.c:
4680         * libs/gst/control/dparammanager.h:
4681           - many comments and notes on dparam implementation
4682           - new dparams are were not initialized to the default value
4683             from param spec
4684
4685 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
4686
4687         submitted by: Peter Astakhov
4688
4689         * po/LINGUAS:
4690         * po/ru.po:
4691           adding Russian translation
4692
4693 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4694
4695         * configure.ac:
4696         * docs/gst/Makefile.am:
4697         * docs/libs/Makefile.am:
4698           make sure popt is added to gtk-doc flags.  Fixes #147782.
4699
4700 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
4701
4702         * docs/faq/using.xml:
4703           Fix typo in FAQ (artssink => artsdsink)
4704
4705 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4706
4707         * tools/gst-launch.1.in:
4708           Fix typo (#166699).
4709
4710 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
4711
4712         * docs/faq/using.xml:
4713           Add -v argument to fakesrc/fakesink gst-launch line,
4714           so that the promised output will actually show up.
4715
4716 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4717
4718         * gst/gstthread.c: (gst_thread_change_state):
4719           Implement state-change error handling (#166073).
4720
4721 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4722
4723         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4724           Release interrupt after handling (#166250).
4725
4726 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4727
4728         * configure.ac:
4729           back to HEAD
4730
4731 === release 0.8.9 ===
4732
4733 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4734
4735         * NEWS:
4736         * RELEASE:
4737         * configure.ac:
4738           releasing 0.8.9, "Like Eating Glass"
4739
4740 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4741
4742         submitted by: Clytie Siddall
4743
4744         * po/vi.po: Added Vietnamese translation
4745
4746 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4747
4748         patch by: Tim Philipp-Müller
4749
4750         * configure.ac:
4751         * gst/gstpad.c:
4752           unref data when probe function returns FALSE.  Fixes #166362
4753
4754 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4755
4756         * gst/gst.c: (gst_init_get_popt_table):
4757           Fix typo (#166269).
4758
4759 2005-02-04  Andy Wingo  <wingo@pobox.com>
4760
4761         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
4762         the debugging on whether the caps are compatible.
4763
4764 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4765
4766         * docs/manual/basics-elements.xml:
4767           Fix two typos.
4768
4769 2005-02-02  Wim Taymans  <wim@fluendo.com>
4770
4771         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
4772         (schedule_chain), (get_invalid_call), (chain_invalid_call),
4773         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
4774         Remove some FIXMEs after analysing and commenting why they
4775         are not issues.
4776
4777 2005-02-02  Wim Taymans  <wim@fluendo.com>
4778
4779         * gst/schedulers/gstoptimalscheduler.c:
4780         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
4781         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
4782         (get_invalid_call), (chain_invalid_call),
4783         (get_group_schedule_function), (loop_group_schedule_function),
4784         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
4785         (gst_opt_scheduler_state_transition),
4786         (gst_opt_scheduler_add_element),
4787         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
4788         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
4789         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
4790         (gst_opt_scheduler_show):
4791         Added lock to protect scheduler data structures.
4792
4793 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4794
4795         * testsuite/threads/threadi.c: (cb_data):
4796           Fix buglet in test.
4797
4798 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4799
4800         * testsuite/threads/Makefile.am:
4801         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
4802           On Wim's request, split the test in three separately-compiled
4803           tests that each test a very specific bug. Two of them still fail,
4804           will create bugs for those. threadi.c indicates why they fail.
4805
4806 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4807
4808         * gst/schedulers/gstoptimalscheduler.c:
4809         (get_group_schedule_function):
4810           Try to work with the threading mess that queue_link is.
4811
4812 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4813
4814         * gst/gstbin.c: (gst_bin_remove_func):
4815           Explicitely make an element release locks in a group when being
4816           remove from a bin.
4817         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
4818           If there's no scheduler, always return immediately (similar to
4819           gst_element_interrupt).
4820
4821 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4822
4823         * gst/gstbin.c: (gst_bin_child_state_change_func):
4824           Remove a piece of code that could never be reached.
4825         * docs/gst/gstreamer-sections.txt:
4826         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
4827         (gst_pad_call_get_function):
4828         * gst/gstpad.h:
4829         * testsuite/pad/Makefile.am:
4830           Fix #150546, enable tests.
4831
4832 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4833
4834         * docs/pwg/advanced-types.xml:
4835           Fix description for buffer-frames=0.
4836         * docs/gst/tmpl/gstbin.sgml:
4837         * gst/gstbin.c: (gst_bin_child_state_change_func),
4838         (gst_bin_change_state), (gst_bin_change_state_norecurse):
4839         * gst/gstbin.h:
4840         * testsuite/threads/Makefile.am:
4841         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
4842         (cb_state), (cb_play), (main):
4843           Fix non-recursive state changes to *really* change the state
4844           of the object, and not just call parent_class->state_change.
4845           Fix a lot of lockups caused by this. Fixes #132775. Add test
4846           for the problem. Also enable test to show #142588 (fixed).
4847         * gst/gstthread.c: (gst_thread_change_state),
4848         (gst_thread_child_state_change):
4849           Don't exit the thread if we go to NULL and are inside thread
4850           context. Instead, return control to the main thread context
4851           and exit from there.
4852         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
4853           Don't unset virtual functions, since those may still be used.
4854           That's not necessarily correct, but suffices for now.
4855         * configure.ac:
4856         * testsuite/Makefile.am:
4857         * testsuite/pad/Makefile.am:
4858         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
4859         (gst_test_sink_base_init), (gst_test_sink_chain),
4860         (gst_test_sink_init), (main):
4861         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
4862         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
4863         (main):
4864         * testsuite/pad/link.c: (gst_test_element_class_init),
4865         (gst_test_element_base_init), (gst_test_src_get),
4866         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
4867         (gst_test_filter_loop), (gst_test_filter_init),
4868         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
4869         (cb_error), (main):
4870           Add tests to show #150546. Pass, but should fail (currently
4871           disabled from the testsuite).
4872         * gst/gstscheduler.c: (gst_scheduler_dispose):
4873           Dereference child schedulers on dispose (#94464).
4874         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
4875           Fix typo.
4876         * testsuite/threads/thread.c: (main):
4877           Add more debug.
4878
4879 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4880
4881         * gst/gstpad.c: (gst_pad_push):
4882           Oops, revert previous commit, broke testsuite...
4883
4884 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4885
4886         * gst/gstpad.c: (gst_pad_push):
4887           Add check that the pad on which the push is performed is not a
4888           get-based pad (#150546).
4889
4890 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4891
4892         * gst/elements/gsttypefindelement.c:
4893         (gst_type_find_element_handle_event):
4894           Fix buffer pushing if stream EOSes during typefinding.
4895
4896 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
4897
4898         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4899
4900         * gst/gstvalue.c: (gst_string_wrap):
4901           Allow NULL-strings as argument (#165365).
4902
4903 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
4904
4905         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4906
4907         * gst/schedulers/faircothreads.c:
4908         (gst_fair_scheduler_cothread_queue_show):
4909           Fix build without debug enabled.
4910
4911 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
4912
4913         * docs/gst/gstreamer-sections.txt:
4914         * docs/libs/gstreamer-libs-docs.sgml:
4915         * docs/libs/gstreamer-libs-sections.txt:
4916         * docs/libs/tmpl/gstcontrol.sgml:
4917         * docs/libs/tmpl/gstdparam.sgml:
4918         * docs/libs/tmpl/gstdplinint.sgml:
4919         * docs/libs/tmpl/gstdpman.sgml:
4920         * docs/libs/tmpl/gstdpsmooth.sgml:
4921         * docs/libs/tmpl/gstputbits.sgml:
4922         * docs/libs/tmpl/gstunitconvert.sgml:
4923         * libs/gst/control/dparam.c:
4924         * libs/gst/control/dparam.h:
4925         * libs/gst/control/dparammanager.c:
4926         (gst_dpman_add_required_dparam_callback),
4927         (gst_dpman_add_required_dparam_direct),
4928         (gst_dpman_add_required_dparam_array),
4929         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
4930         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
4931         (gst_dpman_get_manager)
4932           restructured DParam docs
4933
4934 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
4935
4936         * gst-element-check.m4:
4937           Only check for gst-inspect if we haven't already
4938           found it in previous element check runs
4939
4940 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
4941
4942         * docs/gst/Makefile.am:
4943         * docs/libs/Makefile.am:
4944           fixed install rules to treat style.css as optional
4945
4946 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
4947
4948         * docs/gst/Makefile.am:
4949         * docs/libs/Makefile.am:
4950           install style.css along with docs
4951         * docs/gst/tmpl/gstbin.sgml:
4952         * docs/gst/tmpl/gstclock.sgml:
4953         * docs/gst/tmpl/gstdata.sgml:
4954         * docs/gst/tmpl/gstelement.sgml:
4955         * gst/gstbin.h:
4956         * gst/gstelement.c: (gst_element_class_init):
4957         * gst/gstelement.h:
4958           fixing incomplete docs
4959
4960 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
4961
4962         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4963           Don't unref seek event twice when fflush() fails
4964           
4965 2005-01-22  David Schleef  <ds@schleef.org>
4966
4967         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
4968
4969 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
4970
4971         * docs/gst/Makefile.am:
4972         * docs/libs/Makefile.am:
4973           added params for deprecation guards
4974         * gst/gst.c:
4975         * gst/gst.h:
4976         * gst/gsterror.c: (_gst_resource_errors_init),
4977         (_gst_stream_errors_init):
4978         * gst/gsterror.h:
4979           documented some more enums
4980
4981 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
4982         * gst/autoplug/gstspideridentity.c:
4983         Cosmetic fix - spider_find_peek should be static
4984         * gst/parse/parse.l:
4985         Applying fix for #164261
4986
4987 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
4988
4989         * docs/gst/gstreamer-sections.txt:
4990         * docs/gst/tmpl/gstplugin.sgml:
4991         * docs/libs/gstreamer-libs-sections.txt:
4992         * docs/libs/tmpl/gstcontrol.sgml:
4993         * gst/gstbuffer.h:
4994         * gst/gsttag.h:
4995         * gst/gstvalue.c:
4996           added docs for the TAG defines
4997
4998 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4999
5000         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5001           Only unref entry if there is an entry.
5002
5003 2005-01-17  Wim Taymans  <wim@fluendo.com>
5004
5005         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5006         (remove_from_group), (schedule_group), (normalize_group),
5007         (gst_opt_scheduler_iterate):
5008         Also ref/unref decoupled elements before iterating the
5009         group since they are not added to the list of elements.
5010
5011 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5012
5013         * docs/manual/highlevel-components.xml:
5014           Add subtitle/streamselection as new features to playbin.
5015
5016 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5017
5018         * docs/manual/manual.xml:
5019           Re-enable dataaccess docs (oops).
5020
5021 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5022
5023         * docs/pwg/advanced-types.xml:
5024         * docs/random/mimetypes:
5025           Add documentation on libsndfile types (#163309), by Steve Baker
5026           <steve@stevebaker.org>.
5027         * gst/gstelement.c: (gst_element_release_request_pad):
5028           If an element has no explicit function, just remove the pad.
5029
5030 2005-01-17  Luca Ognibene  <luogni@tin.it>
5031
5032         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5033
5034         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5035           Fix memleak (#163801).
5036
5037 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5038
5039         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5040           I think this is actually more correct...
5041
5042 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5043
5044         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5045           Another workaround for memory access while destroyed in callback.
5046           Please, someone with refcount knowledge, have a look at this.
5047
5048 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5049
5050         * docs/faq/faq.xml:
5051         * docs/faq/legal.xml:
5052           move the legal Q&A here
5053
5054 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5055
5056         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5057         (gst_tee_request_new_pad):
5058           Fix negotiation.
5059
5060 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5061
5062         * docs/random/omega/caps2:
5063         * testsuite/caps/caps_strings:
5064           replace framerate aproximations by their real value
5065           (24000/1001, 30000/1001, 60000/1001)
5066           Partially fixes bug #164049
5067
5068 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5069
5070         * docs/gst/Makefile.am:
5071           don't fail on the stupid GstPoptOption
5072
5073 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5074
5075         * gst/gstpad.h:
5076         * gst/gstprobe.c:
5077           allow probes to work on ghost pads by realizing the pad
5078           probe debugging
5079
5080 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5081
5082         * docs/gst/gstreamer-sections.txt:
5083         * docs/gst/tmpl/gstpad.sgml:
5084         * gst/gstpad.c: (gst_pad_set_active_recursive):
5085         * gst/gstpad.h:
5086           Add gst_pad_set_active_recursive().
5087
5088 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5089
5090         * docs/random/release:
5091           updates
5092         * gst/gst_private.h:
5093         * gst/gstinfo.c:
5094         * gst/gstobject.c:
5095           move deep_notify logging to a new category
5096         * gst/gstprobe.c:
5097         * gst/gstprobe.h:
5098           add stuff so bindings can wrap probes
5099
5100 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5101
5102         * gst/gstplugin.c: (gst_plugin_load):
5103           Fix plugin loading if plugin/lib was already loaded. Fixes
5104           #163383
5105
5106 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5107
5108         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5109
5110         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5111           Protect plugin loading by a mutex so it's threadsafe. Fixes
5112           #163234.
5113
5114 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5115
5116         * gst/gstevent.c: (_gst_event_copy):
5117           Reference source object when copying events, since it'll be
5118           dereferenced on event dereferencing as well.
5119
5120 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5121
5122         * docs/gst/gstreamer-sections.txt:
5123         * docs/gst/tmpl/gstevent.sgml:
5124         * gst/gstevent.c: (gst_event_new_filler_stamped),
5125         (gst_event_filler_get_duration):
5126         * gst/gstevent.h:
5127           Add two new functions for filler events (which are used to
5128           synchronize streams if one of them is not having any data
5129           for a while) without interrupting the actual data-stream.
5130           Basically a no-op.
5131         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5132         (gst_queue_link_sink), (gst_queue_link_src),
5133         (gst_queue_change_state):
5134           Allow for renegotiation while filled. Required for stream
5135           switching while playing.
5136
5137 2005-01-08  Benjamin Otte  <otte@gnome.org>
5138
5139         * gst/gstelement.c: (gst_element_link_many):
5140           fix up g_return_if_fail's
5141         * po/LINGUAS:
5142         * po/de.po:
5143           add German translation, that was somehow not included
5144
5145 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5146
5147         * docs/random/mimetypes:
5148           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5149           do not add them to riff-lib as they are not common
5150
5151 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5152
5153         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5154           Check for existence of probe after performing the probe before
5155           re-accessing it to prevent segfaults caused by removal of the
5156           probe in the callback.
5157
5158 2005-01-05  David Schleef  <ds@schleef.org>
5159
5160         * testsuite/registry/Makefile.am:
5161         * testsuite/registry/gst-print-formats.c:
5162         (print_pad_templates_info), (print_element_list),
5163         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5164         (g_list_uniqify), (get_pad_templates_info),
5165         (get_element_mime_list), (print_mime_list), (main): A little
5166         program that looks through the registry to find elements of
5167         a given type.  Not particularly interesting as a test, except
5168         that there's no other test covering the same area.
5169
5170 2005-01-05  David Schleef  <ds@schleef.org>
5171
5172         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5173         (fault_handler_sigaction), (fault_spin),
5174         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5175         in signal.h-type signal handlers by not calling forbidden functions,
5176         including gst_element_set_state().
5177
5178 2005-01-05  David Schleef  <ds@schleef.org>
5179
5180         * gst/gstvalue.h: Mark _gst_reserved[] as private
5181
5182 2005-01-05  David Schleef  <ds@schleef.org>
5183
5184         * gst/gstvalue.c: Fix doc build problem.
5185
5186 2005-01-05  David Schleef  <ds@schleef.org>
5187
5188         * gst/gstvalue.c: Add some documentation
5189
5190 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5191
5192         * docs/README:
5193           another shell oneliner for empty return value docs
5194         * gst/gstcaps.c:
5195         * gst/gstvalue.c:
5196         * libs/gst/control/dparam.c:
5197           more doc fixes (parameters and return values)
5198
5199 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5200
5201         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5202
5203         * gst/gstregistry.h:
5204         * gst/registries/gstxmlregistry.c:
5205           Fix macro's for Mingw (fixes #162276).
5206
5207 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5208
5209         * docs/README:
5210           quick shell oneliner to find undocumented members
5211         * docs/gst/tmpl/gstplugin.sgml:
5212         * docs/gst/tmpl/gstscheduler.sgml:
5213         * docs/gst/tmpl/gstthread.sgml:
5214           more enumtypes cleanup
5215         * gst/gsterror.h:
5216           activated documentation comments, now someone needs to document
5217           the enums :(
5218
5219 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5220
5221         * docs/manual/manual.xml:
5222           Add dataaccess part (doh!).
5223
5224 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5225
5226         * docs/manual/advanced-autoplugging.xml:
5227           Fix typo (intiate -> initiate).
5228
5229 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5230
5231         * docs/random/bbb/streamselection:
5232           Add some notes on how to handle multi-subtitle/-audio streams.
5233
5234 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
5235
5236         * docs/gst/gstreamer-docs.sgml:
5237         * docs/gst/gstreamer-sections.txt:
5238         * docs/gst/tmpl/gstenumtypes.sgml:
5239         * docs/gst/tmpl/gsterror.sgml:
5240         * docs/gst/tmpl/gstevent.sgml:
5241         * docs/gst/tmpl/gstpad.sgml:
5242         * docs/gst/tmpl/gstpadtemplate.sgml:
5243         * docs/gst/tmpl/gstthread.sgml:
5244           removed gstenumtypes section from docs and put all the enums into
5245           their sections
5246
5247 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5248
5249         * gst/gstplugin.c:
5250           document gst_library_load a bit more (riff special case + return
5251           value if already loaded)
5252         * testsuite/bytestream/filepadsink.c:
5253           plugin name is 'gstbytestream', not 'bytestream'
5254
5255 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5256
5257         * docs/random/bbb/subtitles:
5258           Add some first mind rumblings on proper subtitle support.
5259
5260 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5261
5262         * po/ca.po:
5263         * po/sv.po:
5264           updated translations
5265
5266 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5267
5268         * docs/manual/advanced-dataaccess.xml:
5269           Add section on how to use fakesrc/fakesink/identity in your
5270           application, plus section on how to embed plugins. Also mention
5271           probes.
5272         * docs/manual/appendix-checklist.xml:
5273         * docs/manual/appendix-debugging.xml:
5274         * docs/manual/appendix-gnome.xml:
5275         * docs/manual/appendix-integration.xml:
5276           Debug -> checklist, GNOME -> integration, add sections on Linux,
5277           KDE integration and add other things useful for application
5278           development.
5279         * docs/manual/manual.xml:
5280           Remove some fixmes, update some file pointers.
5281         * docs/pwg/appendix-checklist.xml:
5282           Fix typo.
5283         * docs/pwg/building-boiler.xml:
5284           Remove ugly header and add commented fixme.
5285         * docs/pwg/pwg.xml:
5286           Add fixme.
5287         * examples/manual/Makefile.am:
5288           Add example for added docs.
5289
5290 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5291
5292         * configure.ac:
5293           back to HEAD
5294
5295 === release 0.8.8 ===
5296
5297 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5298
5299         * NEWS:
5300         * RELEASE:
5301         * configure.ac:
5302           Releasing 0.8.8, "I'll Take Care Of You"
5303
5304 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5305
5306         * configure.ac:
5307           second prerelease
5308
5309 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5310
5311         patch by: Wim Taymans
5312
5313         * gst/gstbin.c:
5314           Fix for #159852 - make iterate emission threadsafe
5315
5316 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
5317
5318         * docs/faq/cvs.xml:
5319           notes about new fdo account request
5320
5321 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
5322
5323         * docs/gst/gstreamer-docs.sgml:
5324         * docs/gst/tmpl/gstenumtypes.sgml:
5325         * docs/gst/tmpl/gstplugin.sgml:
5326         * docs/libs/gstreamer-libs-docs.sgml:
5327           Added missing short docs. Added ids for navigation.
5328
5329 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5330
5331         * docs/manual/advanced-autoplugging.xml:
5332         * docs/manual/advanced-schedulers.xml:
5333         * docs/manual/advanced-threads.xml:
5334           Rewrites. Remove cothreads, go a bit into opt specifically,
5335           document threads and their gotchas, and do some technical stuff
5336           on autoplugging plus add some working examples. Fixes #157395.
5337         * examples/manual/Makefile.am:
5338           Add typefind/autoplugger example (one that actually works).
5339           Remove queue example since it's a duplicate of the thread one.
5340
5341 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5342
5343         * gst/gstvalue.c: (gst_value_deserialize_string):
5344           use deprecated g_value_set_string_take_ownership to keep compatible
5345           with glib 2.2
5346
5347 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5348
5349         * gst/gstvalue.c: (gst_value_deserialize_string):
5350           revert last patch, only dom a g_utf8_validate now before accepting
5351           the string - caps parsing strips " from strings so we can't rely on
5352           them
5353         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5354           disable a test that tested the above and comment it
5355
5356 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
5357
5358         Patch reviewed by David Schleef  <ds@schleef.org>
5359
5360         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
5361         bug #153882)
5362         * win32/gstenumtypes.h: same
5363
5364 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5365
5366         * gst/gstpad.c: (gst_pad_query):
5367           Do query on realized pad, similar to how convert/send_event handle
5368           this. Also makes sense, since this pad belongs to the function to
5369           which this query will be sent. Fixes #158163.
5370
5371 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
5372
5373         * docs/manual/appendix-programs.xml: fix pipeline to actually work
5374
5375 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5376
5377         * docs/faq/general.xml: fix pipeline to actually work
5378
5379 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5380
5381         * gst/gstvalue.c: (gst_value_deserialize_string):
5382           check that a simple string that gets deserialized does not contain
5383           invalid characters
5384         * testsuite/caps/value_serialize.c: (test_string_deserialization):
5385           remove a test that tested a wring behaviour
5386
5387 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
5388
5389         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5390
5391         * docs/manual/intro-motivation.xml:
5392           Fix typos.
5393
5394 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
5395
5396         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5397
5398         * docs/gst/tmpl/gstprobe.sgml:
5399           Fix documentation of probe callback - it is supposed to return
5400           FALSE, not TRUE, to remove data from the stream (#159087).
5401
5402 2004-12-16  Daniel Gazard  <dany42@free.fr>
5403
5404         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5405
5406         * gst/gstelementfactory.c: (gst_element_factory_create):
5407           Fix compile failure if compiling without libxml2 support (#149936).
5408
5409 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5410
5411         * docs/manual/advanced-autoplugging.xml:
5412         * docs/manual/highlevel-components.xml:
5413           Move spider from autoplugging to components. Autoplugging is for
5414           internals, not for solutions. ;-).
5415
5416 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5417
5418         * docs/random/ds/0.9-suggested-changes:
5419           Make note on device/location/uri property names.
5420
5421 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5422
5423         * docs/manual/advanced-autoplugging.xml:
5424         * docs/manual/advanced-clocks.xml:
5425         * docs/manual/advanced-interfaces.xml:
5426         * docs/manual/advanced-metadata.xml:
5427         * docs/manual/advanced-position.xml:
5428         * docs/manual/advanced-schedulers.xml:
5429         * docs/manual/advanced-threads.xml:
5430         * docs/manual/appendix-gnome.xml:
5431         * docs/manual/appendix-programs.xml:
5432         * docs/manual/appendix-quotes.xml:
5433         * docs/manual/autoplugging.xml:
5434         * docs/manual/basics-bins.xml:
5435         * docs/manual/basics-data.xml:
5436         * docs/manual/basics-elements.xml:
5437         * docs/manual/basics-helloworld.xml:
5438         * docs/manual/basics-init.xml:
5439         * docs/manual/basics-pads.xml:
5440         * docs/manual/basics-plugins.xml:
5441         * docs/manual/bins-api.xml:
5442         * docs/manual/bins.xml:
5443         * docs/manual/buffers-api.xml:
5444         * docs/manual/buffers.xml:
5445         * docs/manual/clocks.xml:
5446         * docs/manual/components.xml:
5447         * docs/manual/cothreads.xml:
5448         * docs/manual/debugging.xml:
5449         * docs/manual/dparams-app.xml:
5450         * docs/manual/dynamic.xml:
5451         * docs/manual/elements-api.xml:
5452         * docs/manual/elements.xml:
5453         * docs/manual/factories.xml:
5454         * docs/manual/gnome.xml:
5455         * docs/manual/goals.xml:
5456         * docs/manual/helloworld.xml:
5457         * docs/manual/helloworld2.xml:
5458         * docs/manual/highlevel-components.xml:
5459         * docs/manual/highlevel-xml.xml:
5460         * docs/manual/init-api.xml:
5461         * docs/manual/intro-basics.xml:
5462         * docs/manual/intro-motivation.xml:
5463         * docs/manual/intro-preface.xml:
5464         * docs/manual/intro.xml:
5465         * docs/manual/links-api.xml:
5466         * docs/manual/links.xml:
5467         * docs/manual/manual.xml:
5468         * docs/manual/motivation.xml:
5469         * docs/manual/pads-api.xml:
5470         * docs/manual/pads.xml:
5471         * docs/manual/plugins-api.xml:
5472         * docs/manual/plugins.xml:
5473         * docs/manual/programs.xml:
5474         * docs/manual/queues.xml:
5475         * docs/manual/quotes.xml:
5476         * docs/manual/schedulers.xml:
5477         * docs/manual/states-api.xml:
5478         * docs/manual/states.xml:
5479         * docs/manual/threads.xml:
5480         * docs/manual/typedetection.xml:
5481         * docs/manual/win32.xml:
5482         * docs/manual/xml.xml:
5483           Try 2. This time, include a short preface as a "general
5484           introduction", also add code blocks around all code samples
5485           so they get compiled. We still need a way to tell readers
5486           the filename of the code sample. In some cases, don't show
5487           all code in the documentation, but do include it in the generated
5488           code. This allows for focussing on specific bits in the docs,
5489           while still having a full test application available.
5490         * examples/manual/Makefile.am:
5491           Fix up examples for new ADM. Add several of the new examples that
5492           were either added or were missing from the build system.
5493         * examples/manual/extract.pl:
5494           Allow nameless blocks.
5495
5496 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5497
5498         * docs/manual/elements-api.xml:
5499         * docs/manual/helloworld.xml:
5500         * examples/manual/extract.pl:
5501           fix last example.  Add example of adding code blocks that are not
5502           shown in docbook output.
5503
5504 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5505
5506         * docs/manual/dynamic.xml:
5507         * docs/manual/elements-api.xml:
5508         * docs/manual/gnome.xml:
5509         * docs/manual/helloworld2.xml:
5510         * docs/manual/init-api.xml:
5511         * docs/manual/queues.xml:
5512         * docs/manual/threads.xml:
5513         * docs/manual/xml.xml:
5514         * examples/manual/extract.pl:
5515           Make it possible to extract example code from separate blocks.
5516           Should make Ronald happy.
5517
5518 2004-12-15  Wim Taymans  <wim@fluendo.com>
5519
5520         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5521         (remove_from_group), (group_elements_set_visited),
5522         (normalize_group), (gst_opt_scheduler_iterate):
5523         Fix bug where a flag was not updated on a decoupled entry point 
5524         because we were just checking the group element list and decoupled
5525         elements are not in that list..
5526
5527 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5528
5529         * docs/manual/advanced-autoplugging.xml:
5530         * docs/manual/advanced-clocks.xml:
5531         * docs/manual/advanced-dparams.xml:
5532         * docs/manual/advanced-interfaces.xml:
5533         * docs/manual/advanced-metadata.xml:
5534         * docs/manual/advanced-position.xml:
5535         * docs/manual/advanced-schedulers.xml:
5536         * docs/manual/advanced-threads.xml:
5537         * docs/manual/appendix-debugging.xml:
5538         * docs/manual/appendix-gnome.xml:
5539         * docs/manual/appendix-programs.xml:
5540         * docs/manual/appendix-quotes.xml:
5541         * docs/manual/appendix-win32.xml:
5542         * docs/manual/autoplugging.xml:
5543         * docs/manual/basics-bins.xml:
5544         * docs/manual/basics-data.xml:
5545         * docs/manual/basics-elements.xml:
5546         * docs/manual/basics-helloworld.xml:
5547         * docs/manual/basics-init.xml:
5548         * docs/manual/basics-pads.xml:
5549         * docs/manual/basics-plugins.xml:
5550         * docs/manual/bins-api.xml:
5551         * docs/manual/bins.xml:
5552         * docs/manual/buffers-api.xml:
5553         * docs/manual/buffers.xml:
5554         * docs/manual/clocks.xml:
5555         * docs/manual/components.xml:
5556         * docs/manual/cothreads.xml:
5557         * docs/manual/debugging.xml:
5558         * docs/manual/dparams-app.xml:
5559         * docs/manual/dynamic.xml:
5560         * docs/manual/elements-api.xml:
5561         * docs/manual/elements.xml:
5562         * docs/manual/factories.xml:
5563         * docs/manual/gnome.xml:
5564         * docs/manual/goals.xml:
5565         * docs/manual/helloworld.xml:
5566         * docs/manual/helloworld2.xml:
5567         * docs/manual/highlevel-components.xml:
5568         * docs/manual/highlevel-xml.xml:
5569         * docs/manual/init-api.xml:
5570         * docs/manual/intro-motivation.xml:
5571         * docs/manual/intro-preface.xml:
5572         * docs/manual/intro.xml:
5573         * docs/manual/links-api.xml:
5574         * docs/manual/links.xml:
5575         * docs/manual/manual.xml:
5576         * docs/manual/motivation.xml:
5577         * docs/manual/pads-api.xml:
5578         * docs/manual/pads.xml:
5579         * docs/manual/plugins-api.xml:
5580         * docs/manual/plugins.xml:
5581         * docs/manual/programs.xml:
5582         * docs/manual/queues.xml:
5583         * docs/manual/quotes.xml:
5584         * docs/manual/schedulers.xml:
5585         * docs/manual/states-api.xml:
5586         * docs/manual/states.xml:
5587         * docs/manual/threads.xml:
5588         * docs/manual/typedetection.xml:
5589         * docs/manual/win32.xml:
5590         * docs/manual/xml.xml:
5591           First try at rewriting the ADM. Needs lotsamore work, but some
5592           parts might already be somewhat useful.
5593         * docs/pwg/advanced-interfaces.xml:
5594           Remove properties interface, it never actually existed (except for
5595           on my HD...).
5596
5597 2004-12-13  David Schleef  <ds@schleef.org>
5598
5599         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
5600         be NULL (bug #160220).
5601
5602 2004-12-13  David Schleef  <ds@schleef.org>
5603
5604         * configure.ac: remove all mmx stuff, because it's not used.
5605         * docs/random/ds/0.9-suggested-changes: additional notes
5606         * include/Makefile.am: we don't use these anymore
5607         * include/mmx.h: remove
5608         * include/sse.h: remove
5609
5610 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
5611
5612         * docs/random/mimetypes:
5613           Add FOURCC code for h264 codec (VSSH)
5614           Add alternate FOURCC codes for h263 related codecs
5615
5616 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
5617
5618         * docs/manual/programs.xml:
5619           Added more gst-launch examples.
5620
5621 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5622
5623         * gst/gstqueue.c: (gst_queue_handle_src_query):
5624           Check for availability again.
5625
5626 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5627
5628         * gst/gstcaps.c: (gst_caps_compare_structures):
5629           Simple caps go first. This has the nice side-effect of fixing an
5630           obscure warning.
5631
5632 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5633
5634         * gst/gstversion.h.in:
5635           Protect header.
5636
5637 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5638
5639         * gst/schedulers/gstoptimalscheduler.c:
5640         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
5641         (gst_opt_scheduler_get_wrapper):
5642           When we're recursing into a chain run, only run the directly
5643           related group, not all queued ones. This will fix a possible
5644           deadlock in chains with more than two groups.
5645
5646 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5647
5648         * autogen.sh:
5649           remove patch if autopoint fails
5650
5651 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5652
5653         * docs/gst/gstreamer-sections.txt:
5654           Document Thomas' addition, fix build, make Luis the sheriff happy.
5655
5656 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5657
5658         * gst/gstplugin.c:
5659         * gst/gstplugin.h:
5660           add accessor for version field
5661
5662 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5663
5664         submitted by: Luca Ferretti <elle.uca@infinito.it>
5665
5666         * po/LINGUAS:
5667         * po/it.po:
5668           New tranlation added: Italian
5669
5670 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5671
5672         * gst/gstpad.c: (gst_pad_is_negotiated),
5673         (gst_pad_get_negotiated_caps):
5674           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
5675           it doesn't actually check the contents), so be sure to hand it
5676           a RealPad else we'll crash.
5677
5678 2004-12-03  Wim Taymans  <wim@fluendo.com>
5679
5680         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5681         (gst_queue_link), (gst_queue_handle_src_query):
5682         Reverted to 1.110 until this makes the testsuite and various
5683         apps work.
5684
5685 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
5686
5687         * docs/upload.mak: fix included CVS conflict strings
5688
5689 2004-12-01  William Jon McCann  <mccann@jhu.edu>
5690
5691         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5692
5693         * gst/gstelement.c: (gst_element_error_full):
5694           Use g_error_new_literal because error text may have
5695           percentage signs in it. Fixes #160019.
5696
5697 2004-12-01  Benjamin Otte  <otte@gnome.org>
5698
5699         * gst/elements/gstbufferstore.c:
5700         (gst_buffer_store_add_buffer_func):
5701           don't try to make subbuffers bigger than they can be. (fixes
5702           #159970)
5703
5704 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5705
5706         * docs/gst/gstreamer-sections.txt:
5707         * docs/gst/tmpl/gstvalue.sgml:
5708           Add new function to docs to fix build.
5709
5710 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5711
5712         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
5713         * gst/gstpad.c: (_gst_pad_default_fixate_value),
5714         (_gst_pad_default_fixate_foreach):
5715         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
5716         * gst/gstvalue.h:
5717           Deprecate _type_is_fixed, use _value_is_fixed instead, since
5718           in some cases (arrays), the fixedness depends on the content.
5719         * gst/gstqueue.c: (gst_queue_handle_src_query):
5720           Check for availability before doing something.
5721
5722 2004-11-29  Wim Taymans  <wim@fluendo.com>
5723
5724         * testsuite/threads/Makefile.am:
5725         * testsuite/threads/signals.c: (gst_test_get_type),
5726         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
5727         (gst_test_set_property), (gst_test_get_property),
5728         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
5729         (gst_test_do_prop), (run_thread), (main):
5730         Added a bunch of testcases that show threadsafety bugs in glib.
5731
5732 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
5733
5734         * docs/manual/programs.xml:
5735           Added a first batch of gst-launch examples, as provided by Ronald
5736           and others from the devel-mlist
5737
5738 2004-11-28  Benjamin Otte  <otte@gnome.org>
5739
5740         * gst/gstelement.c: (gst_element_negotiate_pads):
5741           simplify
5742         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
5743         (gst_value_serialize_string), (gst_value_deserialize_string):
5744           add unwrapping of previously wrapped strings. Fix bug in wrapping
5745           while at it.
5746         * testsuite/caps/value_serialize.c: (test1),
5747         (test_string_serialization), (test_string_deserialization), (main):
5748           add tests for string (de)serialization
5749
5750 2004-11-26  Wim Taymans  <wim@fluendo.com>
5751
5752         * testsuite/threads/159566.c: (object_deep_notify), (main):
5753         * testsuite/threads/Makefile.am:
5754         Added testsuite to show bug #159566
5755
5756 2004-11-25  Wim Taymans  <wim@fluendo.com>
5757
5758         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
5759         (gst_thread_child_state_change), (gst_thread_main_loop):
5760         Ref the thread object in the GThread mainloop. Break out of the
5761         thread mainloop if it holds the last ref. This properly exits
5762         the threads when disposing the thread from its own context. It
5763         also avoids possible deadlocks in the dispose function.
5764
5765 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
5766
5767         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
5768         it is necessary to wait.
5769
5770 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5771
5772         * docs/pwg/building-boiler.xml:
5773           Make description somewhat clearer.
5774
5775 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5776
5777         * docs/upload.mak:
5778           Apparently docs changed location on FDO's server.
5779
5780 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5781
5782         * docs/pwg/appendix-checklist.xml:
5783           Add some random notes on things to check when writing an element.
5784           This list can be extended as people see fit.
5785
5786 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
5787
5788         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
5789         (gst_queue_link_src): Allow for renegotiating the caps of the sink
5790         pad. The queue will now wait until it is empty and forward the new
5791         caps to the source.
5792         * gst/gstbin.c (gst_bin_set_element_sched)
5793         (gst_bin_unset_element_sched): Make sure that all elements and
5794         links are registered and unregistered with the scheduler exactly
5795         once. This elaborates on a fix by Benjamin Otte, but
5796         guarantees that decoupled elements are also registered.
5797
5798 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5799
5800         * docs/manual/quotes.xml:
5801           add a quote
5802         * configure.ac:
5803         * gst/gst.c:
5804         * gst/gstinfo.c:
5805           add LIBDIR and move init message higher up so it's at the start
5806
5807 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
5808
5809         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
5810         * gstreamer.spec.in: add fair
5811
5812 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5813
5814         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5815         * gst/elements/gstidentity.c: (gst_identity_class_init):
5816           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
5817           <teuf@gnome.org> (#157263).
5818         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
5819         (gst_type_find_handle_src_query):
5820           Subtract size of internally stored data from position queries.
5821
5822 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
5823
5824         * gst/schedulers/fairscheduler.c:
5825         * gst/schedulers/faircothreads.c:
5826         * gst/schedulers/faircothreads.h:
5827         New cothread based scheduler: Fair scheduler.
5828         * gst/schedulers/gthread-cothreads.h: 
5829         Add the standard #if around the whole file.
5830         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
5831         compilation of the functions defined in this file. This is
5832         necessary to be able to use this file as a normal header.
5833         * gst/schedulers/Makefile.am: Add compiling support for fair
5834         scheduler.
5835         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
5836         scheduler cothreads layer from documentation generation.
5837
5838 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5839
5840         * gst/autoplug/gstspideridentity.c:
5841         (gst_spider_identity_sink_loop_type_finding):
5842           Don't crash if that function is not implemented.
5843
5844 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5845
5846         * docs/pwg/advanced-types.xml:
5847           Another typo.
5848
5849 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5850
5851         * docs/pwg/intro-preface.xml:
5852           Hm, ok, so the brackets weren't really useful...
5853         * docs/pwg/other-ntoone.xml:
5854           Fix embarassing typo.
5855
5856 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5857
5858         * docs/pwg/intro-preface.xml:
5859           Rewrite preface.
5860
5861 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5862
5863         * docs/pwg/advanced-scheduling.xml:
5864         * docs/pwg/advanced-tagging.xml:
5865         * docs/pwg/advanced-types.xml:
5866         * docs/pwg/building-boiler.xml:
5867         * docs/pwg/building-chainfn.xml:
5868         * docs/pwg/building-signals.xml:
5869         * docs/pwg/building-state.xml:
5870         * docs/pwg/building-testapp.xml:
5871         * docs/pwg/intro-basics.xml:
5872         * docs/pwg/other-manager.xml:
5873         * docs/pwg/other-source.xml:
5874           Typo fixes.
5875         * docs/pwg/other-manager.xml:
5876           Add some first content. No example code yet.
5877         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5878           Remove double newlines.
5879
5880 2004-11-04  Wim Taymans  <wim@fluendo.com>
5881
5882         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5883         (remove_from_group), (normalize_group), (group_migrate_connected),
5884         (gst_opt_scheduler_iterate):
5885         * testsuite/schedulers/.cvsignore:
5886         * testsuite/schedulers/Makefile.am:
5887         * testsuite/schedulers/queue_link.c: (main):
5888         Added testcase for scheduler segfault.
5889         Fix scheduler segfault when removing a decoupled
5890         entry point as the last element from a group.
5891
5892 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5893
5894         * gst/gstmarshal.list: add missing marshaller, fixes build
5895
5896 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5897
5898         * docs/random/signal: added notes about using BOXED for GstBuffer
5899         signal marshallers, not POINTER
5900
5901 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5902
5903         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5904         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
5905         POINTER=>BOXED changes to marshal GstBuffers
5906
5907 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
5908
5909         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
5910         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
5911
5912 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
5913
5914         * docs/gst/gstreamer-sections.txt:
5915         * docs/gst/tmpl/gstcaps.sgml:
5916         * docs/gst/tmpl/gsterror.sgml:
5917         * docs/gst/tmpl/gstinfo.sgml:
5918         * docs/gst/tmpl/gstmacros.sgml:
5919         * docs/gst/tmpl/gstutils.sgml:
5920         * docs/random/ensonic/interfaces.txt:
5921         * gst/gstinfo.h:
5922           added some more docs, removed two obsolete defines
5923
5924 2004-11-02  Kjartan Maraas <as at gnome.org>
5925
5926         reviewed by: Wim Taymans, Ronald Bultje.
5927
5928         * gst/cothreads.c: (cothread_create):
5929         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
5930         (gst_bin_child_state_change_func):
5931         * gst/gstbuffer.c: (gst_buffer_span):
5932         * gst/gstelement.c: (gst_element_get_index),
5933         (gst_element_get_event_masks), (gst_element_get_query_types),
5934         (gst_element_get_formats):
5935         * gst/gsterror.c: (_gst_core_errors_init),
5936         (_gst_library_errors_init), (_gst_resource_errors_init),
5937         (_gst_stream_errors_init):
5938         * gst/gstobject.c: (gst_object_default_deep_notify):
5939         * gst/gstpad.c: (gst_pad_get_event_masks),
5940         (gst_pad_get_internal_links_default):
5941         * gst/gstplugin.c: (gst_plugin_register_func),
5942         (gst_plugin_get_module):
5943         * gst/gststructure.c: (gst_structure_get_string),
5944         (gst_structure_get_abbrs), (gst_structure_from_abbr),
5945         (gst_structure_to_abbr):
5946         * gst/gstutils.c: (gst_print_element_args):
5947         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5948         (setup_group_scheduler), (gst_opt_scheduler_iterate):
5949         Aplied part of patch #157127: Cleanup of issues reported by 
5950         sparse.
5951         Also do not try to use cothreads when there is no cothread
5952         context yet.
5953
5954 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
5955
5956         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5957         (gst_opt_scheduler_iterate):
5958         Applied patch #154061. Running a pipeline in which an element 
5959         calls GST_ELEMENT_ERROR in the chain function, the opt 
5960         scheduler doesn't unref the chain so it never gets freed.
5961
5962 2004-11-02  Wim Taymans  <wim@fluendo.com>
5963
5964         * gst/gststructure.c: (gst_structure_get_abbrs),
5965         (gst_structure_from_abbr), (gst_structure_to_abbr):
5966         Remove that ugly if-then thing in the code that converts
5967         between strings and types.
5968
5969 2004-11-02  Wim Taymans  <wim@fluendo.com>
5970
5971         * gst/gstscheduler.c: (gst_scheduler_add_element),
5972         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
5973         Aplied clock distribution patch, this should fix bug
5974         #148787.
5975
5976 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
5977
5978         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
5979
5980         * po/LINGUAS:
5981         * po/nb.po:
5982           Added Norwegian Bokmaal translation
5983
5984 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5985
5986         * tools/gst-inspect.c: (print_signal_info):
5987           print signal arguments as pointers if they are
5988
5989 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
5990
5991         * docs/pwg/building-boiler.xml:
5992           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
5993
5994 2004-10-19  Wim Taymans  <wim at fluendo dot com>
5995
5996         * gst/parse/parse.l:
5997         * testsuite/parse/parse1.c: (main):
5998         Since parse can do 'element name=a:b' make 'a:b.' work as
5999         well. 
6000         Added testcase to verify fix.
6001
6002 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6003
6004         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6005         Use the realpad when printing the direction.
6006         Add extra \n when printing extensions of typefind factories.
6007
6008 2004-10-13  David Schleef  <ds@schleef.org>
6009
6010         * examples/manual/Makefile.am: $< isn't portable in Makefile
6011         rules.
6012
6013 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6014
6015         * docs/gst/tmpl/gstobject.sgml:
6016         * docs/gst/tmpl/gstplugin.sgml:
6017         * docs/gst/tmpl/gstpluginfeature.sgml:
6018         * docs/gst/tmpl/gstregistry.sgml:
6019         * docs/gst/tmpl/gstversion.sgml:
6020         * gst/gstbin.c:
6021           more api documentation
6022         * gst/gstplugin.c: (gst_plugin_register_func),
6023         (gst_plugin_check_file), (gst_plugin_load_file):
6024           better error signaling and logging
6025
6026 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6027
6028         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6029           Subtract current queue contents from position queries.
6030
6031 2004-10-11  Johan Dahlin  <johan@gnome.org>
6032
6033         * gst/gsturi.c (gst_uri_get_location): unescape string
6034         (gst_uri_construct): escape string.
6035
6036 2004-10-11  Benjamin Otte  <otte@gnome.org>
6037
6038         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6039         (gst_pad_try_set_caps_nonfixed):
6040           allow renegotiation of unconnected pads (as inside spider). Simply
6041           return OK if unconnected - mimic try_set_caps there.
6042
6043 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6044
6045         * gst/gstbin.c: (gst_bin_sync_children_state):
6046           Add missing break.
6047
6048 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6049
6050         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6051         Set element to EOS before sending EOS event
6052
6053 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6054
6055         * gst/elements/gsttypefindelement.c:
6056         (gst_type_find_element_handle_event):
6057         Handle EOS events when doing the transition from
6058         typefind to data passing. This should fix the
6059         infinite loops in short files.
6060
6061 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6062
6063         * gst/gstthread.c: (gst_thread_change_state),
6064         (gst_thread_child_state_change):
6065         Make sure no iteration happens while performing
6066         the state change as it could mess up the internal
6067         consistency of the thread state.
6068
6069 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6070
6071         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6072         (gst_thread_change_state), (gst_thread_child_state_change):
6073         Do not try to grab the iterate lock in the state change method
6074         when we are in the same thread as the iterate or else we
6075         could deadlock. Some other cleanups.
6076
6077 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6078
6079         * configure.ac:
6080           bump nano to cvs
6081
6082 === release 0.8.7 ===
6083
6084 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6085
6086         * configure.ac:
6087         * NEWS:
6088         * RELEASE:
6089         * configure.ac:
6090           releasing 0.8.7, "A Cruise"
6091
6092 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6093
6094         * docs/random/mimetypes:
6095         Add an entry for Sony ATRAC3 audio format with mime-type
6096         used by rmdemux et riff-read
6097
6098 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6099
6100         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6101         Push the buffer store instead of clearing it in case that
6102         the stream is not seekable.
6103
6104 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6105
6106         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6107         (gst_thread_main_loop):
6108         Lock the iteration and the state change so that automatic
6109         negotiation and fixation does not happen at the same time
6110         as the in stream negotiation.
6111
6112 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6113
6114         * configure.ac:
6115           bump nano to cvs
6116
6117 === release 0.8.6 ===
6118
6119 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6120
6121         * configure.ac:
6122         * NEWS:
6123         * RELEASE:
6124         * configure.ac:
6125           releasing 0.8.6, "Narc"
6126
6127 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6128
6129         * configure.ac:
6130           prerel bump
6131
6132 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6133
6134         patch by: Steve Lhomme
6135
6136         * gst/elements/gstfakesrc.c:
6137         * gst/elements/gstidentity.c:
6138         * gst/gstthread.c:
6139           Fix for #153881
6140
6141 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6142
6143         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6144         Fix threadsafety of the crc checking function.
6145
6146 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6147
6148         patch by: Ronald Bultje
6149
6150         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6151         (gst_type_find_element_handle_event),
6152         (gst_type_find_element_chain):
6153         * gst/elements/gsttypefindelement.h:
6154          #153657.
6155          Filter out discont event from seekable sources when typefind
6156          asks them to seek.  Fixes typefind with demuxers for
6157          avi, asf and matroska.
6158
6159 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6160
6161         * docs/gst/gstreamer-sections.txt:
6162         * gst/gstcaps.c:
6163         * gst/gstcaps.h:
6164         * gst/gstpad.c:
6165           Revert preferred caps: (#147789)
6166
6167 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6168
6169         * win32/dirent.c:
6170           fix a memory leak
6171
6172 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6173
6174         * configure.ac:
6175           bump for prerelease
6176
6177 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6178
6179         * docs/Makefile.am:
6180         * docs/manual/elements-api.xml:
6181           restructure so that common stuff is shown first
6182         * docs/manual/init-api.xml:
6183           convert to examples
6184         * docs/manual/manual.xml:
6185         * docs/manuals.mak:
6186         * docs/url.entities:
6187           link to API on the website, possibly override later in build
6188         * examples/manual/.cvsignore:
6189           ignore more
6190         * examples/manual/Makefile.am:
6191           add more examples
6192         * examples/manual/extract.pl:
6193           error out on failure
6194
6195 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6196
6197         * docs/gst/tmpl/gstthread.sgml:
6198         * docs/manual/init-api.xml:
6199         * examples/manual/Makefile.am:
6200           convert two code bits to examples
6201
6202 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6203
6204         * gst/gstelement.c: (gst_element_change_state):
6205           Well, actually, I was about to remove this insane assert when
6206           I noticed Wim already did that. A warning is nice so we can
6207           fix actual ugs (using --g-fatal-warnings and backtraces), so
6208           I added that instead.
6209
6210 2004-09-06  Wim Taymans  <wim@fluendo.com>
6211
6212         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6213         (gst_element_threadsafe_properties_post_run),
6214         (gst_element_set_state), (gst_element_change_state):
6215         Added extra refcounting around various places. 
6216
6217 2004-09-06  Wim Taymans  <wim@fluendo.com>
6218
6219         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6220         Fix debug info.
6221
6222 2004-09-06  Wim Taymans  <wim@fluendo.com>
6223
6224         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6225         (remove_from_group):
6226         Some more debug info.
6227
6228 2004-09-03  Wim Taymans  <wim@fluendo.com>
6229
6230         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
6231         (gst_fakesrc_init), (gst_fakesrc_set_clock),
6232         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
6233         (gst_fakesrc_get), (gst_fakesrc_change_state):
6234         * gst/elements/gstfakesrc.h:
6235         * gst/elements/gstidentity.c: (gst_identity_class_init),
6236         (gst_identity_init), (gst_identity_chain),
6237         (gst_identity_set_property), (gst_identity_get_property),
6238         (gst_identity_change_state):
6239         * gst/elements/gstidentity.h:
6240         Added datarate properties to limit the datarate.
6241
6242 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6243
6244         * gst/autoplug/gstspider.c: (plugin_init):
6245           don't set a rank. We don't want to autoplug by inserting spiders.
6246
6247 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6248
6249         * gst/autoplug/gstspider.c: (gst_spider_class_init),
6250         (gst_spider_identity_plug):
6251           add a template for spider's sink
6252         * gst/gst.c: (gst_register_core_elements):
6253           queue's rank should be NULL, we don't want spider to add it.
6254
6255 2004-08-18  David Schleef  <ds@schleef.org>
6256
6257         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
6258         * docs/libs/Makefile.am: same
6259         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
6260         * docs/random/ds/0.9-planning: random additions
6261         * docs/random/ds/0.9-suggested-changes: same
6262         * gst/gstxml.h: remove vestigal GstXMLNs definition
6263
6264         Preferred caps: (#147789)
6265         * docs/gst/gstreamer-sections.txt: Add symbols
6266         * docs/gst/tmpl/gstcaps.sgml: Add symbols
6267         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6268         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
6269         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
6270         (gst_caps_get_preferred), (gst_caps_set_preferred),
6271         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
6272         (gst_caps_use_preferred): Handle caps preferences
6273         * gst/gstcaps.h: Add caps preferences
6274         * gst/gstpad.c: (gst_pad_link_get_preferred),
6275         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
6276         (gst_pad_renegotiate), (gst_pad_guess_preferred),
6277         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
6278         negotiation.
6279
6280 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6281
6282         * gst/autoplug/gstspideridentity.c:
6283         (gst_spider_identity_request_new_pad):
6284         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
6285         (gst_aggregator_init):
6286         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
6287         (gst_fakesink_init):
6288         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
6289         (gst_fakesrc_init):
6290         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
6291         (gst_fdsink_init):
6292         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
6293         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
6294         (gst_filesink_init):
6295         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
6296         (gst_filesrc_init):
6297         * gst/elements/gstidentity.c: (gst_identity_base_init),
6298         (gst_identity_init):
6299         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
6300         (gst_multifilesrc_init):
6301         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
6302         (gst_pipefilter_init):
6303         * gst/elements/gststatistics.c: (gst_statistics_base_init),
6304         (gst_statistics_init):
6305         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
6306         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
6307           s/gst_pad_new/&_from_template/
6308           register pad templates in the base_init function
6309           add static pad template definitions
6310
6311 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6312
6313         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
6314         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
6315         * testsuite/refcounting/pad.c: (main):
6316         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
6317           s/gst_pad_new/&_from_template/
6318           prepare deprecation of gst_pad_new
6319
6320 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
6321
6322         patch by: Luca Ognibene <skaboy81@virgilio.it>
6323
6324         * gst/gstcaps.c:
6325         * gst/gstelement.c:
6326         * gst/gstpad.c:
6327         * gst/gstxml.c:
6328           fix memleaks.  Fixes #150001
6329
6330 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6331
6332         * docs/random/ds/0.9-suggested-changes:
6333           add notes - mostly about pad templates
6334
6335 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
6336
6337         * win32/GStreamer.vcproj:
6338           temporary locale files are .gmo not .mo
6339
6340 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6341
6342         * configure.ac: bump nano to cvs
6343
6344 === release 0.8.5 ===
6345
6346 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6347
6348         * configure.ac:
6349           releasing 0.8.5, "Stuttgart"
6350         * NEWS:
6351         * RELEASE:
6352         * configure.ac:
6353         * docs/random/release:
6354           updates for release
6355
6356 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
6357
6358         patch by: Wim Taymans (wim@fluendo.com)
6359
6360         * gst/gstbuffer.c:
6361         * gst/gstindex.h:
6362         * libs/gst/dataprotocol/dataprotocol.c:
6363           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
6364
6365 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6366
6367         * Makefile.am:
6368         * win32/MANIFEST:
6369           add win32 dir to the build.  Fixes #149981.
6370
6371 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6372
6373         * configure.ac:
6374           bump libtool versioning
6375         * gst/gststructure.c:
6376           mark function as static
6377         * po/af.po:
6378         * po/az.po:
6379         * po/ca.po:
6380         * po/cs.po:
6381         * po/en_GB.po:
6382         * po/fr.po:
6383         * po/nl.po:
6384         * po/sq.po:
6385         * po/sr.po:
6386         * po/sv.po:
6387         * po/tr.po:
6388         * po/uk.po:
6389           translations update
6390         * win32/README.txt:
6391           trademark protection
6392
6393 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6394
6395         * configure.ac:
6396           fix GST_ORIGIN
6397           set GST_PACKAGE to source, and distinguish between release and other
6398         * tools/gst-inspect.c:
6399           print out plugin an element factory is part of so we see this info
6400
6401 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6402
6403         * docs/gst/gstreamer-sections.txt:
6404         * docs/gst/tmpl/gstbuffer.sgml:
6405         * docs/gst/tmpl/gstschedulerfactory.sgml:
6406           reorder docs a little, make GstBuffer's more sensible.
6407         * gst/gstbuffer.h:
6408           API: added GST_BUFFER_FLAG_DELTA_UNIT
6409         * gst/gstscheduler.c:
6410           comment API addition
6411
6412 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6413
6414         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6415           work with non-regular files that can be mmapped (like /dev/zero)
6416         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
6417           get rid of typefinds that require a seek when we can't seek instead
6418           of trying them over and over again
6419         * tools/gst-launch.c: (idle_func), (error_cb), (main):
6420           return non-zero failure value when the pipeline was interrupted or
6421           an error occurred
6422
6423 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6424
6425         * win32/config.h:
6426         * win32/GStreamer.vcproj:
6427           compile and install the locales
6428
6429 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6430
6431         * gst/gstvalue.c:
6432           fix a possible memory leak under Windows
6433
6434 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
6435
6436         * win32/GStreamer.vcproj:
6437           fix a memory leak that occured under Windows
6438         * win32/gstreamer.def:
6439           add gst_scheduler_register
6440
6441 2004-08-11  Benjamin Otte  <otte@gnome.org>
6442
6443         * docs/gst/gstreamer-sections.txt:
6444         * gst/gstscheduler.c: (gst_scheduler_register):
6445         * gst/gstscheduler.h:
6446           API:
6447           add gst_scheduler_register shortcut similar to gst_element_register
6448         * gst/schedulers/entryscheduler.c: (plugin_init):
6449         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
6450         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
6451           use it
6452
6453 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
6454
6455         * gst/gstvalue.h:
6456           fix a memory leak that occured under Windows
6457
6458 2004-08-10  Colin Walters  <walters@redhat.com>
6459
6460         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
6461         Don't use O_EXCL to open temporary registry.  It will prevent
6462         registry creation if a temporary one already exists, which
6463         is unnecessary.
6464
6465 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6466
6467         * docs/gst/gstreamer-sections.txt:
6468         * docs/gst/tmpl/gstvalue.sgml:
6469           remove some valuable stuff from the documentation due to the use of GST_EXPORT
6470
6471 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6472
6473         * win32/gstbytestream.vcproj:
6474         * win32/gstelements.vcproj:
6475         * win32/gstgetbits.vcproj:
6476         * win32/gst-inspect.vcproj:
6477         * win32/gst-launch.vcproj:
6478         * win32/gstoptimalscheduler.vcproj:
6479         * win32/GStreamer.vcproj:
6480         * win32/gst-register.vcproj:
6481         * win32/gstspider.vcproj:
6482           update the include and lib dirs to fit standard libraries as
6483           described in the Win32 manual
6484
6485 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6486
6487         * win32/config.h:
6488         * win32/gstversion.h:
6489           enable NLS again, push the version number for the coming 0.8.5 release
6490
6491 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
6492
6493         * gst/gstvalue.h:
6494           export gst_type_XXX for windows DLLs
6495
6496 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6497
6498         * docs/faq/gst-uninstalled:
6499           fix PKG_CONFIG_PATH and PYTHONPATH
6500         * gst/schedulers/Makefile.am:
6501           cleanup
6502         * libs/gst/bytestream/bytestream.c:
6503           remove newline
6504         * po/LINGUAS:
6505         * po/sq.po:
6506           adding Albanian translation (Laurent Dhima)
6507         * po/cs.po:
6508           updated
6509
6510 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6511
6512         * po/ca.po:
6513         * po/sv.po:
6514           updated translations
6515
6516 2004-08-04  Benjamin Otte  <otte@gnome.org>
6517
6518         * tests/mass_elements.c: (main):
6519           allow specifying src and sink element explicitly, so I can test
6520           videotestsrc instead of fakesrc
6521
6522 2004-08-04  Benjamin Otte  <otte@gnome.org>
6523
6524         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
6525         (gst_structure_id_empty_new), (gst_structure_empty_new),
6526         (gst_structure_copy):
6527           add gst_structure_id_empty_new_with_size to allow preallocating
6528           value array sizes. Use this in gst_structure_copy to get rid of
6529           reallocs.
6530           don't do quark=>string=>quark when copying structures
6531
6532 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
6533
6534         * docs/manual/win32.xml:
6535         * win32/README.txt:
6536           update documentation with the clean version of dependencies
6537
6538 2004-08-03  Benjamin Otte  <otte@gnome.org>
6539
6540         * gst/schedulers/entryscheduler.c:
6541         (gst_entry_scheduler_remove_element):
6542           fix for GST_DISABLE_DEBUG
6543         * tools/gst-launch.c: (print_tag):
6544           fixes for G_DISABLE_ASSERT
6545
6546 2004-08-03  Benjamin Otte  <otte@gnome.org>
6547
6548         * gst/gst.c: (gst_register_core_elements):
6549           fix for G_DISABLE_ASSERT
6550         * gst/gstinfo.c: (__gst_in_valgrind):
6551           add for GST_DISABLE_DEBUG
6552
6553 2004-08-03  Benjamin Otte  <otte@gnome.org>
6554
6555         * gst/parse/parse.l:
6556           fix for G_DISABLE_ASSERT
6557
6558 2004-08-03  Wim Taymans  <wim@fluendo.com>
6559
6560         * gst/gstbin.c: (gst_bin_get_type),
6561         (gst_bin_child_state_change_func):
6562         * gst/gstthread.c: (gst_thread_change_state):
6563         Backported some debug logging from a reverted patch
6564         Don't try to destroy the thread twice. Added some more
6565         debugging in GstThread. Unlock and signal even if we
6566         are in the thread context.
6567
6568 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6569
6570         * po/uk.po:
6571           updated translation
6572
6573 2004-07-30  David Schleef  <ds@schleef.org>
6574
6575         * gst/gstatomic_impl.h: Enable atomic code for x86_64
6576
6577 2004-07-29  David Schleef  <ds@schleef.org>
6578
6579         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
6580         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
6581
6582 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6583
6584         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6585         (gst_bin_add_func), (gst_bin_remove_func),
6586         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
6587         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
6588         (gst_bin_change_state_norecurse), (gst_bin_dispose),
6589         (gst_bin_sync_children_state):
6590         * gst/gstbin.h:
6591         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
6592         (gst_thread_change_state):
6593         * testsuite/states/Makefile.am:
6594           revert state change patches as agreed so we can rework them
6595           gradually
6596
6597 2004-07-29  Benjamin Otte  <otte@gnome.org>
6598
6599         * libs/gst/control/Makefile.am:
6600           link to libgstreamer (fixes Debian bug 262019, see
6601           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
6602
6603 2004-07-29  Wim Taymans  <wim@fluendo.com>
6604
6605         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6606         (check_from_fraction_convert), (transform_test), (main):
6607         Make the test less pedantic about float roundoff errors.
6608
6609 2004-07-29  Benjamin Otte  <otte@gnome.org>
6610
6611         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
6612         (gst_filesrc_srcpad_event):
6613           make seek events to before start/after end of file not fail, but
6614           seek to start/end instead
6615         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
6616           add more output
6617
6618 2004-07-29  Benjamin Otte  <otte@gnome.org>
6619
6620         * gst/gstpad.c: (gst_pad_set_explicit_caps):
6621           check that caps are fixed
6622         * gst/gstpad.c: (gst_pad_template_new):
6623           don't try to simplify caps, costs too much time on gst_init
6624         * gst/gstplugin.c: (gst_plugin_add_feature):
6625           G_ERROR if features are added twice
6626         * gst/gsttypefind.c: (gst_type_find_register):
6627         * gst/gstelementfactory.c: (gst_element_register):
6628           don't add features twice
6629         * docs/random/ds/0.9-suggested-changes:
6630           add note about possible gst_init optimization
6631
6632 2004-07-28  David Schleef  <ds@schleef.org>
6633
6634         * testsuite/elements/Makefile.am:
6635         * testsuite/elements/struct_i386.h:
6636         * testsuite/elements/struct_size.c: (main):  A little test
6637         to keep distcheck from working if someone changes a structure
6638         size accidentally.
6639
6640 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6641
6642         * docs/libs/Makefile.am:
6643         * docs/libs/gstreamer-libs-docs.sgml:
6644         * docs/libs/gstreamer-libs-sections.txt:
6645         * docs/libs/tmpl/gstbytestream.sgml:
6646         * docs/libs/tmpl/gstcontrol.sgml:
6647         * docs/libs/tmpl/gstdataprotocol.sgml:
6648         * docs/libs/tmpl/gstgetbits.sgml:
6649         * libs/gst/bytestream/Makefile.am:
6650         * libs/gst/bytestream/bytestream.c:
6651         * libs/gst/bytestream/bytestream.h:
6652         * libs/gst/control/Makefile.am:
6653         * libs/gst/dataprotocol/Makefile.am:
6654         * libs/gst/getbits/Makefile.am:
6655         * libs/gst/getbits/getbits.h:
6656           various doc and style fixes, adding bytestream to libs docs.
6657
6658 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6659
6660         * docs/gst/gstreamer-docs.sgml:
6661         * docs/libs/Makefile.am:
6662         * docs/libs/gstreamer-libs-docs.sgml:
6663         * docs/libs/gstreamer-libs-sections.txt:
6664         * libs/gst/control/dparam.c:
6665           more doc fixes.  gst-libs docs now build the same way as gst.
6666
6667 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6668
6669         * configure.ac:
6670         * testsuite/Makefile.am:
6671         * testsuite/bins/Makefile.am:
6672         * testsuite/caps/Makefile.am:
6673         * testsuite/cleanup/Makefile.am:
6674         * testsuite/clock/Makefile.am:
6675         * testsuite/debug/Makefile.am:
6676         * testsuite/dlopen/Makefile.am:
6677         * testsuite/dynparams/Makefile.am:
6678         * testsuite/elements/.cvsignore:
6679         * testsuite/elements/Makefile.am:
6680         * testsuite/enumcaps/Makefile.am:
6681         * testsuite/enumcaps/enumcaps.c:
6682         * testsuite/ghostpads/Makefile.am:
6683         * testsuite/indexers/Makefile.am:
6684         * testsuite/negotiation/Makefile.am:
6685         * testsuite/parse/Makefile.am:
6686         * testsuite/plugin/Makefile.am:
6687         * testsuite/refcounting/Makefile.am:
6688         * testsuite/schedulers/.cvsignore:
6689         * testsuite/states/Makefile.am:
6690         * testsuite/tags/Makefile.am:
6691         * testsuite/threads/Makefile.am:
6692           fold enumcaps into caps dir
6693           clean up Makefile.am's for testsuite
6694
6695 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
6696
6697         * docs/gst/Makefile.am:
6698         * docs/libs/Makefile.am:
6699           clean up docs build.  Fixes needless rebuilding of template files.
6700
6701 2004-07-28  Wim Taymans  <wim@fluendo.com>
6702
6703         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
6704         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
6705         Make sure that a bin state change tries to keep the children
6706         in sync. 
6707         Added debug logging to the thread.
6708
6709 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6710
6711         * win32/GStreamer.vcproj:
6712         * win32/gstreamer.def:
6713           more exports for the plugins
6714
6715 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
6716
6717         * win32/gstgetbits.vcproj:
6718         * win32/gstgetbits.def:
6719         * win32/msvc71.sln:
6720           add support for the getbits plugin
6721
6722 2004-07-27  Wim Taymans  <wim@fluendo.com>
6723
6724         * gst/gstvalue.c: (gst_value_transform_double_fraction),
6725         (gst_value_transform_fraction_double), (_gst_value_initialize):
6726         * testsuite/caps/Makefile.am:
6727         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
6728         (check_from_fraction_convert), (transform_test), (main):
6729         Added transform functions between double and fraction.
6730         Added testcase to verify transforms
6731
6732 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6733
6734         * win32/GStreamer.vcproj:
6735           rename GStreamer-0.8.lib to libgstreamer.lib
6736
6737 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6738
6739         * win32/gstelements.vcproj:
6740         * win32/gstoptimalscheduler.vcproj:
6741           fixes for the Release build
6742
6743 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6744
6745         * win32/config.h:
6746           update the version number
6747
6748 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6749
6750         * win32/GStreamer.vcproj:
6751           add gstinterface to the build
6752
6753 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
6754
6755         * win32/gstreamer.def:
6756           add many definitions needed by plugins,
6757           GST_CAT_DEFAULT only available in the Debug build ?
6758
6759 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6760
6761         * gst/gstelement.c: (gst_element_set_eos_recursive):
6762           various whitespace fixes.
6763           doc fix, fixes #148497
6764
6765 2004-07-25  Benjamin Otte  <otte@gnome.org>
6766
6767         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
6768           don't delay links on the sink elements, it causes unnegotiated
6769           links.
6770         * gst/elements/gsttypefindelement.c:
6771         (gst_type_find_element_base_init):
6772           add our padtemplates, we indeed do have some.
6773         * gst/elements/gsttypefindelement.c:
6774         (gst_type_find_element_handle_event),
6775         (gst_type_find_element_chain):
6776           don't push data when typefinding failed.
6777         * gst/gstpad.c: (gst_pad_link_fixate):
6778           check that no fixate function returns empty caps.
6779         * gst/gstpad.c: (gst_pad_push):
6780           check that the link is negotiated before data gets pushed.
6781         * tools/gst-register.c: (main):
6782           don't assert (fixes #148283)
6783
6784 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6785
6786         * docs/gst/gstreamer-sections.txt:
6787         * docs/gst/tmpl/gstconfig.sgml:
6788           add GST_PLUGIN_EXPORT definition
6789
6790 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6791
6792         * gst/gstplugin.h:
6793         * gst/gstconfig.h.in:
6794         * win32/gstconfig.h:
6795         * win32/gstelements.def:
6796         * win32/gstelements.vcproj:
6797         * win32/gstoptimalscheduler.def:
6798         * win32/gstoptimalscheduler.vcproj:
6799         * win32/gstspider.def:
6800         * win32/gstspider.vcproj:
6801           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
6802
6803 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6804
6805         * docs/gst/gstreamer-sections.txt:
6806           remove GST_CAT_DEFAULT because the type has changed
6807
6808 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6809
6810         * win32/gstbytestream.vcproj:
6811         * win32/gstelements.vcproj:
6812         * win32/gst-inspect.vcproj:
6813         * win32/gst-launch.vcproj:
6814         * win32/gstoptimalscheduler.vcproj:
6815         * win32/GStreamer.vcproj:
6816         * win32/gst-register.vcproj:
6817         * win32/gstspider.vcproj:
6818         * win32/msvc71.sln:
6819           Copy the files where needed after building, The testsuite will be
6820           built separately
6821
6822 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
6823
6824         * win32/config.h:
6825         * win32/README.txt:
6826         * docs/manual/win32.xml:
6827         Fixed the plugin and GStreamer location
6828
6829 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6830
6831         * win32/gstreamer.def:
6832         More exports for the plugins
6833
6834 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6835
6836         * gst/gstinfo.h:
6837         Marc was right, we need to export literally GST_CAT_DEFAULT
6838
6839 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6840
6841         * win32/config.h:
6842         NLS crashes in gettext, disabled until this is solved
6843
6844 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6845
6846         * win32/gst-inspect.vcproj:
6847         * win32/gst-launch.vcproj:
6848         Should use NLS when available
6849
6850 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6851
6852         * gst/registries/gstxmlregistry.c:
6853         removing the file doesn't seem to be a good idea on Linux
6854
6855 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
6856
6857         * gst/registries/gstxmlregistry.c:
6858         Remove the registry before renaming the tempfile (needed for Windows)
6859
6860 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6861
6862         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
6863         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
6864         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
6865         * gst/elements/gstmultifilesrc.h:
6866         Added newmedia property so it generates newmedia events between each
6867         file when property is set, as well as fixed eos handling
6868
6869 2004-07-22  David Schleef  <ds@schleef.org>
6870
6871         * gst/gststructure.c: (gst_structure_id_empty_new),
6872         (gst_structure_empty_new):  Set type field correctly.
6873         * gst/gststructure.h: Check type field correctly.
6874         * testsuite/caps/Makefile.am:
6875         * testsuite/caps/structure.c: (test1), (main): Add a very small
6876         test for structures.
6877
6878 2004-07-22  David Schleef  <ds@schleef.org>
6879
6880         * docs/random/ds/0.9-suggested-changes: more comments
6881         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
6882
6883 2004-07-22  Benjamin Otte  <otte@gnome.org>
6884
6885         * gst/gstelementfactory.c: (gst_element_register):
6886           set the factory in the class struct, so gst_element_get_factory
6887           actually works
6888         * gst/parse/grammar.y:
6889           set element to playing when it gets unlocked as we can't rely on the
6890           bin state - all elements in the bin state might still be locked in
6891           NULL)
6892
6893 2004-07-22  Benjamin Otte  <otte@gnome.org>
6894
6895         * gst/gstelement.c: (gst_element_set_state_func):
6896           make this a static function
6897
6898 2004-07-22  Wim Taymans  <wim@fluendo.com>
6899
6900         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6901         (gst_opt_scheduler_pad_link):
6902         fix 147894-2 and the group_link problem.
6903
6904 2004-07-22  Wim Taymans  <wim@fluendo.com>
6905
6906         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
6907         (handoff_identity), (main):
6908         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
6909         (handoff_identity), (main):
6910         * testsuite/schedulers/Makefile.am:
6911         * testsuite/schedulers/group_link.c: (main):
6912         Show bug in scheduler when linking chain and loop based element 
6913         where the chain based element was not yet in a group.
6914
6915 2004-07-21  Benjamin Otte  <otte@gnome.org>
6916
6917         * gst/.cvsignore:
6918         * gst/autoplug/.cvsignore:
6919         * gst/elements/.cvsignore:
6920         * gst/indexers/.cvsignore:
6921         * libs/gst/bytestream/.cvsignore:
6922         * libs/gst/control/.cvsignore:
6923         * libs/gst/getbits/.cvsignore:
6924         * testsuite/states/.cvsignore:
6925         * testsuite/threads/.cvsignore:
6926           keep this up to date, since I seem to be the only one who cares
6927           about not missing files on commits (editor's note: no you don't,
6928           but feel free to change them at the time you add stuff instead
6929           of later on)
6930
6931 2004-07-21  Benjamin Otte  <otte@gnome.org>
6932
6933         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
6934         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
6935         (gst_bin_child_state_change_func), (set_kid_state_func),
6936         (gst_bin_set_state), (gst_bin_change_state_norecurse):
6937           make state changes work correctly and reentrant (so removing
6938           elements from bins during state changes of bins doesn't cause
6939           segfaults or even wrong states)
6940           add debugging category and debugging output to print children states
6941         * gst/gstbin.c: (gst_bin_dispose): 
6942           add some assertion checks
6943         * gst/gstbin.h:
6944         * gst/gstbin.c: (gst_bin_sync_children_state):
6945           deprecate this function - it just does gst_bin_set_state (bin,
6946           GST_STATE (bin)) 
6947         * testsuite/threads/queue.c: (main):
6948           don't use gst_bin_sync_children_state anymore
6949         * testsuite/states/Makefile.am:
6950         * testsuite/states/bin.c:
6951           test that the state changes of bins work as expected
6952         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
6953           some adjustments to change states correctly, too
6954         * gst/gstthread.c: (gst_thread_change_state):
6955           don't enable/disable "threadsafe" properties, they're unused and
6956           cause random segfaults
6957         * testsuite/threads/Makefile.am:
6958           the queue check randomly passes now, ignore it
6959
6960 2004-07-21  Benjamin Otte  <otte@gnome.org>
6961
6962         * gst/gstpad.c:
6963           check if data is NULL before outputting debug info. (fixes #145100)
6964
6965 2004-07-21  Benjamin Otte  <otte@gnome.org>
6966
6967         * gst/schedulers/entryscheduler.c:
6968         (gst_entry_scheduler_loop_wrapper),
6969         (gst_entry_scheduler_chain_wrapper),
6970         (gst_entry_scheduler_get_wrapper):
6971           reset the state when the cothread starts, so we don't get assertion
6972           failures on restarting of cothreads
6973
6974 2004-07-20  Benjamin Otte  <otte@gnome.org>
6975
6976         * gst/gstelement.c: (gst_element_link_pads_filtered):
6977           use correct sinkpad, if only sinkpad is specified, but not srcpad
6978           (fixes #147889)
6979         * gst/gstelement.c: (gst_element_set_state_func),
6980         (gst_element_change_state): ref/unref the element, signal handlers
6981         could get rid of the element otherwise
6982
6983 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6984
6985         * docs/random/ds/0.9-suggested-changes:
6986           Make note about renaming fixed-list to array.
6987         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
6988         (_gst_value_initialize):
6989           Add array intersections.
6990         * testsuite/caps/intersect2.c: (main):
6991           Add test for array intersections.
6992
6993 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6994
6995         * configure.ac: back to cvs
6996
6997 === release 0.8.4 ===
6998
6999 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7000
7001         * configure.ac:
7002           releasing 0.8.4, "Paella"
7003           bump libtool versioning
7004
7005 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7006
7007         * po/LINGUAS:
7008         * po/ca.po:
7009           adding Catalan translation (Jordi Mallach)
7010
7011 2004-07-20  Wim Taymans  <wim@fluendo.com>
7012
7013         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7014         (handoff_identity), (main):
7015         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7016         (handoff_identity), (main):
7017         * testsuite/schedulers/Makefile.am:
7018         Added failing testcase for variant of #147894
7019
7020 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7021
7022         patch by: David Moore
7023
7024         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7025         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7026         (group_migrate_connected):
7027         * testsuite/schedulers/Makefile.am:
7028           fix for #142813 (Deadlock in optimal scheduler)
7029
7030 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7031
7032         patch by: Wim Taymans
7033
7034         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7035         (gst_opt_scheduler_schedule_run_queue),
7036         (gst_opt_scheduler_get_wrapper), (get_group),
7037         (group_migrate_connected):
7038         * testsuite/schedulers/Makefile.am:
7039           fix for #147819 (Add some checks in the opt scheduler)
7040
7041 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7042
7043         patch by: Benjamin Otte
7044
7045         * gst/gstelementfactory.c: (__gst_element_details_set):
7046           fix for #147929: running gst-register in non-utf8 locale can cause
7047           invalid registry
7048
7049 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7050
7051         patch by: Wim Taymans
7052
7053         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7054         (group_has_element), (element_get_reachables_func),
7055         (group_migrate_connected):
7056           fix for #147894 (opt scheduler decoupled elements mismanagement)
7057         * testsuite/schedulers/Makefile.am:
7058           testsuite app now passes
7059
7060 2004-07-19  Wim Taymans  <wim@fluendo.com>
7061
7062         * testsuite/schedulers/147819.c: (handoff_identity1),
7063         (handoff_identity2), (main):
7064         * testsuite/schedulers/Makefile.am:
7065         Added testcase for bug 147819
7066
7067 2004-07-19  Wim Taymans  <wim@fluendo.com>
7068
7069         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7070         (handoff_identity), (main):
7071         * testsuite/schedulers/Makefile.am:
7072         Added testcase for bug 147894
7073
7074 2004-07-16  Wim Taymans  <wim@fluendo.com>
7075
7076         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7077         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7078         * testsuite/schedulers/Makefile.am:
7079         Added testsuite for bug 142183 in its two incarnations. Refcount
7080         is not increased for scheduled elements and threadsafe properties
7081         mutexes are not properly unlocked.
7082
7083 2004-07-16  Wim Taymans  <wim@fluendo.com>
7084
7085         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7086         (create_chain), (destroy_chain), (create_group), (destroy_group),
7087         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7088         (group_dec_link), (gst_opt_scheduler_pad_link),
7089         (group_inc_links_for_element), (group_migrate_connected):
7090         Call group_inc_link with the proper src->sink ordering -- 
7091         break this, and we break sort_chain. patch from wingo for bug
7092         147713.
7093         Partially revert patch 1.89. When adding a loop based element to 
7094         the scheduler, the links to other groups are automatically followed
7095         and incremented. This should not happen because the bin will call
7096         pad_link explicitly for those connection, resulting in them counted 
7097         twice. Results in assertion failure on pipeline cleanup.
7098
7099 2004-07-16  Wim Taymans  <wim@fluendo.com>
7100
7101         * testsuite/schedulers/143777-2.c: (main):
7102         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7103         (main):
7104         * testsuite/schedulers/Makefile.am:
7105         Added cleanup code to testcase 143777-2.
7106         Added testcase to show bug 147713, does not really show the
7107         deadlock as I can't figure out how to trigger it, but it does
7108         demonstrate bad ordering in the scheduler.
7109
7110 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7111
7112         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7113           change strndup to g_strndup.  Fixes #147707
7114
7115 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7116
7117         * po/af.po:
7118         * po/az.po:
7119         * po/cs.po:
7120         * po/en_GB.po:
7121         * po/fr.po:
7122         * po/nl.po:
7123         * po/sr.po:
7124         * po/sv.po:
7125         * po/tr.po:
7126         * po/uk.po:
7127           updated translations
7128
7129 2004-07-16  Benjamin Otte  <otte@gnome.org>
7130
7131         * gst/gstvalue.c: (gst_greatest_common_divisor):
7132           use ints and return ints, fractions only use ints, too, so this
7133           avoids accidently casting multiplications to unsigned
7134         (gst_value_lcopy_fraction): it's ints, not uint32
7135         (gst_value_set_fraction): disallow minint, multiplying and negation
7136           are broken with it
7137         (gst_value_fraction_multiply): fix to make large numbers work and get
7138         rid of the assumption that the multiplication of two ints fits an
7139         int64 - dunno if that's true for all systems
7140         * testsuite/caps/Makefile.am:
7141         * testsuite/caps/fraction-multiply-and-zero.c:
7142         (check_multiplication), (check_equal), (zero_test), (main):
7143           add tests for all the stuff above
7144         * testsuite/caps/value_compare.c: (test1):
7145           fix comment
7146         * tests/.cvsignore:
7147         * testsuite/caps/.cvsignore:
7148         * testsuite/debug/.cvsignore:
7149         * testsuite/dlopen/.cvsignore:
7150         * testsuite/states/.cvsignore:
7151           get up to date
7152
7153 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7154
7155         * docs/manual/bins-api.xml:
7156         * docs/manual/factories.xml:
7157         * docs/manual/helloworld.xml:
7158         * docs/manual/links-api.xml: 
7159           fixes for out of date info, incorrect info and grammar
7160
7161 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7162
7163         * docs/manual/pads.xml:
7164         * docs/manual/pads-api.xml: grammar fix
7165
7166 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7167
7168         * docs/manual/pads-api.xml: typo + grammar fix
7169
7170 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7171
7172         * docs/gst/gstreamer-sections.txt:
7173           add new symbols
7174         * docs/gst/tmpl/gstelement.sgml:
7175         * docs/gst/tmpl/gstpad.sgml:
7176         * docs/gst/tmpl/gsttypes.sgml:
7177         * docs/gst/tmpl/gstvalue.sgml:
7178           update docs
7179         * gst/gststructure.c: (gst_structure_set_valist),
7180         (gst_structure_from_abbr), (gst_structure_to_abbr):
7181         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7182         (gst_greatest_common_divisor), (gst_value_init_fraction),
7183         (gst_value_copy_fraction), (gst_value_collect_fraction),
7184         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7185         (gst_value_get_fraction_numerator),
7186         (gst_value_get_fraction_denominator),
7187         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7188         (gst_value_deserialize_fraction),
7189         (gst_value_transform_fraction_string),
7190         (gst_value_transform_string_fraction),
7191         (gst_value_compare_fraction), (_gst_value_initialize):
7192         * gst/gstvalue.h:
7193           adding GstFraction GValue type, get/set, and multiply
7194         * testsuite/caps/Makefile.am:
7195         * testsuite/caps/fraction.c: (test), (main):
7196         * testsuite/caps/string-conversions.c: (main):
7197         * testsuite/caps/value_compare.c: (test1), (main):
7198           add regression tests for GstFraction
7199
7200 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7201         
7202         * docs/manual/init-api.xml: Grammar fix
7203
7204 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7205
7206         * docs/manual/states.xml: Fix inconsistent information
7207
7208 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7209
7210         * gst/gstelement.c: (gst_element_set_state):
7211         * gst/gstpad.c: (gst_pad_try_set_caps):
7212         * gst/gststructure.c:
7213         * gst/gstthread.c: (gst_thread_child_state_change):
7214         * gst/gstvalue.c: (gst_value_compare_double):
7215         * gst/gstvalue.h:
7216         * testsuite/parse/parse1.c: (main):
7217           debugging additions and style cleanups
7218
7219 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7220
7221         * docs/manual/states.xml: Grammar fix
7222
7223 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7224
7225         * docs/manual/pads.xml: Grammar fix
7226
7227 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7228
7229         * docs/manual/elements.xml: Fixed image reference
7230
7231 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7232
7233         * docs/manual/goals.xml: Grammar fix
7234
7235 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7236
7237         * docs/manual/motivation.xml:
7238         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
7239
7240 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7241
7242         * docs/manual/motivation.xml: Fix spelling
7243
7244 2004-07-15  Benjamin Otte  <otte@gnome.org>
7245
7246         * gst/gstelement.h: 
7247           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
7248           strings.
7249         * gst/gstelement.c (gst_element_class_init):
7250           GError's are boxed, not objects
7251         * gst/gstmarshal.list:
7252           update list for the fixed error signal
7253
7254 2004-07-14  Andy Wingo  <wingo@pobox.com>
7255
7256         * gst/gsttag.c: Add a tag merge func for pointers. The header was
7257         there all along, but the function wasn't. (guile-gstreamer's build
7258         system uses the address of the function -- I wasn't actually
7259         trying to use this.)
7260
7261 2004-07-14  Andy Wingo  <wingo@pobox.com>
7262
7263         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
7264         as gst_pad_proxy_pad_link) just link to every other pad when they
7265         are called. In the case where the graph has cycles, this will mean
7266         that a call to try_set_caps will recurse. Allow this recursion
7267         and return OK, while we wait for the first try_set_caps to give a
7268         proper return value.
7269         (gst_pad_link_call_link_functions): Since this function is the
7270         only one to set the NEGOTIATING flag on a pad, if the flag is set
7271         it means that the link functions have indirectly recursed. If this
7272         happens, error out to avoid infinite recursion and an eventual
7273         SEGV.
7274         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
7275         (gst_pad_proxy_getcaps): Intersect the result with the template
7276         caps to ensure that the return value is valid.
7277
7278 2004-07-14  Andy Wingo  <wingo@pobox.com>
7279
7280         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
7281         one refcount, the calling function is the owner of the buffer.
7282
7283 2004-07-14  Wim Taymans  <wim@fluendo.com>
7284
7285         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7286         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7287         Fix stupid warning when an element is to be migrated but
7288         is already migrated.
7289
7290 2004-07-14  Wim Taymans  <wim@fluendo.com>
7291
7292         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
7293         (gst_opt_scheduler_pad_link), (group_migrate_connected):
7294         Make sure that a single non-loop-based element does not 
7295         end up in a group. This fixes the testsuite again.
7296
7297 2004-07-14  Wim Taymans  <wim@fluendo.com>
7298
7299         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7300         (add_to_group), (merge_groups), (schedule_group),
7301         (gst_opt_scheduler_get_wrapper), (group_elements),
7302         (group_dec_link), (gst_opt_scheduler_pad_link),
7303         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
7304         (gst_opt_scheduler_iterate):
7305         move isolated groups to a new chain.
7306         Emit a warning instead of segfaulting in some error cases.
7307         Fix a bug where the link count between groups was not calculated 
7308         correctly. Fixes #144510.
7309
7310 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
7311         * gst/elements/gstfilesrc.c:
7312           Binary files support under Windows now OK
7313       
7314 2004-07-13  Benjamin Otte  <otte@gnome.org>
7315
7316           compatibility fixes for Solaris 8/gcc 2.95
7317         * configure.ac:
7318           include libintl libs in LDFLAGS
7319         * gstvalue.c (gst_value_deserialize_buffer):
7320           cast isxdigit stuff to int to silence compiler warning
7321
7322 2004-07-12  Benjamin Otte  <otte@gnome.org>
7323
7324         * gst/gsttypes.h:
7325           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
7326           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
7327           just causes support madness
7328         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7329           make it work without this
7330         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
7331         (gst_file_index_commit):
7332           glib IO channels don't want binary mode
7333         * testsuite/bytestream/filepadsink.c: (main):
7334         * testsuite/bytestream/test1.c: (read_param_file):
7335           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
7336
7337 2004-07-12  Benjamin Otte  <otte@gnome.org>
7338
7339         * gst/gstelement.c: (gst_element_class_init),
7340         (gst_element_set_state), (gst_element_set_state_func):
7341           virutalize gst_element_set_state, use set_state member in class
7342           struct that was already added in 0.7 for this.
7343         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
7344         (gst_bin_change_state):
7345           make gst_bin_foreach works similar to other foreach functions, plug
7346           memleaks in it. Make functions using it work with the new approach.
7347           Document gst_bin_foreach, so it can be exported if we want to
7348         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
7349           use virtualized set_state to make set_state on bins set the state of
7350           all its children.
7351
7352 2004-07-12  Benjamin Otte  <otte@gnome.org>
7353
7354         * configure.ac:
7355           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
7356           http://bugs.gentoo.org/show_bug.cgi?id=53967)
7357         * gst/gstpad.c: (gst_pad_alloc_buffer):
7358           allow buffer_alloc functions to return NULL and allocate a normal
7359           buffer in that case
7360
7361 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7362         * gst/elements/gstfilesink.c:
7363         * gst/elements/gstfilesrc.c:
7364         * gst/indexers/gstfileindex.c:
7365         * gst/gsttypes.h:
7366         * testsuite/bytestream/filepadsink.c:
7367         * testsuite/bytestream/test1.c:
7368           Handle binary files under Windows
7369
7370 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7371         * docs/manual/win32.xml:
7372         * win32/config.h:
7373         * win32/gst-register.vcproj:
7374         * win32/gstreamer.def:
7375           Update to another gettext public build
7376
7377 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
7378         * gst/gstplugin.c:
7379           Fix an impossible C syntax
7380         * win32/config.h:
7381           Disable i18n under Windows for the moment
7382         * win32/gst-register.vcproj:
7383           Use this configuration
7384
7385 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
7386         * docs/manual/quotes.xml:
7387           Keep the quotes file alive
7388         * docs/random/ds/0.9-suggested-changes:
7389           Add the suggestion of including a 'rowstride' as part of video
7390           format caps
7391
7392 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7393
7394         * gst/gstelement.c: (gst_element_set_state),
7395         (gst_element_change_state):
7396           d'oh.  Set PENDING state correctly before forcing bin to change.
7397         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7398         (gst_structure_parse_fixed_list):
7399         * gst/schedulers/gstoptimalscheduler.c:
7400         (gst_opt_scheduler_state_transition):
7401         * testsuite/states/parent.c: (main):
7402           remove comment now that it's fixed.
7403
7404 2004-07-11  Benjamin Otte  <otte@gnome.org>
7405
7406         * gst/gstclock.h:
7407           GST_SECOND shouldn't cause a conversion to unsigned.
7408         * testsuite/clock/.cvsignore:
7409         * testsuite/clock/Makefile.am:
7410         * testsuite/clock/signedness.c: (main):
7411           make sure it never will again
7412
7413 2004-07-11  Andy Wingo  <wingo@pobox.com>
7414
7415         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
7416         whose state is higher than the bin state, raise the bin state to
7417         ensure that bin state := highest child state.
7418         
7419 2004-07-11  Andy Wingo  <wingo@pobox.com>
7420
7421         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
7422         procedure on the children of a bin. Assumes that the procedure can
7423         change the set of children.
7424         (set_kid_state_func): New static function.
7425         (gst_bin_change_state): Use gst_bin_foreach to call
7426         set_kid_state_func. Fixes a bug: if a child had a state-change
7427         handler that removes it from the bin, there would be a segfault.
7428         Hopefully it should also work in the case where the state-change
7429         handler on one child adds or removes other children. In any case,
7430         fixes should go to gst_bin_foreach.
7431
7432 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
7433
7434         * gst/gstelement.c: (gst_element_set_state):
7435           compatibility fix for latest plugins release.  Change loop back
7436           to while {}
7437
7438 2004-07-09  Wim Taymans  <wim@fluendo.com>
7439
7440         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
7441         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
7442         (gst_thread_main_loop):
7443         Since remove is virtual in GstBin we must not assume the 
7444         elements GList to have anothing useful.
7445         Add some more logging to GstThread and be a bit more paranoid
7446         when resetting the scheduler.
7447         Set the state of the bin to NULL before removing the children.
7448
7449 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7450
7451         * testsuite/threads/Makefile.am:
7452         * testsuite/threads/threadg.c:
7453           added test to check if problem when removing all elements from a
7454           GstThread before setting GstThread state to NULL
7455
7456 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7457
7458         * docs/gst/tmpl/gstelement.sgml:
7459         * docs/gst/tmpl/gsttypes.sgml:
7460         * gst/gstbin.c: (gst_bin_change_state):
7461         * gst/gstelement.c: (gst_element_set_state),
7462         (gst_element_change_state):
7463           rework so that for bins we try to set the state on all children
7464           as well even if the bin is in the correct state already.
7465           change while to do so at least one iteration is done.
7466           For regular elements, we fall back to the previous behaviour for
7467           now since we first need a new plugins release.
7468         * testsuite/states/parent.c: (main):
7469           test for this case
7470           Fixes #123774
7471
7472 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7473
7474         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
7475         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
7476         (gst_queue_release_locks), (gst_queue_change_state),
7477         (gst_queue_set_property):
7478           add proper lock debugging.  Change dispose to finalize, since
7479           we're freeing mutexes and other stuff which should happen only once.
7480
7481 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7482
7483         * docs/gst/tmpl/gstelement.sgml:
7484         * docs/gst/tmpl/gstplugin.sgml:
7485         * docs/gst/tmpl/gsttypes.sgml:
7486         * docs/pwg/building-state.xml:
7487         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
7488         * gst/gstelement.c: (gst_element_change_state):
7489         * gst/gstthread.c: (gst_thread_change_state):
7490           catch wrong state changes in element base class.
7491
7492 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7493
7494         * gst/gstinfo.h:
7495           clean up layout a little.
7496
7497 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7498
7499         * configure.ac:
7500         * testsuite/Makefile.am:
7501         * testsuite/states/Makefile.am:
7502         * testsuite/states/parent.c: (main):
7503           re-enable states testsuite dir.  Add test for state changes and
7504           parent behaviour
7505
7506 2004-07-09  Wim Taymans  <wim@fluendo.com>
7507
7508         * gst/schedulers/gstoptimalscheduler.c:
7509         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
7510         (element_get_reachables_func), (element_get_reachables),
7511         (debug_element), (rechain_group), (group_migrate_connected),
7512         (gst_opt_scheduler_pad_unlink):
7513         Do not try to migrate decoupled elements to a new group since
7514         they are not added to groups.
7515
7516 2004-07-08  Benjamin Otte  <otte@gnome.org>
7517
7518         * gst/gstelement.c: (gst_element_error_func):
7519           make reentrant (= allow removing elements in error handler)
7520
7521 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7522
7523         * gst/gstpad.c: (gst_pad_event_default_dispatch),
7524         (gst_pad_send_event), (gst_pad_call_chain_function):
7525           events sent to elements below PAUSED cannot be handled, so
7526           don't try to
7527
7528 2004-07-08  Wim Taymans  <wim@fluendo.com>
7529
7530         * gst/schedulers/gstoptimalscheduler.c:
7531         (chain_recursively_migrate_group), (create_group),
7532         (schedule_group), (gst_opt_scheduler_pad_link),
7533         (group_elements_set_visited), (element_get_reachables_func),
7534         (element_get_reachables), (group_can_reach_group), (debug_element),
7535         (rechain_group), (group_migrate_connected),
7536         (gst_opt_scheduler_pad_unlink):
7537         * testsuite/schedulers/Makefile.am:
7538         Implemented group splitting and rechaining.
7539         Fixes 143777 and 143777-2 in the testsuite.
7540
7541 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7542
7543         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7544           extra debugging
7545         * gst/gstevent.h:
7546         * gst/gstinfo.c: (gst_debug_log_default):
7547           print time nicely.  add thread pointer until someone figures out
7548           a completely portable way of getting at thread id's.
7549         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
7550         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
7551         (gst_pad_call_chain_function):
7552           extra debugging
7553         * gst/schedulers/gstoptimalscheduler.c:
7554         (get_group_schedule_function), (loop_group_schedule_function),
7555         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
7556         (pad_clear_queued), (gst_opt_scheduler_iterate):
7557           rename BUFPEN and friends to DATAPEN since that's what they are.
7558
7559 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
7560
7561         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
7562         * gst/gstbuffer.h:
7563         * gst/gstpad.c:
7564           cleanups and debugging
7565
7566 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7567
7568         * configure.ac:
7569         * gst/gstvalue.c: (gst_value_compare_enum),
7570         (gst_value_serialize_enum), (gst_value_deserialize_enum),
7571         (gst_value_can_compare), (gst_value_compare):
7572         * testsuite/Makefile.am:
7573         * testsuite/enumcaps/Makefile.am:
7574         * testsuite/enumcaps/enumcaps.c:
7575           Fix enum serialization, deserialization, comparison in caps, add
7576           a test to ensure that this continues working in the future.
7577
7578 2004-07-06  David Schleef  <ds@schleef.org>
7579
7580         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7581         Fix memleak.
7582
7583 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7584
7585         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
7586         * gst/gstplugin.h:
7587         * gst/registries/gstxmlregistry.c:
7588         (plugin_times_older_than_recurse), (plugin_times_older_than),
7589         (gst_xml_registry_parse_padtemplate):
7590           only rebuild registry when actual plugins have a newer time than
7591           the registry.  Fixes #145520
7592
7593 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7594
7595         * docs/manual/manual.xml:
7596         * docs/manual/win32.xml:
7597           add chapter on win32 building.  fixes #142422
7598
7599 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7600
7601         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
7602
7603         * gst/autoplug/gstspider.c: (gst_spider_init),
7604         (gst_spider_dispose):
7605           fix spider memleaks.  fixes #137863
7606
7607 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7608
7609         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
7610
7611         * gst/schedulers/gstoptimalscheduler.c:
7612         (gst_opt_scheduler_pad_unlink):
7613           fix SIGBUS error, fixes #145338
7614
7615 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7616
7617         * gst/gstobject.c: (gst_object_replace):
7618         * gst/gstscheduler.c: (gst_scheduler_get_clock):
7619         * gst/gstsystemclock.c: (gst_system_clock_obtain):
7620           clean up clock lifecycle.  Fixes #109831
7621
7622 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
7623
7624         * po/LINGUAS:
7625         * po/cs.po:
7626           added Czech translation (Miloslav Trmac)
7627
7628 2004-07-04  David Schleef  <ds@schleef.org>
7629
7630         * tools/Makefile.am:
7631         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
7632
7633 2004-07-04  David Schleef  <ds@schleef.org>
7634
7635         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
7636
7637 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7638
7639         * gst/gstbin.c: (gst_bin_restore_thyself):
7640           chain to parent restore so the bins get restored correctly
7641           in the editor
7642
7643 2004-07-03  David Schleef  <ds@schleef.org>
7644
7645         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
7646         Actually do something in these functions, like before the big
7647         caps change.  (bug #145137)
7648
7649 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7650
7651         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
7652         (gst_element_get_compatible_pad_filtered):
7653         * gst/gstthread.c: (gst_thread_main_loop):
7654           more debugging
7655
7656 2004-07-02  David Schleef  <ds@schleef.org>
7657
7658         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
7659         * gst/gstobject.h:
7660         * gst/gstparse.h:
7661         * gst/gsttrace.h:
7662         * gst/gstxml.h:
7663
7664 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7665
7666         * gst/gstpad.c: (gst_pad_check_schedulers),
7667         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7668         (gst_pad_link_prepare):
7669           revert until testsuite is fixed
7670
7671 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7672
7673         * testsuite/Makefile.am:
7674         * testsuite/caps/filtercaps.c: (main):
7675         * testsuite/clock/clock1.c: (main):
7676         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
7677           fix some more tests
7678
7679 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7680
7681         * testsuite/cleanup/cleanup1.c: (create_pipeline):
7682         * testsuite/cleanup/cleanup2.c: (create_pipeline):
7683         * testsuite/cleanup/cleanup4.c: (main):
7684           fix testsuite
7685
7686 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7687
7688         * libs/gst/control/control.c:
7689         * libs/gst/control/dparam.c:
7690         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
7691         * libs/gst/control/dparammanager.c:
7692         * libs/gst/control/dparammanager.h:
7693         * testsuite/dynparams/Makefile.am:
7694         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
7695         (gst_dptest_change_state), (gst_dptest_chain), (main):
7696           fix testcase for dparams
7697           add debugging category
7698
7699 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
7700
7701         * testsuite/Rules:
7702           change path
7703
7704 2004-07-02  Benjamin Otte  <otte@gnome.org>
7705
7706         * tests/.cvsignore:
7707         * tests/Makefile.am:
7708         * tests/mass_elements.c: (gst_get_current_time), (main):
7709           add simple benchmark to test various speeds of fakesrc ! identity !
7710           identity ! ... ! fakesink.
7711           Usage: mass_elements [num_identities] [num_buffers]
7712           If not specified they default to 1000.
7713
7714 2004-07-02  Benjamin Otte  <otte@gnome.org>
7715
7716         * gst/gstpad.c: (gst_pad_check_schedulers),
7717         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
7718         (gst_pad_link_prepare):
7719           check that pads that get linked belong to the same manager. The old
7720           code allowed linking elements before putting them into bins, so it
7721           worked to link them and then put them in different threads, which
7722           lead to weird behaviour.
7723           Since this effectively disallows linking elements before putting
7724           them in a bin, some applications might not work after this and error
7725           out. If these applications are too critical, we might need to revert
7726           that patch. Please test this before the next release...
7727
7728 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7729
7730         * gst/gstpad.c: (gst_pad_get_caps):
7731           throw an error if the getcaps function does not return a subset of
7732           the template caps.
7733         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
7734           make disconts without position info an error in debugging
7735         * tests/spidey_bench.c: (handoff), (main):
7736           don't count first try when averaging
7737
7738 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7739
7740         * gst/gstplugin.c: (gst_plugin_load_file):
7741           figure out problem with dynamic test
7742
7743 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7744
7745         * docs/gst/Makefile.am:
7746           fix docs build
7747
7748 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7749
7750         * po/POTFILES.in:
7751         * po/af.po:
7752         * po/az.po:
7753         * po/en_GB.po:
7754         * po/fr.po:
7755         * po/nl.po:
7756         * po/sr.po:
7757         * po/sv.po:
7758         * po/tr.po:
7759         * po/uk.po:
7760         * tools/gst-register.c: (plugin_added_func), (main):
7761           i18n-ize -register, fix plural
7762
7763 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7764
7765         * gst/elements/gstidentity.c: (gst_identity_class_init),
7766         (gst_identity_init), (gst_identity_chain),
7767         (gst_identity_set_property), (gst_identity_get_property):
7768         * gst/elements/gstidentity.h:
7769           check for perfect stream
7770
7771 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7772
7773         * gst/elements/gstidentity.c: (gst_identity_chain):
7774           print offset_end
7775
7776 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7777
7778         * docs/gst/Makefile.am:
7779         * docs/gst/gstreamer-docs.sgml:
7780           doc fixes
7781
7782 2004-06-24  David Schleef  <ds@schleef.org>
7783
7784         * autogen.sh:  Remove call to env, since the buildbot isn't
7785         broken anymore.
7786
7787 2004-06-24  Wim Taymans  <wim@fluendo.com>
7788
7789         * gst/elements/Makefile.am:
7790         * gst/elements/gstelements.c:
7791         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
7792         (gst_multifdsink_class_init), (gst_multifdsink_init),
7793         (gst_multifdsink_add), (gst_multifdsink_remove),
7794         (gst_multifdsink_clear), (gst_multifdsink_chain),
7795         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
7796         * gst/elements/gstmultifdsink.h:
7797         Added an element that writes to multiple filedescriptors at once.
7798
7799 2004-06-24  Benjamin Otte  <otte@gnome.org>
7800
7801         * gst/parse/grammar.y:
7802           don't try to link elements before they have been added to bins
7803
7804 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7805
7806         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
7807         (gst_file_pad_get_length):
7808         * libs/gst/bytestream/filepad.h:
7809           add 2 new functions
7810
7811 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7812
7813         * docs/gst/gstreamer-sections.txt:
7814         remove from docs, the define that Benjamin removed from gstelement.h
7815
7816 2004-06-22  Benjamin Otte  <otte@gnome.org>
7817
7818         * gst/gstelement.h:
7819           remove define that referenced a nonexisting GstElement struct member
7820
7821 2004-06-20  Benjamin Otte  <otte@gnome.org>
7822
7823         * gst/gstdata.c: (gst_data_is_writable):
7824           whoops, return values were wrong, so writable data was marked as
7825           non-writable and vice versa. (fixes #143953, spotted by Francis
7826           Labonte)
7827           Shows how rarely we need to copy data ;)
7828
7829 2004-06-20  Benjamin Otte  <otte@gnome.org>
7830
7831         * testsuite/schedulers/.cvsignore:
7832         * testsuite/schedulers/Makefile.am:
7833         * testsuite/schedulers/143777-2.c: (main):
7834           add test for opt breakage in bug #143777
7835
7836 2004-06-20  Benjamin Otte  <otte@gnome.org>
7837
7838         * gst/gstpad.c: (gst_pad_call_chain_function):
7839           check for if we were unlinked while inside the chainfunction (fixes
7840           entrygthread having issues with #143777)
7841         * testsuite/schedulers/143777.c: (main):
7842         * testsuite/schedulers/Makefile.am:
7843           add a test for that fix
7844
7845 2004-06-20  Benjamin Otte  <otte@gnome.org>
7846
7847         * gst/gstvalue.c: (gst_value_set_int_range):
7848           test that start is smaller then end
7849         * libs/gst/bytestream/Makefile.am:
7850         * libs/gst/bytestream/filepad.c: 
7851         * libs/gst/bytestream/filepad.h:
7852           add GstFilePad - a pad that behaves like a FILE*
7853         * testsuite/bytestream/.cvsignore:
7854         * testsuite/bytestream/Makefile.am:
7855         * testsuite/bytestream/filepadsink.c: 
7856           test for the GstFilePad
7857
7858 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7859
7860         * gst/elements/gstidentity.c: (gst_identity_class_init),
7861         (gst_identity_init), (gst_identity_set_clock),
7862         (gst_identity_chain), (gst_identity_set_property),
7863         (gst_identity_get_property):
7864         * gst/elements/gstidentity.h:
7865         * gst/gstclock.c: (gst_clock_id_wait):
7866           add a "sync" property to sync to the clock
7867
7868 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7869
7870         * gst/gstelementfactory.c: (gst_element_factory_create):
7871           make the freakin "elementfactory bla has no type" message more
7872           useful. So we actually can do something when someone shows up
7873           complaining about it.
7874
7875 2004-06-15  Johan Dahlin  <johan@gnome.org>
7876
7877         * tools/gst-inspect.c (main): Fallback to plugin if no element is
7878         found. This matches the old behavior better. Thanks to Thomas for
7879         pointing out.
7880
7881 2004-06-14  David Schleef  <ds@schleef.org>
7882
7883         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
7884         -fomit-frame-pointer.  Appears to generate correct code in
7885         other cases as well.
7886
7887 2004-06-14  Johan Dahlin  <johan@gnome.org>
7888
7889         * tools/gst-inspect.c (main): Add two new command line options: -a
7890         to print all elements and -n to print the name on each line. Also
7891         fix some error reporting.
7892         (main): Simplify, remove -n and always print names if -a is specified
7893
7894 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
7895
7896         * win32/gstconfig.h:
7897         * win32/GSTreamer.vcproj:
7898         * win32/Makefile:
7899         * gst/gstconfig.h.in:
7900         * gst/gst.h:
7901         * gst/gstbin.h:
7902         * gst/gstelement.h:
7903         * gst/gstevent.h:
7904         * gst/gstobject.h:
7905         * gst/gstpad.h:
7906         * docs/gst/gstreamer-sections.txt:
7907         * docs/gst/tmpl/gstconfig.sgml:
7908           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
7909
7910 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7911         * docs/gst/gstreamer-sections.txt:
7912         * docs/gst/tmpl/gstconfig.sgml:
7913         Add the GSTREAMER_EXPORT macro to the docs
7914
7915 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
7916
7917         * tools/gst-compprep.c: (handle_xmlerror), (main):
7918         Add a check for the version that introduced SetStructuredError to fix
7919         the build on FC1
7920
7921 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7922
7923         * win32/msvc71.sln:
7924         * win32/testsuite/:
7925           prepare to compile the testsuite with MSVC
7926
7927 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7928
7929         * docs/manual/win32.xml:
7930           attempt to transform the Win32 README into an XML doc
7931
7932 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7933
7934         * gst/gst.c:
7935         * gst/gstbin.*:
7936         * gst/config.h.in:
7937         * gst/gstelement.*:
7938         * gst/gstevent.h:
7939         * gst/gstobject.*:
7940         * gst/gstpad.h:
7941         * tools/gst-register.c:
7942         * win32/gstreamer.def:
7943           extern symbols are now exported for the Windows DLL
7944
7945 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7946
7947         * gst/gstinfo.h:
7948           fix a problem to enable/disable DEBUG under MSVC
7949
7950 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7951
7952         * win32/:
7953           enable more debug code in DEBUG build
7954
7955 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
7956
7957         * win32/config.h:
7958         * gst/gst-i18n-app.h:
7959           enable NLS under Windows
7960
7961 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
7962         * tools/gst-compprep.c: (handle_xmlerror), (main):
7963           Make an error that baffled me a bit clearer
7964
7965 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7966
7967         * gst/gstqueue.c:
7968           don't use g_queue_get_length () because it's 2.4, use ->length
7969
7970 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
7971
7972         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
7973
7974         * tools/gst-inspect.c: (print_signal_info):
7975           don't free random data twice. (fixes #144185)
7976
7977 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
7978
7979         * gst/gstqueue.c:
7980         * gst/gstqueue.h:
7981           fix removing from the wrong queue on event timeout
7982           fix disposing of the event queue by casting correctly
7983           add mutexes for handling the event queue
7984           someone was sleeping when fixing queue last time around :)
7985
7986 2004-06-10  Johan Dahlin  <johan@gnome.org>
7987
7988         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
7989         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
7990
7991 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7992
7993         * docs/random/gdp:
7994         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
7995         * libs/gst/dataprotocol/dataprotocol.c:
7996         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
7997         (gst_dp_buffer_from_header):
7998         * libs/gst/dataprotocol/dataprotocol.h:
7999         * libs/gst/dataprotocol/dp-private.h:
8000           rev version to 0.1, add buffer flags and copy them
8001
8002 2004-06-09  Johan Dahlin  <johan@gnome.org>
8003
8004         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8005         the flags from the buffer we're copying.
8006
8007 2004-06-09  Wim Taymans  <wim@fluendo.com>
8008
8009         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8010         * gst/elements/gstidentity.c: (gst_identity_init),
8011         (gst_identity_chain):
8012         Print more buffer info in fakesink.
8013         Make identity output similar to fakesink.
8014
8015 2004-06-07  Daniel Gazard  <dany42@free.fr>
8016
8017         reviewed by Benjamin Otte  <otte@gnome.org>
8018
8019         * configure.ac:
8020           fix cross compiling not working. (fixes #143741)
8021
8022 2004-06-07  Benjamin Otte  <otte@gnome.org>
8023
8024         * gst/gstelement.c: (gst_element_set_time_delay):
8025           add failure check
8026         * gst/gstinfo.h:
8027           put brackets around macro arguments of GST_TIME_ARGS, add note to
8028           move it to correct header in 0.9
8029
8030 2004-06-07  Benjamin Otte  <otte@gnome.org>
8031
8032         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8033         (gst_file_index_load), (_file_index_id_save_entries),
8034         (gst_file_index_commit), (gst_file_index_add_association),
8035         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8036         (gst_file_index_plugin_init):
8037           make debugging use a default category
8038
8039 2004-06-06  David Moore  <dcm@acm.org>
8040
8041         reviewed by Benjamin Otte  <otte@gnome.org>
8042
8043         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8044         (gst_fdsrc_change_state):
8045           reset offset counter when going READY => PAUSED. (fixes #142903)
8046
8047 2004-06-06  ed@catmur.co.uk
8048
8049         reviewed by Benjamin Otte  <otte@gnome.org>
8050
8051         * gst/registries/gstxmlregistry.c:
8052         (gst_xml_registry_rebuild_recurse):
8053           don't rely on g_dir_open to figure out if a file is a directory, use
8054           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8055           directories. (fixes #142850)
8056
8057 2004-06-06  Benjamin Otte  <otte@gnome.org>
8058
8059         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8060           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8061         * libs/gst/bytestream/adapter.c:
8062         * libs/gst/bytestream/adapter.h:
8063           fix copyright in header and typo in debugging category name
8064
8065 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8066
8067         * configure.ac:
8068           bump nano to cvs
8069
8070 === release 0.8.3 ===
8071
8072 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8073
8074         * configure.ac:
8075           update libtool versioning
8076           do a new release
8077         * docs/gst/tmpl/gstelement.sgml:
8078         * docs/gst/tmpl/gsttypes.sgml:
8079         * gst/gstinfo.c: (_gst_debug_init):
8080           put back GST_CAT_DATAFLOW to fix API breakage
8081
8082 2004-06-04  David Schleef  <ds@schleef.org>
8083
8084         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8085
8086 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8087
8088         * configure.ac:
8089           bump nano to cvs
8090
8091 === release 0.8.2 ===
8092
8093 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8094
8095         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8096           check GST_DEBUG environment variable which is parsed the same way
8097           as --gst-debug=
8098
8099 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8100
8101         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8102                             gstmd5sink.c gstshaper.c gsttee.c
8103                             gsttypefindelement.c
8104         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8105
8106           - removing trailing commas at end of enums
8107             it is correct C99 code but C90 compilers would complain
8108             (AIX, Forte, ...)
8109             ('should' fix #143290, at least partially)
8110
8111 2004-05-27  Wim Taymans  <wim@fluendo.com>
8112
8113         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8114         (chain_group_set_enabled), (create_group), (add_to_group),
8115         (merge_groups), (setup_group_scheduler), (group_elements),
8116         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8117         Don't try to follow the pad connections with other groups
8118         when a loop based element is added to the scheduler because
8119         the bin will inform the scheduler about the pad links a little
8120         later.
8121
8122 2004-05-27  Wim Taymans  <wim@fluendo.com>
8123
8124         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8125         (remove_from_chain), (chain_group_set_enabled),
8126         (setup_group_scheduler), (group_element_set_enabled),
8127         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8128         (gst_opt_scheduler_show):
8129         Elements without a group can do a state change as well, just wait
8130         with the setup of the scheduling function when it is added to a
8131         chain.
8132
8133 2004-05-27  Wim Taymans  <wim@fluendo.com>
8134
8135         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8136         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8137         (merge_groups), (setup_group_scheduler),
8138         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8139         (gst_opt_scheduler_show):
8140         Fixes to maintain internal consistency of the scheduler data
8141         structures. 
8142          - adding an enabled group to a chain should increment the
8143            number of enabled elements in that chain.
8144          - removing an enabled group from a chain could disable the
8145            chain.
8146          - removing a disabled group from a chain could enable the
8147            chain.
8148          - add g_assert when internal inconsistency is detected.
8149          - adding an element to a group could increase the number of
8150            links this group has with other groups.
8151          - merging two groups also merges the chains.
8152          - also show group links in the _show method.
8153            
8154
8155 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8156
8157         * gst/gstcaps.c: (gst_caps_structure_simplify):
8158           don't print error messages when there is no error
8159         * gst/gstvalue.c: (gst_value_compare_int_range):
8160           compare the second value, too
8161         * testsuite/caps/Makefile.am:
8162         * testsuite/caps/random.c: (assert_on_error), (main):
8163           add tests to make sure the two things above are checked for
8164
8165 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8166
8167         * configure.ac:
8168         * libs/gst/dataprotocol/Makefile.am:
8169         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8170         * libs/gst/dataprotocol/dataprotocol.h:
8171           wrap header in GST_ENABLE_NEW.  make code use it
8172
8173 2004-05-23  Johan Dahlin  <johan@gnome.org>
8174
8175         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8176         so verbose and print GstElement signal names all the time.
8177
8178 2004-05-22  David Schleef  <ds@schleef.org>
8179
8180         * gst/registries/gstxmlregistry.c:
8181         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8182         (bug #142957)
8183
8184 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8185
8186         * configure.ac:
8187           scrub cflags for glib2 so gcc doesn't complain when glib is in
8188           /usr/local
8189
8190 2004-05-21  Johan Dahlin  <johan@gnome.org>
8191
8192         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8193         __GNUC__, patch from Brian Cameron, fixes bug #142804
8194
8195 2004-05-20  David Schleef  <ds@schleef.org>
8196
8197         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8198         comparison code.  (bug #142819)
8199
8200 2004-05-20  Wim Taymans  <wim@fluendo.com>
8201
8202         * gst/gstbuffer.c: (gst_buffer_default_copy):
8203         * gst/gstbuffer.h:
8204         Added Comment to a flag.
8205         copy relevant flags in _buffer_copy.
8206
8207 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8208
8209         reviewed by: Wim Taymans <wim at fluendo dot com>
8210
8211         * gst/gstbuffer.h:
8212           add GST_BUFFER_IN_CAPS buffer flag
8213         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8214         (gst_structure_parse_any_list), (gst_structure_parse_list),
8215         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8216         * gst/gstvalue.c: (gst_value_serialize_any_list),
8217         (gst_value_transform_any_list_string),
8218         (gst_value_list_prepend_value), (gst_value_list_append_value),
8219         (gst_value_list_get_size), (gst_value_list_get_value),
8220         (gst_value_transform_list_string),
8221         (gst_value_transform_fixed_list_string),
8222         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8223         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
8224         (_gst_value_initialize):
8225         * gst/gstvalue.h:
8226           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
8227           < , > as a format.
8228         * testsuite/caps/string-conversions.c: (main):
8229           add regression tests for < >
8230
8231 2004-05-20  Johan Dahlin  <johan@gnome.org>
8232
8233         * docs/gst/Makefile.am (all-local): Re-add
8234
8235 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8236
8237         * docs/gst/Makefile.am:
8238         * docs/gst/gstreamer-docs.sgml:
8239         * docs/libs/Makefile.am:
8240         * docs/libs/gstreamer-libs-docs.sgml:
8241           fix distcheck issues
8242
8243 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8244
8245         * libs/gst/dataprotocol/Makefile.am:
8246           add to autotest
8247
8248 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8249
8250         * libs/gst/dataprotocol/Makefile.am:
8251         * libs/gst/dataprotocol/dataprotocol.c:
8252         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8253         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
8254         * libs/gst/dataprotocol/dp-private.h:
8255           use GST macros to read/write fixed length ints
8256           add some more asserts
8257
8258 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8259
8260         * docs/libs/gstreamer-libs-docs.sgml:
8261         * docs/libs/gstreamer-libs-sections.txt:
8262           remove idct and putbits
8263         * configure.ac:
8264         * docs/libs/tmpl/gstdataprotocol.sgml:
8265         * libs/gst/Makefile.am:
8266         * libs/gst/dataprotocol/Makefile.am:
8267         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
8268         (buffer_test), (caps_test), (event_test), (main):
8269         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
8270         (gst_dp_dump_byte_array), (gst_dp_init),
8271         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
8272         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8273         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
8274         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
8275         (gst_dp_validate_header), (gst_dp_validate_payload),
8276         (gst_dp_validate_packet), (plugin_init):
8277         * libs/gst/dataprotocol/dataprotocol.h:
8278         * libs/gst/dataprotocol/dp-private.h:
8279           add dataprotocol
8280
8281 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8282
8283         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
8284           fix int variable deserialization and add a helper so we can actually
8285           debug this.
8286
8287 2004-05-18  David Schleef  <ds@schleef.org>
8288
8289         * testsuite/debug/commandline.c: (main): Call ./commandline, not
8290           argv[0].  Calling yourself is probably not the best way to
8291           construct a test like this, btw.
8292
8293 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8294
8295         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
8296           don't claim to be more intelligent than a scheduler when the
8297           scheduler claims the pipeline is stopped
8298         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
8299         (safe_cothread_destroy),
8300         (gst_entry_scheduler_remove_all_cothreads),
8301         (gst_entry_scheduler_reset), (_remove_cothread),
8302         (gst_entry_scheduler_state_transition):
8303           hold off cothread destruction if we're not in main cothread
8304         * configure.ac:
8305         * testsuite/Makefile.am:
8306           add new test dir
8307         * testsuite/schedulers/.cvsignore:
8308         * testsuite/schedulers/Makefile.am:
8309           add tests
8310         * testsuite/schedulers/relink.c: (cb_handoff), (main):
8311           check relinking and adding/removing elements from a running pipeline
8312         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
8313           check unlinking in a running pipeline
8314         * testsuite/schedulers/unref.c: (cb_handoff), (main):
8315           check unreffing a running pipeline
8316         * testsuite/schedulers/useless_iteration.c: (main):
8317           check iterating a pipeline that contains running threads works
8318
8319 2004-05-18  David Schleef  <ds@schleef.org>
8320
8321         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
8322           is false.
8323
8324 2004-05-18  Wim Taymans  <wim@fluendo.com>
8325
8326         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8327         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
8328         Fixed an error introduced with patch for 1.63. When setting
8329         a get based element as the entry point in a group, make sure
8330         to mark the group as GET based.
8331
8332 2004-05-18  Wim Taymans  <wim@fluendo.com>
8333
8334         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8335         (setup_group_scheduler), (loop_group_schedule_function),
8336         (gst_opt_scheduler_pad_link):
8337         Added some more debug info and fixed a bug where the group
8338         type was set to LOOP but it was in fact unknown.
8339
8340 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8341
8342         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
8343           make resetting scheduler work twice in a row
8344
8345 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8346
8347         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
8348         (CREATE_USERIALIZATION), (_gst_value_initialize),
8349         (gst_value_compare_float), (gst_value_serialize_float),
8350         (gst_value_deserialize_float), (gst_value_compare_enum),
8351         (gst_value_serialize_enum), (gst_value_deserialize_enum):
8352           add serialization and comparison functions for long, int64, enum and
8353           float values
8354         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
8355           use best serialization function in type hierarchy instead of only a
8356           matching one. This is required for enums to work.
8357         * gst/parse/grammar.y:
8358           use gst_caps_deserialize
8359         * testsuite/parse/Makefile.am:
8360           parse1 now works
8361         * testsuite/parse/parse1.c: (main):
8362           remove aggregator check, aggregator is broken, this test works now
8363           but fails because of bug #138012
8364         * testsuite/parse/parse2.c: (main):
8365           s/xvideosink/xvimagesink - this test looks a lot like we should
8366           disable it
8367
8368 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8369
8370         * gst/gstelement.c: (gst_element_class_init):
8371           whoops, store the signal id correctly
8372         * gst/schedulers/gstbasicscheduler.c:
8373         (gst_basic_scheduler_chain_wrapper):
8374           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
8375           chain function isn't linked
8376
8377 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
8378         * configure.ac:
8379         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
8380         support until we decide where the flags should be used
8381         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
8382         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
8383         * gst/gstpad.c: (gst_pad_link_call_link_functions):
8384         Output refused caps in the debug info
8385
8386 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8387
8388         * gst/elements/gstidentity.c: (gst_identity_chain):
8389           add duration debug
8390         * gst/gstinfo.c: (gst_debug_log_default):
8391           add timestamp
8392
8393 2004-05-13  Benjamin Otte  <otte@gnome.org>
8394
8395         * gst/gstpipeline.c: (gst_pipeline_dispose),
8396         (gst_pipeline_change_state):
8397           call gst_scheduler_reset on dispose (fixes #141416)
8398
8399 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8400
8401         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8402           compute mapsize correctly
8403         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
8404           use correct datatypes when calling a varargs function
8405         * gst/elements/gsttypefindelement.c: (stop_typefinding):
8406           push a DISCONT event as first thing
8407         * gst/gst_private.h:
8408         * gst/gstinfo.c: (_gst_debug_init):
8409           remove GST_DATAFLOW debugging category
8410         * gst/gstbin.c: (gst_bin_iterate):
8411           use GST_SCHEDULING category
8412         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
8413         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
8414         (gst_pad_call_get_function):
8415           add GST_DATAFLOW to easily track flow of buffers or events.
8416         * gst/gstqueue.c: (gst_queue_get_type),
8417         (gst_queue_handle_pending_events), (gst_queue_chain),
8418         (gst_queue_get), (gst_queue_handle_src_event):
8419           use own static debugging category GST_DATAFLOW for dataflow,
8420           use DEBUG category for showing which path events go, use LOG
8421           category for buffers.
8422
8423 2004-05-10  David Schleef  <ds@schleef.org>
8424
8425         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
8426
8427 2004-05-10  David Schleef  <ds@schleef.org>
8428
8429         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
8430         symbols, because otherwise we don't know what they are.  Thanks,
8431         the GStreamer team.
8432         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
8433
8434 2004-05-10  David Schleef  <ds@schleef.org>
8435
8436         (from Steve Lhomme)
8437         * win32/Makefile: When using make clean the MS Visual Studio makefiles
8438         are deleted.  Fix.
8439         * win32/Makefile.inspect:
8440         * win32/Makefile.launch:
8441         * win32/Makefile.register:
8442
8443 2004-05-10  David Schleef  <ds@schleef.org>
8444
8445         * gst/gstinfo.h: Add missing inline function.
8446         * gst/gsttrace.c: add include
8447         * gst/parse/grammar.y: remove unused code
8448         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
8449         more portable.
8450         * tools/gst-register.c: wrap unistd.h
8451         
8452         More additions/fixes from Steve for the MSVC build.
8453         * win32/GStreamer.vcproj:
8454         * win32/Makefile:
8455         * win32/Makefile.inspect:
8456         * win32/Makefile.launch:
8457         * win32/Makefile.register:
8458         * win32/README.txt:
8459         * win32/gst-inspect.vcproj:
8460         * win32/gst-launch.vcproj:
8461         * win32/gst-register.vcproj:
8462         * win32/gstbytestream.def:
8463         * win32/gstbytestream.vcproj:
8464         * win32/gstconfig.h:
8465         * win32/gstelements.def:
8466         * win32/gstelements.vcproj:
8467         * win32/gstenumtypes.c:
8468         * win32/gstenumtypes.h:
8469         * win32/gstoptimalscheduler.def:
8470         * win32/gstoptimalscheduler.vcproj:
8471         * win32/gstreamer.def:
8472         * win32/gstspider.def:
8473         * win32/gstspider.vcproj:
8474         * win32/gstversion.h:
8475         * win32/msvc71.sln:
8476
8477 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8478
8479         * gst/gstelement.c: (gst_element_class_init),
8480         (gst_element_no_more_pads):
8481         * gst/gstelement.h:
8482           add gst_element_no_more_pads and the "no-more-pads" signal
8483
8484 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8485
8486         * gst/gstregistry.c: (gst_registry_add_plugin):
8487           refuse to add plugins when a plugin with same name is already
8488           registered. Fixes a bunch of "How to remove plugins?" issues.
8489           May lead to other problems though, let's test
8490
8491 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8492
8493         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
8494         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
8495         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
8496
8497 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8498
8499         * tests/Makefile.am: fix am16 issue
8500
8501 2004-05-09  Benjamin Otte  <otte@gnome.org>
8502
8503         * libs/gst/bytestream/Makefile.am:
8504           we should indeed add .c files to makefiles or they won't be built
8505           (d'oh)
8506
8507 2004-05-08  Benjamin Otte  <otte@gnome.org>
8508
8509         * gst/gstpad.c: (gst_pad_proxy_fixate):
8510           really reduce the set of caps
8511
8512 2004-05-08  Benjamin Otte  <otte@gnome.org>
8513
8514         * tests/Makefile.am:
8515         * tests/spidey_bench.c: (handoff), (main):
8516           add benchmark to test how long spider needs to create a pipeline
8517
8518 2004-05-08  Benjamin Otte  <otte@gnome.org>
8519
8520         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
8521           mark links as unengaged when unnegotiating instead of deactivating.
8522           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
8523
8524 2004-05-08  Benjamin Otte  <otte@gnome.org>
8525
8526         * docs/manual/helloworld.xml:
8527           s/audiosink/osssink (patch by Patrick Guimond)
8528
8529 2004-05-07  David Schleef  <ds@schleef.org>
8530
8531         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
8532         since it contains important stuff.
8533
8534 2004-05-07  David Schleef  <ds@schleef.org>
8535
8536         * testsuite/caps/caps.c: (test3), (main): A check for appending
8537         ANY caps.
8538
8539 2004-05-07  David Schleef  <ds@schleef.org>
8540
8541         * common/m4/as-compiler-flag.m4: Properly quote arguments,
8542         which may contain commas.  Fixes detection of -Wa,-mregnames
8543
8544 2004-05-06  David Schleef  <ds@schleef.org>
8545
8546         Changes to handle compilers that don't have variadic macro
8547         support.  In particular, glib headers define some inlines
8548         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
8549         builds.
8550         * gst/Makefile.am:
8551         * gst/cothreads.c:
8552         * gst/elements/gstfdsink.c:
8553         * gst/elements/gstfdsrc.c:
8554         * gst/elements/gstfilesink.c:
8555         * gst/elements/gstfilesrc.c:
8556         * gst/gst_private.h:
8557         * gst/gstatomic.c:
8558         * gst/gstcaps.c: (gst_caps_append):
8559         * gst/gstcpu.c: (gst_cpuid_i386):
8560         * gst/gstelement.c:
8561         * gst/gsterror.c:
8562         * gst/gstfilter.c:
8563         * gst/gstinfo.h:
8564         * gst/gstprobe.c:
8565         * gst/gstquery.c:
8566         * gst/gstregistry.c:
8567         * gst/gststructure.c:
8568         * gst/gsttaginterface.c:
8569         * gst/gsttrace.c: (gst_trace_new):
8570         * gst/gsttrashstack.c:
8571         * gst/gsturi.c:
8572         * gst/gstvalue.c:
8573         * gst/parse/grammar.y:
8574         * gst/parse/parse.l:
8575         * tools/gst-inspect.c: (main):
8576         * tools/gst-launch.c: (main):
8577         * tools/gst-xmlinspect.c: (PUT_STRING):
8578
8579 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8580
8581         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8582         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8583         * gst/elements/gstfilesrc.h:
8584           send NEW_MEDIA events correctly
8585         * gst/elements/gsttypefindelement.c: (start_typefinding),
8586         (gst_type_find_element_handle_event):
8587           restart typefinding when we get a NEW_MEDIA event
8588         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
8589         (gst_bin_dispose):
8590           don't die when someone removes elements in callbacks
8591         * gst/gstelement.c: (gst_element_change_state):
8592           improve debugging
8593         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
8594           we need a NEW_MEDIA event to engage a link
8595         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
8596           don't g_print debugging stuff
8597         * testsuite/caps/simplify.c: (check_caps):
8598
8599 2004-05-04  Benjamin Otte  <otte@gnome.org>
8600
8601         * gst/parse/grammar.y:
8602           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
8603
8604 2004-05-04  Benjamin Otte  <otte@gnome.org>
8605
8606         * testsuite/caps/renegotiate.c: (main):
8607           improve output in error case
8608
8609 2004-05-04  Benjamin Otte  <otte@gnome.org>
8610
8611         * gst/parse/grammar.y:
8612           fix assert to not trigger when there's no error argument
8613         * gst/parse/parse.l:
8614           fix definition of caps to allow more than two structures
8615         * testsuite/caps/Makefile.am:
8616         * testsuite/caps/renegotiate.c: (main):
8617           it's sinesrc and works in that case
8618
8619 2004-05-04  Wim Taymans  <wim@fluendo.com>
8620
8621         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
8622         (group_dec_link), (gst_opt_scheduler_pad_unlink):
8623         when removing an element from a group, we always need to
8624         decrement the link count that this group had with other 
8625         groups through the element.
8626         added an extra assert to catch inconsistencies when decrementing
8627         the link count.
8628
8629 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8630
8631         * configure.ac:
8632         * docs/gst/Makefile.am:
8633         * docs/gst/gstreamer-sections.txt:
8634         * docs/gst/tmpl/gstcompat.sgml:
8635         * examples/appreader/Makefile.am:
8636         * examples/cutter/Makefile.am:
8637         * examples/events/Makefile.am:
8638         * examples/helloworld/Makefile.am:
8639         * examples/helloworld2/Makefile.am:
8640         * examples/launch/Makefile.am:
8641         * examples/manual/Makefile.am:
8642         * examples/mixer/Makefile.am:
8643         * examples/pingpong/Makefile.am:
8644         * examples/plugins/Makefile.am:
8645         * examples/queue/Makefile.am:
8646         * examples/queue2/Makefile.am:
8647         * examples/queue3/Makefile.am:
8648         * examples/queue4/Makefile.am:
8649         * examples/retag/Makefile.am:
8650         * examples/thread/Makefile.am:
8651         * examples/typefind/Makefile.am:
8652         * examples/xml/Makefile.am:
8653         * gst/Makefile.am:
8654         * gst/autoplug/Makefile.am:
8655         * gst/elements/Makefile.am:
8656         * gst/gstcompat.h:
8657         * gst/indexers/Makefile.am:
8658         * gst/parse/Makefile.am:
8659         * gst/registries/Makefile.am:
8660         * gst/schedulers/Makefile.am:
8661         * libs/gst/bytestream/Makefile.am:
8662         * libs/gst/control/Makefile.am:
8663         * libs/gst/getbits/Makefile.am:
8664         * po/af.po:
8665         * po/az.po:
8666         * po/en_GB.po:
8667         * po/fr.po:
8668         * po/nl.po:
8669         * po/sr.po:
8670         * po/sv.po:
8671         * po/tr.po:
8672         * po/uk.po:
8673         * tests/Makefile.am:
8674         * tests/bufspeed/Makefile.am:
8675         * tests/instantiate/Makefile.am:
8676         * tests/memchunk/Makefile.am:
8677         * tests/muxing/Makefile.am:
8678         * tests/negotiation/Makefile.am:
8679         * tests/probes/Makefile.am:
8680         * tests/sched/Makefile.am:
8681         * tests/seeking/Makefile.am:
8682         * tests/threadstate/Makefile.am:
8683         * testsuite/caps/Makefile.am:
8684         * testsuite/cleanup/Makefile.am:
8685         * testsuite/dlopen/Makefile.am:
8686         * testsuite/dynparams/Makefile.am:
8687         * testsuite/plugin/Makefile.am:
8688         * testsuite/states/Makefile.am:
8689         * tools/Makefile.am:
8690           reorganize compile/link flags to be consistent
8691           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
8692
8693 2004-05-04  David Schleef  <ds@schleef.org>
8694
8695         The "once more, with feeling" check-in.
8696         * testsuite/caps/Makefile.am: dist caps_strings
8697         * testsuite/caps/renegotiate.c: (main): This test triggers a
8698           segfault in the core.  Marking as failing.
8699
8700 2004-05-03  David Schleef  <ds@schleef.org>
8701
8702         * testsuite/caps/deserialize.c: (main): Fix problems noticed
8703           by the build bots.
8704         * testsuite/caps/renegotiate.c: (main): Same.
8705
8706 2004-05-03  David Schleef  <ds@schleef.org>
8707
8708         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
8709
8710 2004-05-03  David Schleef  <ds@schleef.org>
8711
8712         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
8713           variable to find our source file.
8714
8715 2004-05-03  David Schleef  <ds@schleef.org>
8716
8717         * configure.ac:  Link plugins with libgstreamer and dependent
8718           libraries
8719         * testsuite/caps/Makefile.am:
8720         * testsuite/caps/caps_strings:
8721         * testsuite/caps/deserialize.c: (main): Add a little test to slog
8722           through a file of caps strings and test each one
8723
8724 2004-05-04  Benjamin Otte  <otte@gnome.org>
8725
8726         * libs/gst/bytestream/Makefile.am:
8727         * libs/gst/bytestream/adapter.c: 
8728         * libs/gst/bytestream/adapter.h:
8729           add GstAdapter, similar to bytestream, but doesn't require ugly event
8730           handling or uglier loopbased elements
8731
8732 2004-05-03  David Schleef  <ds@schleef.org>
8733
8734         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
8735         * testsuite/caps/erathostenes.c:
8736         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
8737
8738 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8739
8740         * docs/pwg/pwg.xml:
8741           remove hardcoded stylesheet path (duh)
8742         * docs/random/release:
8743         * docs/gst/gstreamer-sections.txt:
8744         * gst/Makefile.am:
8745         * gst/gst.h:
8746         * gst/gst_private.h:
8747         * gst/gstcaps.c:
8748         * gst/gstevent.c:
8749         * gst/gstformat.c:
8750         * gst/gstinfo.c:
8751         * gst/gstinfo.h:
8752         * gst/gstinterface.c:
8753         * gst/gstmemchunk.c:
8754         * gst/gstprobe.c:
8755         * gst/gstquery.c:
8756         * gst/gstregistry.c:
8757         * gst/gstregistrypool.c:
8758         * gst/gststructure.c:
8759         * gst/gsttaginterface.c:
8760         * gst/gstthread.c:
8761         * gst/gsttrace.c:
8762         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
8763         * gst/gsturi.c:
8764         * gst/gstvalue.c:
8765           deprecate gst_info; remove gstlog.h
8766    
8767
8768 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8769
8770         * Makefile.am:
8771         * po/en_GB.po:
8772         * po/sv.po:
8773         * po/uk.po:
8774           updated translations
8775
8776 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8777
8778         * gst/gstbin.c: (gst_bin_dispose):
8779           better debugging
8780
8781 2004-05-03  Johan Dahlin  <johan@gnome.org>
8782
8783         * gst/schedulers/gstoptimalscheduler.c
8784         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
8785         really is a GstElement. Avoids critical when running gst-launch -v
8786         and a oggdemux/decoding pipeline.
8787
8788 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8789
8790         * docs/gst/tmpl/gstpipeline.sgml :
8791         * docs/manual/elements-api.xml :
8792                 doc fix by Patrick Guimond (Protector) from devel ML
8793                 reviewed by ronald
8794
8795 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8796
8797         * docs/gst/Makefile.am :
8798         * docs/libs/Makefile.am :
8799                 apply a patch from Arwed v. Merkatz so that gtk-doc
8800                 generated docs install (same for .devhelp file)
8801                 (fixes part 1 of #138836)
8802
8803 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8804
8805         * docs/faq/dependencies.xml: typo
8806         * docs/faq/getting.xml :
8807             - fix download URL for new gstreamer site
8808             - hide sf.net download page as latest version aren't there
8809             - fix apt URLs
8810             - fill "get via CVS" paragraph (link to dev page on the site)
8811         * docs/faq/general.xml:
8812             hide status tables as they no more exists
8813             change case on plugins license file to reflect reality
8814         * docs/faq/troubleshooting.xml:
8815             remove the wiki question/answer as there is no more wiki
8816
8817 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8818
8819         * gst/gsterror.h:
8820           include the headers needed for declarations used in this header
8821
8822 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8823
8824         * docs/random/uraeus/gstreamer_and_midi.txt :
8825           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
8826           (fixes #132288)
8827
8828 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
8829
8830         reviewed by Benjamin Otte  <otte@gnome.org>
8831
8832         * gst/schedulers/gthread-cothreads.h:
8833           free allocated data for main cothread, too when destroying context
8834           (fixes #141417)
8835
8836 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8837
8838         * docs/manual/goals.xml : remove duplicated paragraph at end 
8839         of doc page (fixes #141448)
8840
8841 2004-04-29  David Schleef  <ds@schleef.org>
8842
8843         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
8844         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
8845
8846 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8847
8848         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8849           fix property
8850         * gst/gstcaps.c:
8851           fix doc string
8852         * po/POTFILES.in:
8853           rename typefind source file
8854
8855 2004-04-28  David Schleef  <ds@schleef.org>
8856
8857         Several new files from Steve Lhomme's MSVC patch (bug #141317):
8858         * win32/GStreamer.vcproj:
8859         * win32/Makefile:
8860         * win32/config.h:
8861         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
8862         (_trewinddir), (_ttelldir), (_tseekdir):
8863         * win32/dirent.h:
8864         * win32/gst-inspect.vcproj:
8865         * win32/gst-launch.vcproj:
8866         * win32/gst-register.vcproj:
8867         * win32/gstbytestream.vcproj:
8868         * win32/gstelements.vcproj:
8869         * win32/gstoptimalscheduler.vcproj:
8870         * win32/gstspider.vcproj:
8871         * win32/gtchar.h:
8872         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
8873         * win32/mman.h:
8874         * win32/mman.inl:
8875         * win32/msvc71.sln:
8876
8877 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8878
8879         * gst/gst.c: (init_post):
8880         * gst/gstinfo.c:
8881           remove useless _gst_progname stuff
8882         * tools/gst-inspect.c: (print_field), (print_caps):
8883           improve caps output
8884
8885 2004-04-28  David Schleef  <ds@schleef.org>
8886
8887         Disable parsing of a lot of files that aren't part of the
8888         exported API.  Move corresponding template files to old/,
8889         waiting for removal when they don't contain anything
8890         interesting.
8891         * docs/gst/Makefile.am:
8892         * docs/gst/gstreamer-sections.txt:
8893         * docs/gst/tmpl/cothreads.sgml:
8894         * docs/gst/tmpl/cothreads_compat.sgml:
8895         * docs/gst/tmpl/gettext.sgml:
8896         * docs/gst/tmpl/gobject2gtk.sgml:
8897         * docs/gst/tmpl/grammar.tab.sgml:
8898         * docs/gst/tmpl/gst-i18n-app.sgml:
8899         * docs/gst/tmpl/gst-i18n-lib.sgml:
8900         * docs/gst/tmpl/gst_private.sgml:
8901         * docs/gst/tmpl/gstaggregator.sgml:
8902         * docs/gst/tmpl/gstarch.sgml:
8903         * docs/gst/tmpl/gstatomic_impl.sgml:
8904         * docs/gst/tmpl/gstbufferstore.sgml:
8905         * docs/gst/tmpl/gstdata_private.sgml:
8906         * docs/gst/tmpl/gstdisksink.sgml:
8907         * docs/gst/tmpl/gstdisksrc.sgml:
8908         * docs/gst/tmpl/gstelementfactory.sgml:
8909         * docs/gst/tmpl/gstextratypes.sgml:
8910         * docs/gst/tmpl/gstfakesink.sgml:
8911         * docs/gst/tmpl/gstfakesrc.sgml:
8912         * docs/gst/tmpl/gstfdsink.sgml:
8913         * docs/gst/tmpl/gstfdsrc.sgml:
8914         * docs/gst/tmpl/gstfilesink.sgml:
8915         * docs/gst/tmpl/gstfilesrc.sgml:
8916         * docs/gst/tmpl/gsthttpsrc.sgml:
8917         * docs/gst/tmpl/gstidentity.sgml:
8918         * docs/gst/tmpl/gstindexfactory.sgml:
8919         * docs/gst/tmpl/gstmarshal.sgml:
8920         * docs/gst/tmpl/gstmd5sink.sgml:
8921         * docs/gst/tmpl/gstmultidisksrc.sgml:
8922         * docs/gst/tmpl/gstmultifilesrc.sgml:
8923         * docs/gst/tmpl/gstpadtemplate.sgml:
8924         * docs/gst/tmpl/gstpipefilter.sgml:
8925         * docs/gst/tmpl/gstschedulerfactory.sgml:
8926         * docs/gst/tmpl/gstsearchfuncs.sgml:
8927         * docs/gst/tmpl/gstshaper.sgml:
8928         * docs/gst/tmpl/gstspider.sgml:
8929         * docs/gst/tmpl/gstspideridentity.sgml:
8930         * docs/gst/tmpl/gststatistics.sgml:
8931         * docs/gst/tmpl/gsttee.sgml:
8932         * docs/gst/tmpl/gsttimecache.sgml:
8933         * docs/gst/tmpl/gsttypefind.sgml:
8934         * docs/gst/tmpl/gsttypefindfactory.sgml:
8935         * docs/gst/tmpl/gstxmlregistry.sgml:
8936         * docs/gst/tmpl/gthread-cothreads.sgml:
8937         * docs/gst/tmpl/old/cothreads.sgml:
8938         * docs/gst/tmpl/old/cothreads_compat.sgml:
8939         * docs/gst/tmpl/old/gettext.sgml:
8940         * docs/gst/tmpl/old/gobject2gtk.sgml:
8941         * docs/gst/tmpl/old/grammar.tab.sgml:
8942         * docs/gst/tmpl/old/gst-i18n-app.sgml:
8943         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
8944         * docs/gst/tmpl/old/gst_private.sgml:
8945         * docs/gst/tmpl/old/gstaggregator.sgml:
8946         * docs/gst/tmpl/old/gstarch.sgml:
8947         * docs/gst/tmpl/old/gstatomic_impl.sgml:
8948         * docs/gst/tmpl/old/gstbufferstore.sgml:
8949         * docs/gst/tmpl/old/gstdata_private.sgml:
8950         * docs/gst/tmpl/old/gstdisksink.sgml:
8951         * docs/gst/tmpl/old/gstdisksrc.sgml:
8952         * docs/gst/tmpl/old/gstelementfactory.sgml:
8953         * docs/gst/tmpl/old/gstextratypes.sgml:
8954         * docs/gst/tmpl/old/gstfakesink.sgml:
8955         * docs/gst/tmpl/old/gstfakesrc.sgml:
8956         * docs/gst/tmpl/old/gstfdsink.sgml:
8957         * docs/gst/tmpl/old/gstfdsrc.sgml:
8958         * docs/gst/tmpl/old/gstfilesink.sgml:
8959         * docs/gst/tmpl/old/gstfilesrc.sgml:
8960         * docs/gst/tmpl/old/gsthttpsrc.sgml:
8961         * docs/gst/tmpl/old/gstidentity.sgml:
8962         * docs/gst/tmpl/old/gstindexfactory.sgml:
8963         * docs/gst/tmpl/old/gstmarshal.sgml:
8964         * docs/gst/tmpl/old/gstmd5sink.sgml:
8965         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
8966         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
8967         * docs/gst/tmpl/old/gstpadtemplate.sgml:
8968         * docs/gst/tmpl/old/gstpipefilter.sgml:
8969         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
8970         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
8971         * docs/gst/tmpl/old/gstshaper.sgml:
8972         * docs/gst/tmpl/old/gstspider.sgml:
8973         * docs/gst/tmpl/old/gstspideridentity.sgml:
8974         * docs/gst/tmpl/old/gststatistics.sgml:
8975         * docs/gst/tmpl/old/gsttee.sgml:
8976         * docs/gst/tmpl/old/gsttimecache.sgml:
8977         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
8978         * docs/gst/tmpl/old/gstxmlregistry.sgml:
8979         * docs/gst/tmpl/old/gthread-cothreads.sgml:
8980         * docs/gst/tmpl/old/types.sgml:
8981         * docs/gst/tmpl/types.sgml:
8982
8983         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
8984         gtkdoc-scan doesn't like files with the same name in different
8985         directories.
8986         * gst/elements/Makefile.am:
8987         * gst/elements/gstelements.c:
8988         * gst/elements/gsttypefind.c: 
8989         * gst/elements/gsttypefind.h:
8990         * gst/elements/gsttypefindelement.c:
8991         * gst/elements/gsttypefindelement.h:
8992
8993 2004-04-28  David Schleef  <ds@schleef.org>
8994
8995         A bunch of portability fixes, derived from Steve Lhomme's MSVC
8996         patch (bug #141317):
8997         * gst/gst-i18n-lib.h: Allow disabling gettext.
8998         * gst/gstatomic_impl.h: disable warning when it's dumb.
8999         * gst/gstclock.c: fix include
9000         * gst/gstcompat.h: fix variadic macro
9001         * gst/gstinfo.c: fix include
9002         * gst/gstmacros.h: add defines for inlines on MSVC
9003         * gst/gstplugin.c: fix includes
9004         * gst/gstregistry.c: fix includes
9005         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9006         * gst/gstsystemclock.c: fix include
9007         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9008         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9009         * gst/registries/gstxmlregistry.c:
9010         (gst_xml_registry_parse_element_factory): fix use of non-portable
9011         functions
9012         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9013         * libs/gst/control/dparammanager.h: same
9014
9015 2004-04-28  David Schleef  <ds@schleef.org>
9016
9017         Move a bunch of unused files to old/ with names that are
9018         not case-insensitive-unique.  These files still contain some
9019         useful information that needs to be merged into gstbin.sgml,
9020         etc., so they shouldn't be deleted yet.
9021         * docs/gst/tmpl/GstBin.sgml:
9022         * docs/gst/tmpl/GstBuffer.sgml:
9023         * docs/gst/tmpl/GstCaps.sgml:
9024         * docs/gst/tmpl/GstClock.sgml:
9025         * docs/gst/tmpl/GstCompat.sgml:
9026         * docs/gst/tmpl/GstData.sgml:
9027         * docs/gst/tmpl/GstElement.sgml:
9028         * docs/gst/tmpl/GstEvent.sgml:
9029         * docs/gst/tmpl/GstIndex.sgml:
9030         * docs/gst/tmpl/GstStructure.sgml:
9031         * docs/gst/tmpl/GstTag.sgml:
9032         * docs/gst/tmpl/old/GstBin.sgml:
9033         * docs/gst/tmpl/old/GstBuffer.sgml:
9034         * docs/gst/tmpl/old/GstCaps.sgml:
9035         * docs/gst/tmpl/old/GstClock.sgml:
9036         * docs/gst/tmpl/old/GstCompat.sgml:
9037         * docs/gst/tmpl/old/GstData.sgml:
9038         * docs/gst/tmpl/old/GstElement.sgml:
9039         * docs/gst/tmpl/old/GstEvent.sgml:
9040         * docs/gst/tmpl/old/GstIndex.sgml:
9041         * docs/gst/tmpl/old/GstStructure.sgml:
9042         * docs/gst/tmpl/old/GstTag.sgml:
9043
9044 2004-04-28  David Schleef  <ds@schleef.org>
9045
9046         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9047         (gst_caps_append), (gst_caps_append_structure),
9048         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9049         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9050         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9051         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9052         (gst_caps_intersect), (gst_caps_normalize),
9053         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9054         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9055         * gst/gstcaps.h: use GST_IS_CAPS().
9056
9057 2004-04-26  David Schleef  <ds@schleef.org>
9058
9059         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9060         assembly.  gcc doesn't handle it correctly. (bug #141083)
9061         * gst/gsttrashstack.h: same
9062
9063 2004-04-25  Benjamin Otte  <otte@gnome.org>
9064
9065         * gst/gstelement.c: (gst_element_change_state):
9066           fix assertion to do an int comparison
9067
9068 2004-04-25  Benjamin Otte  <otte@gnome.org>
9069
9070         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9071           better debugging output on error
9072
9073 2004-04-25  Benjamin Otte  <otte@gnome.org>
9074
9075         * gst/gstcaps.c: (gst_caps_subtract):
9076           fix memleak
9077
9078 2004-04-23  Benjamin Otte  <otte@gnome.org>
9079
9080         * gst/gstvalue.c: (gst_value_compare_buffer),
9081         (_gst_value_initialize):
9082           add comparison function for buffers
9083
9084 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9085
9086         * docs/pwg/pwg.xml:
9087           Just found out that this so-called "ima-wav" format is really
9088           just "dvi adpcm" (according to the MS WAV documentation). So
9089           renaming it. We didn't use it yet anyway.
9090
9091 2004-04-23  Benjamin Otte  <otte@gnome.org>
9092
9093         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9094           call gst_caps_is_subset
9095
9096 2004-04-23  Benjamin Otte  <otte@gnome.org>
9097
9098         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9099         (gst_caps_is_subset):
9100           add documentation
9101
9102 2004-04-23  Benjamin Otte  <otte@gnome.org>
9103           
9104         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9105         (gst_caps_structure_subtract), (gst_caps_subtract),
9106         (gst_caps_structure_figure_out_union),
9107         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9108           fix simplifying and subtracting not working correctly with optional
9109           properties
9110           solve assorted problems that make it now simplify ebven more
9111         * docs/gst/tmpl/gstcaps.sgml:
9112         * gst/gstcaps.h:
9113           make gst_caps_do_simplify return a bool to indicate if it simplified
9114         * testsuite/caps/simplify.c: (main):
9115           add more checks. The tests is quite a bit useless right now because
9116           the core is heavily simplifying itself.
9117         * testsuite/caps/caps.h:
9118           fix caps to contain all optional properties
9119
9120 2004-04-22  Benjamin Otte  <otte@gnome.org>
9121
9122         * docs/gst/tmpl/gstcaps.sgml:
9123         * docs/gst/tmpl/gstfilesrc.sgml:
9124         * docs/gst/tmpl/gststructure.sgml:
9125         * docs/gst/tmpl/gstvalue.sgml:
9126           update for recent API changes
9127         * gst/gstcaps.c: (gst_caps_do_simplify):
9128           fix to stop trying with a freed structure
9129         * gst/gstpad.c: (gst_pad_link_fixate):
9130           simplify caps
9131         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9132           remove C++ comment
9133         * gst/gstpad.h:
9134           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9135         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9136         (gst_structure_to_string):
9137           keep the correct type when using lists of ranges
9138         * gst/gstvalue.c: (gst_value_list_prepend_value),
9139         (gst_value_list_append_value):
9140           copy the value before adding to the list (d'oh)
9141         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9142         (gst_value_subtract_int_range_int_range):
9143           handle overflows correctly
9144         * gst/gstvalue.c: (gst_value_subtract_from_list):
9145           fix memleak
9146         * testsuite/caps/caps.h:
9147           add a caps that caused segfaults
9148
9149 2004-04-22  Benjamin Otte  <otte@gnome.org>
9150
9151         * testsuite/refcounting/pad.c: (main):
9152           fix test
9153
9154 2004-04-22  Benjamin Otte  <otte@gnome.org>
9155
9156         * gst/gstcaps.c: (gst_caps_subtract):
9157           allow subtracting ANY and EMPTY from ANY caps
9158
9159 2004-04-22  Benjamin Otte  <otte@gnome.org>
9160
9161         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9162         (gst_caps_union):
9163           only simplify in functions that create new caps. Simplifying in
9164           gst_caps_append breaks tests.
9165
9166 2004-04-22  Benjamin Otte  <otte@gnome.org>
9167
9168         * gst/gstcaps.c: (gst_caps_structure_simplify):
9169           unset GValue after use
9170         * gst/gstcaps.c: (gst_caps_append), 
9171         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9172           use gst_caps_simplify (reduces registry size by 30%)
9173         * gst/gstpad.c: (gst_pad_template_new):
9174           don't allow NULL caps
9175
9176 2004-04-22  Benjamin Otte  <otte@gnome.org>
9177
9178         * docs/gst/gstreamer-sections.txt:
9179           add gst_caps_do_simplify
9180         * gst/gstcaps.c:
9181           add documentation for gst_caps_do_simplify
9182         * gst/gstvalue.h:
9183           fix typo in gst_value_register_subtract_func declaration for gst-doc
9184
9185 2004-04-22  Benjamin Otte  <otte@gnome.org>
9186
9187         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9188           fix bug when converting from empty string.
9189         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9190         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9191           use gst_caps_new_empty to allocate a new caps. Only that function
9192           allocates memory for caps now.
9193         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9194         (gst_caps_remove_structure):
9195           add ability to remove one structure (but not to header yet)
9196         * gst/gstcaps.c: (gst_caps_compare_structures),
9197         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9198         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9199         * gst/gstcaps.h:
9200           add gst_caps_do_simplify that tries to simplify a caps in place.
9201           Deprecate old gst_caps_simplify function.
9202         * testsuite/caps/caps.h:
9203           add caps.h containing a common set of caps to test against.
9204         * testsuite/caps/sets.c: (check_caps), (main):
9205           use it.
9206         * testsuite/caps/.cvsignore:
9207         * testsuite/caps/Makefile.am:
9208         * testsuite/caps/simplify.c: (check_caps), (main):
9209           add test to check correctness and efficency of caps simplification.
9210
9211 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9212
9213         reviewed by Benjamin Otte  <otte@gnome.org>
9214
9215         * gst/gstparse.c: (_gst_parse_escape):
9216           Free the GString used in _gst_parse_escape()
9217
9218 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9219
9220         * gst/gstpad.c: (gst_pad_link_negotiate):
9221           refuse to link if the link is not possible
9222         * configure.ac:
9223         * testsuite/Makefile.am:
9224         * testsuite/negotiation/.cvsignore:
9225         * testsuite/negotiation/Makefile.am:
9226         * testsuite/negotiation/pad_link.c: (main):
9227           add test that checks the above behaviour
9228
9229 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9230
9231         * docs/gst/gstreamer-sections.txt:
9232           add newly added API
9233
9234 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
9235
9236         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9237         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
9238         (gst_filesrc_open_file), (gst_filesrc_close_file),
9239         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
9240         * gst/elements/gstfilesrc.h:
9241           add support for non-regular files (#140734)
9242
9243 2004-04-21  Benjamin Otte  <otte@gnome.org>
9244
9245         * gst/gstpad.c: (gst_pad_link_fixate):
9246           add sophisticated error checking code to see if fixation functions
9247           did their fixation right
9248
9249 2004-04-21  Benjamin Otte  <otte@gnome.org>
9250
9251         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
9252           check for ANY caps before appending/unioning
9253         * gst/gstcaps.c: (gst_caps_is_subset),
9254         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
9255         (gst_caps_structure_subtract), (gst_caps_subtract):
9256         * gst/gstcaps.h:
9257           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
9258           the API. deprecate gst_caps_is_equal_fixed
9259         * gst/gstpad.c: (gst_pad_try_set_caps):
9260         * gst/gstqueue.c: (gst_queue_link):
9261           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
9262         * gst/gststructure.c: (gst_structure_get_name_id):
9263         * gst/gststructure.h:
9264           add function gst_structure_get_name_id
9265         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
9266         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
9267         (gst_value_subtract_int_range_int_range),
9268         (gst_value_subtract_double_double_range),
9269         (gst_value_subtract_double_range_double),
9270         (gst_value_subtract_double_range_double_range),
9271         (gst_value_subtract_from_list), (gst_value_subtract_list),
9272         (gst_value_can_intersect), (gst_value_subtract),
9273         (gst_value_can_subtract), (gst_value_register_subtract_func),
9274         (_gst_value_initialize):
9275         * gst/gstvalue.h:
9276           add support for subtracting values from each other. Note that
9277           subtracting means subtracting as in set theory. Required for caps
9278           stuff above.
9279         * testsuite/caps/.cvsignore:
9280         * testsuite/caps/Makefile.am:
9281         * testsuite/caps/erathostenes.c: (erathostenes), (main):
9282         * testsuite/caps/sets.c: (check_caps), (main):
9283         * testsuite/caps/subtract.c: (check_caps), (main):
9284           add tests for subtraction and equality code.
9285
9286 2004-04-20  David Schleef  <ds@schleef.org>
9287
9288         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
9289         * gst/indexers/Makefile.am:
9290         * gst/schedulers/Makefile.am:
9291         * libs/gst/bytestream/Makefile.am:
9292         * libs/gst/control/Makefile.am:
9293         * libs/gst/getbits/Makefile.am:
9294
9295 2004-04-20  David Schleef  <ds@schleef.org>
9296
9297         * common/as-libtool.mak: Fine-tune DLL building.
9298         * configure.ac: Link plugins against libgstreamer.  Define plugindir
9299         (like gst-plugins)
9300         * examples/plugins/Makefile.am: remove plugindir
9301         * gst/autoplug/Makefile.am: DLL building fixes
9302         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
9303         Windows.
9304         * gst/elements/gstelements.c: Conditionally disable pipefilter.
9305         * gst/indexers/Makefile.am: DLL building fixes
9306         * gst/schedulers/Makefile.am: DLL building fixes.
9307         * libs/gst/bytestream/Makefile.am: DLL building fixes.
9308         * libs/gst/control/Makefile.am: same
9309         * libs/gst/getbits/Makefile.am: same
9310         * testsuite/Makefile.am: New dlopen directory
9311         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
9312         when dlopened.
9313         * testsuite/dlopen/dlopen_gst.c: (main): same
9314         * testsuite/dlopen/loadgst.c: (do_test): same
9315
9316 2004-04-20  David Schleef  <ds@schleef.org>
9317
9318         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
9319         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
9320
9321 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9322
9323         * gst/gstelement.c: (gst_element_wait),
9324         (gst_element_set_time_delay), (gst_element_change_state):
9325           Use GST_TIME_*
9326
9327 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9328
9329         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
9330         (gst_spider_identity_plug):
9331           improve debugging messages
9332         * gst/gstbin.c: (gst_bin_remove_func):
9333           make sure the state_change function is only called with simple state
9334           transitions
9335
9336 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9337
9338         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
9339         (gst_fakesink_set_property), (gst_fakesink_chain):
9340         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
9341         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
9342         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
9343         * gst/elements/gstidentity.c: (gst_identity_chain),
9344         (gst_identity_set_property):
9345         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
9346         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
9347           add warnings to _set_property for unknown arguments
9348           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
9349
9350 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9351
9352         * Makefile.am:
9353         * docs/manuals.mak:
9354           add .po file download snippet
9355           fix a bug in the doc makefile
9356
9357 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
9358
9359         * Makefile.am:
9360         * po/LINGUAS:
9361         * po/en_GB.po:
9362           Added en_GB translation (Gareth Owen)
9363
9364 2004-04-20  Johan Dahlin  <johan@gnome.org>
9365
9366         * gst/gstpad.c (_invent_event): Clean up
9367
9368 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9369
9370         * testsuite/caps/filtercaps.c: (main):
9371           fix test to test things correctly (caps are complicated)
9372
9373 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9374
9375         * testsuite/caps/Makefile.am:
9376         * testsuite/caps/filtercaps.c: (main):
9377           add test (that doesn't work right now, but should)
9378
9379 2004-04-19  David Schleef  <ds@schleef.org>
9380
9381         * configure.ac: Add test for allowing unaligned access.  Add define
9382         to put in gstconfig.h.
9383         * docs/gst/gstreamer-sections.txt: New symbols
9384         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
9385         * docs/gst/tmpl/gstfilesrc.sgml:
9386         * docs/gst/tmpl/gstparse.sgml:
9387         * docs/gst/tmpl/gsttypes.sgml:
9388         * docs/gst/tmpl/gstutils.sgml:
9389         * docs/gst/tmpl/gstvalue.sgml:
9390         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
9391         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
9392         on most !i386/!powerpc architectures.  From Daniel Gazard
9393         <daniel.gazard@free.fr>.  (bug #140156)
9394         * po/af.po: Check in changes made by gettext.
9395         * po/az.po:
9396         * po/fr.po:
9397         * po/nl.po:
9398         * po/sr.po:
9399         * po/sv.po:
9400
9401 2004-04-20  Benjamin Otte  <otte@gnome.org>
9402
9403         * gst/schedulers/entryscheduler.c: 
9404         (gst_entry_scheduler_yield):
9405           refuse to yield when decoupled elements insist on doing that.
9406           At least it's better than crashing
9407
9408 2004-04-19  David Schleef  <ds@schleef.org>
9409
9410         * docs/libs/Makefile.am: Change sinclude to include
9411         * docs/gst/Makefile.am: same
9412         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
9413
9414 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9415
9416         * po/LINGUAS:
9417         * po/uk.po:
9418           Added Ukrainian translation (Maxim V. Dziumanenko)
9419
9420 2004-04-19  Johan Dahlin  <johan@gnome.org>
9421
9422         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
9423         checking here, do it before calling the function.
9424         Clean up, use for loops instead of while loops while iterating
9425         over lists.
9426
9427         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
9428         in debug message.
9429         (gst_spider_create_and_plug): Improve debug message.
9430         General: Replace while loops which iterates over GLists with for
9431         loops. Which are much cleaner, improves readability, especially
9432         for gst_spider_identity_plug
9433
9434         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
9435         fixes bug 140477
9436
9437 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9438
9439         * po/LINGUAS:
9440         * po/tr.po:
9441           Added Turkish translation (Baris Cicek)
9442
9443 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9444
9445         * docs/faq/troubleshooting.xml:
9446           Mention gst-register in the FAQ (fixes 139045).
9447
9448 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9449
9450         * docs/gst/gstreamer-sections.txt:
9451
9452 2004-04-17  Benjamin Otte  <otte@gnome.org>
9453
9454         * gst/gstelement.c: (gst_element_dispose):
9455           simplify
9456         * gst/gstpad.c: (gst_pad_call_chain_function):
9457           don't create loads of events due to bad macro usage
9458
9459 2004-04-16  David Schleef  <ds@schleef.org>
9460
9461         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
9462         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
9463         * gst/gstvalue.c: (gst_value_serialize_buffer),
9464         (gst_value_deserialize_buffer), (gst_type_is_fixed),
9465         (_gst_value_initialize): Create a new function gst_type_is_fixed()
9466         to indicate types that are fixed wrt caps or not.  Switching to
9467         this function fixes (bug #140298).
9468         * gst/gstvalue.h:
9469
9470 2004-04-16  David Schleef  <ds@schleef.org>
9471
9472         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
9473         for GST_UNALIGNED_ACESS, since we essentially know which archs
9474         are ok.
9475
9476 2004-04-17  Benjamin Otte  <otte@gnome.org>
9477
9478         * docs/gst/Makefile.am:
9479           ignore gst/parse directory when building docs (fixes #140205)
9480
9481 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9482
9483         * testsuite/refcounting/mem.c: (vmsize):
9484           do error checking
9485
9486 2004-04-16  Johan Dahlin  <johan@gnome.org>
9487
9488         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
9489         and gst_pad_call_get_function.
9490
9491 2004-04-15  David Schleef  <ds@schleef.org>
9492
9493         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
9494         checks if we can access unaligned memory.
9495         * configure.ac: Use it.
9496
9497 2004-04-16  Benjamin Otte  <otte@gnome.org>
9498
9499         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
9500         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9501         * gst/elements/gstfilesrc.h:
9502           s/seek_happened/need_discont/ and require discont before sending any
9503           data
9504
9505 2004-04-15  David Schleef  <ds@schleef.org>
9506
9507         * gst/gstvalue.c: (gst_value_serialize_buffer),
9508         (gst_value_deserialize_buffer), (_gst_value_initialize):
9509         Register these types as fundamental types. (bug #140015)
9510
9511 2004-04-16  Benjamin Otte  <otte@gnome.org>
9512
9513         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
9514         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
9515         (gst_pad_pull):
9516           implement enforcing discont events before buffers are passed. This
9517           allows state changes of only some elements and later correctly going
9518           on where they left off (or in short: you can now set audio sinks to
9519           NULL to release the device when the pipeline is paused)
9520         * gst/gstpad.c: (gst_pad_call_chain_function),
9521         (gst_pad_call_get_function):
9522         * gst/gstpad.h:
9523           add gst_pad_call_chain_function and gst_pad_call_get_function for
9524           scheduler interaction. They are required because of the changes
9525           above.
9526         * gst/schedulers/entryscheduler.c: (get_buffer),
9527         (gst_entry_scheduler_chain_wrapper),
9528         (gst_entry_scheduler_get_wrapper),
9529         (gst_entry_scheduler_state_transition),
9530         (gst_entry_scheduler_pad_link):
9531         * gst/schedulers/gstbasicscheduler.c:
9532         (gst_basic_scheduler_chain_wrapper),
9533         (gst_basic_scheduler_src_wrapper),
9534         (gst_basic_scheduler_chainhandler_proxy),
9535         (gst_basic_scheduler_gethandler_proxy),
9536         (gst_basic_scheduler_cothreaded_chain),
9537         (gst_basic_scheduler_chain_elements):
9538         * gst/schedulers/gstoptimalscheduler.c:
9539         (get_group_schedule_function), (pad_clear_queued),
9540         (gst_opt_scheduler_pad_link):
9541           use the new functions instead of calling get/chain-functions
9542           directly.
9543
9544 2004-04-15  David Schleef  <ds@schleef.org>
9545
9546         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
9547         * docs/gst/tmpl/gstinfo.sgml: same
9548         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
9549         gtk-doc put here.
9550         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
9551         * examples/queue/queue.c: (main):  We iterate pipelines, not
9552         bins.  (bug #139996)
9553
9554 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9555
9556         * docs/pwg/advanced-types.xml:
9557           Add MS RLE support. Also document Qt RLE although I have no sample
9558           files for that yet. And document an extra property for ADPCM.
9559
9560 2004-04-15  David Schleef  <ds@schleef.org>
9561
9562         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
9563         (_gst_plugin_fault_handler_setup):  Disable more stuff on
9564         Windows.
9565
9566 2004-04-15  David Schleef  <ds@schleef.org>
9567
9568         * gst/gstinfo.c: (_gst_debug_init): Change some internal
9569         symbol names to not conflict with new gstinfo.h symbols.
9570         * gst/gstinfo.h: Add inline functions for all those crazy
9571         compilers that don't know how to handle variadic macros (MSVC).
9572
9573 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9574
9575         * configure.ac: bump nano to 1
9576
9577 === release 0.8.1 ===
9578
9579 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9580
9581         * NEWS:
9582         * RELEASE:
9583         * configure.ac:
9584           releasing 0.8.1, "Snow Brigade"
9585
9586 2004-04-14  David Schleef  <ds@schleef.org>
9587
9588         * testsuite/Makefile.am: define tests_ignore
9589         * testsuite/Rules: Added new tests_ignore, which get compiled,
9590         but not run (generally because they're inconsistent or have
9591         heisenbugs).  Now we can ensure all the .c files compile in
9592         testsuite/.
9593         * testsuite/bins/Makefile.am: define tests_ignore
9594         * testsuite/bytestream/Makefile.am:
9595         * testsuite/caps/Makefile.am:
9596         * testsuite/clock/Makefile.am:
9597         * testsuite/debug/Makefile.am:
9598         * testsuite/debug/global.c: (gst_debug_log_one),
9599         (gst_debug_log_two): Fix compilation problem.
9600         * testsuite/dynparams/Makefile.am:
9601         * testsuite/elements/Makefile.am:
9602         * testsuite/ghostpads/Makefile.am:
9603         * testsuite/indexers/Makefile.am:
9604         * testsuite/parse/Makefile.am:
9605         * testsuite/plugin/Makefile.am:
9606         * testsuite/refcounting/Makefile.am:
9607         * testsuite/refcounting/element_pad.c: (main): Don't return leak
9608         results, because it's not calculated correctly.
9609         * testsuite/refcounting/pad.c: (main): same
9610         * testsuite/states/Makefile.am:
9611         * testsuite/tags/Makefile.am:
9612         * testsuite/threads/Makefile.am:
9613
9614 2004-04-14  David Schleef  <ds@schleef.org>
9615
9616         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
9617         generating bad code around the cpu detection asm code.
9618
9619 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9620
9621         * tools/gst-inspect.c: (print_element_info):
9622           print numeric version of rank as well, since we added some - 1
9623           rank values to elements
9624
9625 2004-04-13  David Schleef  <ds@schleef.org>
9626
9627         * configure.ac:  Disable various code when compiling for MinGW.
9628         * gst/elements/Makefile.am:
9629         * gst/elements/gstelements.c:
9630         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9631         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
9632         * gst/registries/gstxmlregistry.c: (make_dir):
9633
9634 2004-04-13  David Schleef  <ds@schleef.org>
9635
9636         * gst/Makefile.am:
9637         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
9638         assembly.
9639         * gst/gstcpuid_i386.s: remove
9640
9641 2004-04-13  David Schleef  <ds@schleef.org>
9642
9643         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
9644         seems to think it needs to be done.
9645         * docs/gst/tmpl/gstfakesink.sgml:
9646         * docs/gst/tmpl/gstfakesrc.sgml:
9647         * docs/gst/tmpl/gstfdsink.sgml:
9648         * docs/gst/tmpl/gstfdsrc.sgml:
9649         * docs/gst/tmpl/gstfilesink.sgml:
9650         * docs/gst/tmpl/gstfilesrc.sgml:
9651         * docs/gst/tmpl/gstidentity.sgml:
9652         * docs/gst/tmpl/gstmd5sink.sgml:
9653         * docs/gst/tmpl/gstmultifilesrc.sgml:
9654         * docs/gst/tmpl/gstpipefilter.sgml:
9655         * docs/gst/tmpl/gstshaper.sgml:
9656         * docs/gst/tmpl/gstspider.sgml:
9657         * docs/gst/tmpl/gstspideridentity.sgml:
9658         * docs/gst/tmpl/gststatistics.sgml:
9659         * docs/gst/tmpl/gsttee.sgml:
9660         * docs/gst/tmpl/gsttypefind.sgml:
9661         * docs/gst/tmpl/gstutils.sgml:
9662
9663 2004-04-13  David Schleef  <ds@schleef.org>
9664
9665         * configure.ac: Changes to remove POSIXisms (mmap in this case)
9666         and to build DLLs on Windows.
9667         * gst/Makefile.am:
9668         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9669         (gst_filesrc_open_file):
9670         * gst/schedulers/Makefile.am:
9671
9672 2004-04-13  David Schleef  <ds@schleef.org>
9673
9674         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
9675         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
9676         fixating lists.
9677
9678 2004-04-12  David Schleef  <ds@schleef.org>
9679
9680         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
9681         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
9682         to using it.
9683         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
9684         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
9685         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
9686         * gst/gststructure.c: (gst_structure_set_valist),
9687         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
9688         support for buffers.
9689         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
9690         intended to be const.
9691         * gst/gsttag.h: same
9692         * gst/gstvalue.c: (gst_value_serialize_buffer),
9693         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
9694         to (de)serialize buffers.
9695         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
9696         * testsuite/caps/string-conversions.c: (main):
9697         * testsuite/caps/value_serialize.c: add new test
9698
9699 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9700
9701         * docs/pwg/advanced-types.xml:
9702           Document MS video 1 (video/x-msvideocodec) mimetype/format.
9703
9704 2004-04-11  Benjamin Otte  <otte@gnome.org>
9705
9706         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
9707           rename categories to basic_*
9708         * gst/schedulers/gstbasicscheduler.c: 
9709         (gst_basic_scheduler_chain_wrapper),
9710         (gst_basic_scheduler_chainhandler_proxy),
9711         (gst_basic_scheduler_gethandler_proxy),
9712         (gst_basic_scheduler_eventhandler_proxy):
9713           debugging category fixes - put common stuff in log category
9714         * gst/schedulers/gstbasicscheduler.c: 
9715         (gst_basic_scheduler_chain_elements):
9716           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
9717           active and linking two active chains
9718
9719 2004-04-10  Benjamin Otte  <otte@gnome.org>
9720
9721         * docs/pwg/intro-preface.xml:
9722           fix dead links and remove reference to Wiki
9723
9724 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9725
9726         * gst/schedulers/gstbasicscheduler.c:
9727           make sure we can switch back to the main function if we're still in
9728           the main function (supposed to fix #139617)
9729         * gst/schedulers/gthread-cothreads.h:
9730           don't throw an error when switching to the same cothread
9731
9732 2004-04-09  Benjamin Otte  <otte@gnome.org>
9733
9734         * gst/gstbin.c: (gst_bin_get_type):
9735         * gst/gstclock.c: (gst_clock_get_type):
9736         * gst/gstindex.c: (gst_index_get_type):
9737         * gst/gstobject.c: (gst_object_get_type),
9738         (gst_signal_object_get_type):
9739         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
9740         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
9741         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
9742         * gst/gstqueue.c: (gst_queue_get_type):
9743         * gst/gstregistry.c: (gst_registry_get_type):
9744         * gst/gstsystemclock.c: (gst_system_clock_get_type):
9745         * gst/gstthread.c: (gst_thread_get_type):
9746           don't use memchunks for these objects, use malloc instead
9747
9748 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9749
9750         * docs/gst/.cvsignore:
9751         * docs/gst/Makefile.am:
9752         * docs/gst/gstreamer-sections.txt:
9753         * docs/gst/tmpl/gstaggregator.sgml:
9754         * docs/gst/tmpl/gstbuffer.sgml:
9755         * docs/gst/tmpl/gstclock.sgml:
9756         * docs/gst/tmpl/gstelement.sgml:
9757         * docs/gst/tmpl/gstfakesink.sgml:
9758         * docs/gst/tmpl/gstfakesrc.sgml:
9759         * docs/gst/tmpl/gstfdsink.sgml:
9760         * docs/gst/tmpl/gstfdsrc.sgml:
9761         * docs/gst/tmpl/gstfilesink.sgml:
9762         * docs/gst/tmpl/gstfilesrc.sgml:
9763         * docs/gst/tmpl/gstidentity.sgml:
9764         * docs/gst/tmpl/gstindex.sgml:
9765         * docs/gst/tmpl/gstinfo.sgml:
9766         * docs/gst/tmpl/gstmd5sink.sgml:
9767         * docs/gst/tmpl/gstmultifilesrc.sgml:
9768         * docs/gst/tmpl/gstpad.sgml:
9769         * docs/gst/tmpl/gstpipefilter.sgml:
9770         * docs/gst/tmpl/gstpipeline.sgml:
9771         * docs/gst/tmpl/gstpluginfeature.sgml:
9772         * docs/gst/tmpl/gstqueue.sgml:
9773         * docs/gst/tmpl/gstregistry.sgml:
9774         * docs/gst/tmpl/gstscheduler.sgml:
9775         * docs/gst/tmpl/gstshaper.sgml:
9776         * docs/gst/tmpl/gstspider.sgml:
9777         * docs/gst/tmpl/gstspideridentity.sgml:
9778         * docs/gst/tmpl/gststatistics.sgml:
9779         * docs/gst/tmpl/gstsystemclock.sgml:
9780         * docs/gst/tmpl/gsttee.sgml:
9781         * docs/gst/tmpl/gstthread.sgml:
9782         * docs/gst/tmpl/gsttypefind.sgml:
9783         * docs/gst/tmpl/gstutils.sgml:
9784           further doc build fixes
9785
9786 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9787
9788         * docs/gst/Makefile.am:
9789           make docs exit on scanning problems
9790           fix nonsrcdir build issues
9791         * docs/gst/gstreamer-sections.txt:
9792           adding stuff from -unused
9793         * gst/gstqueue.h:
9794           create GstQueueSize
9795         * gst/schedulers/cothreads_compat.h:
9796           fix cothread warnings
9797
9798 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
9799
9800         * docs/gst/gstreamer-sections.txt:
9801           remove defines deprecated by Benjamin
9802
9803 2004-04-07  Benjamin Otte  <otte@gnome.org>
9804
9805         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
9806           when the buffer is complete, don't check if other buffers are needed
9807         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
9808           check that the offset is >0 so we don't try to read before the
9809           beginning of the file
9810         * gst/gstpad.c: (gst_pad_set_pad_template):
9811           sink the template, so we don't end up with 130k pad templates
9812
9813 2004-04-06  Benjamin Otte  <otte@gnome.org>
9814
9815         * gst/autoplug/gstspider.c: (gst_spider_link_add):
9816           don't ref the element, adding already reffed it. And we didn't unref
9817           it later anyway... (huge memleak when you used many spider elements)
9818         * gst/gstelement.c: (gst_element_base_class_finalize):
9819         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
9820         (gst_element_register):
9821         * gst/gsturi.c: (gst_element_make_from_uri):
9822           use gst_object_(un)ref instead of g_object(un)ref
9823
9824 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9825
9826         * gst/gstbuffer.h:
9827           remove macro that wouldn't work anymore because struct member has
9828           been removed.
9829         * gst/schedulers/entryscheduler.c: (schedule_forward):
9830           fix segfault for unconnected pads
9831         
9832 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9833
9834         reviewed by David Schleef <ds@schleef.org>
9835
9836         * gst/gstinfo.h:
9837           *_FORMAT modifiers should require putting a % in front of them for
9838           consistency reasons.
9839
9840 2004-04-05  Colin Walters  <walters@redhat.com>
9841
9842         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
9843         space.
9844
9845 2004-04-05  Benjamin Otte  <otte@gnome.org>
9846
9847         * configure.ac:
9848         * gst/Makefile.am:
9849         * gst/gst_private.h:
9850         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
9851           add support for detecting if GStreamer runs inside valgrind.
9852           requires valgrind (d'oh) and --enable-debug for correct cdetection.
9853           print a big message in valgrind that GStreamer has detected it's
9854           running inside and might now use different code.
9855         * gst/gstmemchunk.c: (populate), (free_area),
9856         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
9857         (gst_mem_chunk_free):
9858           flag memchunks for valgrind, so it can detect leaking of chunks.
9859           This allows detecting leaks of GstBuffer and GstEvent correctly
9860           inside valgrind.
9861
9862 2004-04-05  David Schleef  <ds@schleef.org>
9863
9864         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
9865           jensgr@gmx.net (Jens Granseuer)
9866
9867 2004-04-05  David Schleef  <ds@schleef.org>
9868
9869         * gst/gstbuffer.c: (_gst_buffer_sub_free),
9870         (gst_buffer_default_free), (gst_buffer_default_copy),
9871         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
9872         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
9873         structures in one place.
9874
9875 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9876
9877         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
9878           (GST_TIME_FORMAT, GST_TIME_ARGS)
9879
9880 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9881
9882         * testsuite/elements/Makefile.am:
9883           disable test until it stops breaking make distcheck
9884
9885 2004-04-05  Johan Dahlin  <johan@gnome.org>
9886
9887         * po/sv.po: Updated translation
9888
9889 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9890
9891         * gst/gstplugin.c: (gst_plugin_load_file):
9892           fix segfault for when original plugin was loaded statically
9893
9894 2004-04-05  Benjamin Otte  <otte@gnome.org>
9895
9896         * testsuite/debug/category.c: (main):
9897         * testsuite/debug/commandline.c: (main):
9898         * testsuite/debug/output.c: (main):
9899           fix tests to work again with debugging enabled
9900
9901 2004-04-05  Benjamin Otte  <otte@gnome.org>
9902
9903         * gst/schedulers/gstbasicscheduler.c:
9904         (gst_basic_scheduler_pad_link):
9905           fix to work with recent scheduling changes
9906
9907 2004-04-05  Benjamin Otte  <otte@gnome.org>
9908
9909         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
9910         prepareChangeLog doesn't work when cvs indents):
9911           don't throw an error when no element can be scheduled, there's too
9912           many weird reasons why it doesn't work. Return STOPPED instead.
9913           decoupled elemts' schedulability doesn't depend on bufpens.
9914
9915 2004-04-04  Benjamin Otte  <otte@gnome.org>
9916
9917         * gst/schedulers/gstbasicscheduler.c:
9918         (gst_basic_scheduler_pad_select):
9919           fix uninitialized variable warnings
9920
9921 2004-04-04  Benjamin Otte  <otte@gnome.org>
9922
9923         * gst/gstpad.c: (gst_pad_collect_valist):
9924           fix uninitialized variable warning
9925         * gst/schedulers/entryscheduler.c: (schedule_forward):
9926           fix shadowed variable
9927
9928 2004-04-04  Benjamin Otte  <otte@gnome.org>
9929
9930         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
9931         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
9932         (gst_pad_select):
9933         * gst/gstpad.h:
9934         * gst/gstscheduler.c: (gst_scheduler_pad_select),
9935         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
9936         * gst/gstscheduler.h:
9937           implement gst_pad_collect as replacement for gst_pad_select.
9938           deprecate gst_pad_select and gst_scheduler_(un)lock_element
9939           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
9940           new pad_select, lock and unlock calls.
9941         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
9942         * gst/cothreads.h:
9943         * gst/schedulers/cothreads_compat.h:
9944         * gst/schedulers/gthread-cothreads.h:
9945           remove unused cothread_lock and cothread_unlock calls
9946         * gst/schedulers/entryscheduler.c:
9947         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
9948         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
9949         (gst_entry_scheduler_pad_select):
9950           update to new API
9951         * gst/schedulers/gstbasicscheduler.c:
9952         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
9953         (gst_basic_scheduler_pad_select):
9954           remove useless lock and unlock calls, update pad_select to new API
9955           (untested)
9956         * gst/schedulers/gstoptimalscheduler.c:
9957         (gst_opt_scheduler_class_init):
9958           remove useless select, lock and unlock function calls
9959         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
9960           use gst_pad_collect instead of gst_pad_select
9961
9962 2004-04-04  Benjamin Otte  <otte@gnome.org>
9963
9964         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
9965         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
9966         (schedule_next_element), (print_entry):
9967           add can_schedule_pad to handle element states.
9968           add schedule_forward to select the correct entry to schedule next
9969
9970 2004-04-03  Benjamin Otte  <otte@gnome.org>
9971
9972         * gst/schedulers/entryscheduler.c: 
9973           remove unused variable, fix error inside Rb, fix compile warning in
9974           unreachable code
9975
9976 2004-04-03  Benjamin Otte  <otte@gnome.org>
9977
9978         * gst/schedulers/entryscheduler.c:
9979           completely revamp the inner workings, so it's a lot easier to
9980           understand and extend
9981
9982 2004-04-03  Andy Wingo  <wingo@pobox.com>
9983
9984         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
9985         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
9986         This allows better introspection of pipeline topology.
9987         (add_to_chain): Don't do trickery to put loop elements first;
9988         rather, queue a chain sort by marking the chain as dirty.
9989         (remove_from_chain): Mark the chain dirty.
9990         (sort_chain): New function. Sorts the group list so that terminal
9991         sinks are first. This means elements on the sink side will be
9992         preferentially sscheduled before elements on the src side of the
9993         pipeline.
9994         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
9995         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
9996         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
9997         (group_inc_link): Change argument and variable names to match the
9998         new link structure member names (src and sink).
9999         (group_dec_link): Add some description
10000
10001 2004-04-03  Benjamin Otte  <otte@gnome.org>
10002
10003         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10004         * gst/gstinfo.h:
10005         * testsuite/debug/category.c: (main):
10006         * testsuite/debug/commandline.c: (main):
10007         * testsuite/debug/output.c: (main):
10008         * testsuite/debug/printf_extension.c: (main):
10009           fix to successfully build and test with --disable-gst-debug
10010           configure switch (fixes #138705)
10011
10012 2004-04-03  Benjamin Otte  <otte@gnome.org>
10013
10014         * docs/pwg/building-boiler.xml:
10015           add cvs login line and s/anonymous/anoncvs/
10016
10017 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10018
10019         reviewed by Benjamin Otte  <otte@gnome.org>
10020
10021         * gst/gststructure.c: (gst_structure_free):
10022           memleak fix: free fields array (partial fix for #134839)
10023
10024 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10025
10026         * docs/random/ds/0.9-suggested-changes:
10027           Add a note to change handoff use in fakesrc to be usable in
10028           a more generic way (fakesrc should be renamed to appsrc or so).
10029         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10030           Change signal type to scope, so we can fill the buffer in the
10031           handoff handler (that's the whole use of this signal...).
10032
10033 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10034
10035         * docs/pwg/other-ntoone.xml:
10036           Document muxers and n-to-1 elements.
10037
10038 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10039
10040         * gst/registries/gstxmlregistry.c
10041         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10042         determine if a file is a G_MODULE. The old one discards paths
10043         containing "so" somewhere in the middle. My home directory is
10044         called "soto". Go figure...
10045
10046 2004-03-31  David Schleef  <ds@schleef.org>
10047
10048         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10049         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10050         * gst/gstbuffer.h:
10051
10052 2004-03-31  David Schleef  <ds@schleef.org>
10053
10054         * gst/gstvalue.c: (gst_value_union_int_int_range),
10055         (gst_value_union_int_range_int_range), (gst_value_can_union),
10056         (gst_value_union), (_gst_value_initialize):  Add some union
10057         implementations.  We didn't have any previously.
10058         * testsuite/caps/Makefile.am:
10059         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10060         (gst_audioscale_getcaps), (test_caps), (main): A little test
10061         that is the same as the caps manipulation in audioscale.
10062
10063 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10064
10065         * docs/faq/general.xml:
10066           add entry about "does gst support format X?"
10067
10068 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10069
10070         * gst/gstthread.c:
10071           fix docs
10072         * gst/gstutils.h:
10073           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10074
10075 2004-03-30  Benjamin Otte  <otte@gnome.org>
10076
10077         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10078           set the offset of the buffer to the requested offset
10079         * gst/elements/gsttypefind.c: (stop_typefinding):
10080           revert patch 1.18 (which I unfortunately don't know the reason for).
10081           This is needed to allow downstream elements to seek. Otherwise
10082           typefind might overwrite a previous seek by downstream elements.
10083           This lead to errors with id3tag and typefind on some mp3s.
10084         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10085         (gst_entry_scheduler_iterate):
10086           be more verbose when debugging
10087
10088 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10089
10090         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10091           make sure we don't get NULL strings
10092
10093 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10094
10095         * gst/gstcaps.c:
10096         * gst/gstelement.c:
10097         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10098         * gst/gstindex.c: (gst_index_resolver_get_type),
10099         (gst_index_get_type), (gst_index_factory_get_type):
10100         * gst/gstinfo.c:
10101         * gst/gstpad.c:
10102         * gst/gstplugin.c:
10103         * gst/gsturi.c: (gst_uri_handler_get_type):
10104         * gst/gstvalue.c:
10105           first batch of documentation fixes
10106
10107 2004-03-29  David Schleef  <ds@schleef.org>
10108
10109         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10110         * docs/gst/gstreamer-docs.sgml:  More hacking
10111         * docs/gst/gstreamer-sections.txt:
10112         * docs/gst/tmpl/cothreads_compat.sgml:
10113         * docs/gst/tmpl/gstcaps.sgml:
10114         * docs/gst/tmpl/gstclock.sgml:
10115         * docs/gst/tmpl/gstelement.sgml:
10116         * docs/gst/tmpl/gstevent.sgml:
10117         * docs/gst/tmpl/gstpad.sgml:
10118         * docs/gst/tmpl/gstutils.sgml:
10119         * docs/gst/tmpl/gstxml.sgml:
10120         * docs/gst/tmpl/gthread-cothreads.sgml:
10121         * docs/random/ds/0.9-suggested-changes:
10122         * gst/elements/gstfakesink.h: doc fixes
10123         * gst/elements/gstfakesrc.h: doc fixes
10124         * gst/gstcaps.c: doc fixes
10125         * gst/gstcaps.h: doc fixes
10126         * gst/gstelement.c: doc fixes
10127         * gst/gstelement.h: doc fixes
10128         * gst/gstindex.c: doc fixes
10129         * gst/gstinfo.c: doc fixes
10130         * gst/gstpad.c: doc fixes
10131         * gst/gstpad.h: doc fixes
10132         * gst/gstplugin.c: doc fixes
10133         * gst/gsttypefind.h: doc fixes
10134         * gst/gsturi.c: doc fixes
10135         * gst/gstvalue.c: doc fixes
10136
10137 2004-03-29  Colin Walters  <walters@redhat.com>
10138
10139         * gst/registries/gstxmlregistry.c (get_time)
10140         (plugin_times_older_than_recurse):
10141         Use the result of stat to determine whether a path is a file,
10142         so we don't attempt to opendir() files.
10143
10144 2004-03-29  Benjamin Otte  <otte@gnome.org>
10145
10146         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10147           print caps in debugging output when setting caps failed
10148         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10149         (schedule_next_element), (get_buffer), (run_chainhandler),
10150         (element_may_start), (gst_entry_scheduler_chain_handler),
10151         (gst_entry_scheduler_get_handler),
10152         (gst_entry_scheduler_state_transition),
10153         (gst_entry_scheduler_pad_link):
10154           make this scheduler a testcase for mandatory
10155           discont-before-first-buffer which is needed if we want to allow apps
10156           to release the sound device.
10157           add SCHED_ASSERT macro to print scheduler state before an assertion
10158           triggers.
10159
10160 2004-03-29  Benjamin Otte  <otte@gnome.org>
10161
10162         * COPYING:
10163           replace by LGPL (former COPYING.LIB). The core is completely
10164           licensed LGPL.
10165         * COPYING.LIB:
10166           remove
10167
10168 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10169
10170         * po/af.po:
10171         * po/sv.po:
10172           updated Afrikaans and Swedish
10173
10174 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10175
10176         * po/LINGUAS:
10177         * po/az.po:
10178           adding Azerbaijani (Mətin Əmirov)
10179
10180 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10181
10182         * gst/gstelement.h: 
10183         * gst/gstelement.c (gst_element_set_time_delay): New function for
10184         setting element time taking into account a hardware buffering
10185         delay.
10186         (gst_element_set_time): Now just an invocation of
10187         gst_element_set_time_delay.
10188         * gst/gstclock.h: 
10189         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10190         allowing to set event times in the future.
10191         (gst_clock_get_event_time): Now just an invocation of
10192         gst_clock_get_event_time_delay.
10193
10194 2004-03-28  Benjamin Otte  <otte@gnome.org>
10195
10196         * gst/gstbin.c: (gst_bin_set_element_sched),
10197         (gst_bin_unset_element_sched):
10198           don't add decoupled elements to schedulers - otherwise it's
10199           impossible to control if a link to a decoupled element was already
10200           removed from a scheduler or not.
10201         * gst/schedulers/cothreads_compat.h:
10202         * gst/schedulers/gthread-cothreads.h:
10203           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10204           is no "unused" warning.
10205         * gst/schedulers/Makefile.am:
10206         * gst/schedulers/entryscheduler.c:
10207           add new scheduler, based on ideas from talking to David and Martin.
10208           It's supposed to be small and correct. Currently it's also slow (but
10209           it's not noticable)
10210         * examples/retag/retag.c: (main):
10211         * testsuite/bytestream/test1.c: (main):
10212           fix missing NULLs at end of variadic functions
10213         * testsuite/elements/.cvsignore:
10214           update
10215
10216 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10217
10218         * gst/gstevent.h:
10219         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10220
10221 2004-03-25  David Schleef  <ds@schleef.org>
10222
10223         * docs/gst/gstreamer-sections.txt:  More doc hacking.
10224         * docs/gst/tmpl/gstaggregator.sgml:
10225         * docs/gst/tmpl/gstautoplugfactory.sgml:
10226         * docs/gst/tmpl/gstbin.sgml:
10227         * docs/gst/tmpl/gstbuffer.sgml:
10228         * docs/gst/tmpl/gstbufferstore.sgml:
10229         * docs/gst/tmpl/gstfakesink.sgml:
10230         * docs/gst/tmpl/gstfakesrc.sgml:
10231         * docs/gst/tmpl/gstmd5sink.sgml:
10232         * docs/gst/tmpl/gstreamer-unused.sgml:
10233         * docs/gst/tmpl/gstsearchfuncs.sgml:
10234         * docs/gst/tmpl/gstshaper.sgml:
10235         * docs/gst/tmpl/gstspider.sgml:
10236         * docs/gst/tmpl/gsttee.sgml:
10237         * docs/gst/tmpl/gstutils.sgml:
10238         * docs/gst/tmpl/gstvalue.sgml:
10239         * docs/gst/tmpl/gstxml.sgml:
10240         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
10241         and we don't support it.
10242         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
10243         (gst_use_threads), (gst_has_threads): same
10244         * gst/gstthreaddummy.c: same
10245         * gst/autoplug/gstspider.c: Make gst_spider_details static.
10246         * gst/autoplug/gstspider.h: same
10247         * gst/elements/gstaggregator.h: Remove bogus function from header
10248         * gst/elements/gstfakesink.h: same
10249         * gst/elements/gstfakesrc.h: same
10250         * gst/elements/gstmd5sink.h: same
10251         * gst/elements/gstshaper.h: same
10252         * gst/elements/gsttee.h: same
10253         * gst/gstbin.c: doc fixes
10254         * gst/gstbin.h: Remove unused definition.
10255         * gst/gstbuffer.c: doc fixes
10256         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
10257         * gst/gstfilter.c: doc fixes
10258         * gst/gsttag.c: doc fixes
10259         * gst/gstvalue.c: doc fixes
10260
10261 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10262
10263         * docs/pwg/advanced-types.xml:
10264           Document typefinding.
10265         * docs/pwg/other-oneton.xml:
10266           Document one-to-n elements, demuxers and parsers.
10267
10268 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
10269
10270         reviewed by: David Schleef  <ds@schleef.org>
10271
10272         * configure.ac: Check bison version (bug #127838)
10273
10274 2004-03-25  David Schleef  <ds@schleef.org>
10275
10276         * docs/gst/gstreamer-docs.sgml: More fine tuning.
10277         * docs/gst/gstreamer-sections.txt:
10278         * docs/gst/tmpl/gstautoplug.sgml:
10279         * docs/gst/tmpl/gststaticautoplug.sgml:
10280         * docs/gst/tmpl/gststaticautoplugrender.sgml:
10281         * docs/gst/tmpl/gstutils.sgml:
10282         * docs/gst/tmpl/gstxml.sgml:
10283
10284 2004-03-24  David Schleef  <ds@schleef.org>
10285
10286         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
10287         manual being such complete crap, that I decided to do major
10288         hacking of it.  This checkin replaces any fine tuning that
10289         may have been done previously, with the benefit of actually
10290         being complete for much of the API that was changed since
10291         0.6.  Further fine tuning will occur shortly.  (bug #134721)
10292         * docs/gst/gstreamer-sections.txt:
10293         * docs/gst/tmpl/GstBin.sgml:
10294         * docs/gst/tmpl/GstBuffer.sgml:
10295         * docs/gst/tmpl/GstCaps.sgml:
10296         * docs/gst/tmpl/GstClock.sgml:
10297         * docs/gst/tmpl/GstCompat.sgml:
10298         * docs/gst/tmpl/GstData.sgml:
10299         * docs/gst/tmpl/GstElement.sgml:
10300         * docs/gst/tmpl/GstEvent.sgml:
10301         * docs/gst/tmpl/GstIndex.sgml:
10302         * docs/gst/tmpl/GstStructure.sgml:
10303         * docs/gst/tmpl/GstTag.sgml:
10304         * docs/gst/tmpl/cothreads.sgml:
10305         * docs/gst/tmpl/cothreads_compat.sgml:
10306         * docs/gst/tmpl/gettext.sgml:
10307         * docs/gst/tmpl/grammar.tab.sgml:
10308         * docs/gst/tmpl/gst-i18n-app.sgml:
10309         * docs/gst/tmpl/gst-i18n-lib.sgml:
10310         * docs/gst/tmpl/gst.sgml:
10311         * docs/gst/tmpl/gst_private.sgml:
10312         * docs/gst/tmpl/gstaggregator.sgml:
10313         * docs/gst/tmpl/gstarch.sgml:
10314         * docs/gst/tmpl/gstatomic.sgml:
10315         * docs/gst/tmpl/gstatomic_impl.sgml:
10316         * docs/gst/tmpl/gstbin.sgml:
10317         * docs/gst/tmpl/gstbuffer.sgml:
10318         * docs/gst/tmpl/gstbufferstore.sgml:
10319         * docs/gst/tmpl/gstcaps.sgml:
10320         * docs/gst/tmpl/gstclock.sgml:
10321         * docs/gst/tmpl/gstcompat.sgml:
10322         * docs/gst/tmpl/gstconfig.sgml:
10323         * docs/gst/tmpl/gstcpu.sgml:
10324         * docs/gst/tmpl/gstdata.sgml:
10325         * docs/gst/tmpl/gstdata_private.sgml:
10326         * docs/gst/tmpl/gstelement.sgml:
10327         * docs/gst/tmpl/gstenumtypes.sgml:
10328         * docs/gst/tmpl/gsterror.sgml:
10329         * docs/gst/tmpl/gstevent.sgml:
10330         * docs/gst/tmpl/gstfakesink.sgml:
10331         * docs/gst/tmpl/gstfakesrc.sgml:
10332         * docs/gst/tmpl/gstfilesink.sgml:
10333         * docs/gst/tmpl/gstfilter.sgml:
10334         * docs/gst/tmpl/gstindex.sgml:
10335         * docs/gst/tmpl/gstinfo.sgml:
10336         * docs/gst/tmpl/gstinterface.sgml:
10337         * docs/gst/tmpl/gstlog.sgml:
10338         * docs/gst/tmpl/gstmacros.sgml:
10339         * docs/gst/tmpl/gstmarshal.sgml:
10340         * docs/gst/tmpl/gstmd5sink.sgml:
10341         * docs/gst/tmpl/gstmultifilesrc.sgml:
10342         * docs/gst/tmpl/gstobject.sgml:
10343         * docs/gst/tmpl/gstpad.sgml:
10344         * docs/gst/tmpl/gstparse.sgml:
10345         * docs/gst/tmpl/gstpipeline.sgml:
10346         * docs/gst/tmpl/gstplugin.sgml:
10347         * docs/gst/tmpl/gstpluginfeature.sgml:
10348         * docs/gst/tmpl/gstqueue.sgml:
10349         * docs/gst/tmpl/gstreamer-unused.sgml:
10350         * docs/gst/tmpl/gstregistry.sgml:
10351         * docs/gst/tmpl/gstregistrypool.sgml:
10352         * docs/gst/tmpl/gstscheduler.sgml:
10353         * docs/gst/tmpl/gstsearchfuncs.sgml:
10354         * docs/gst/tmpl/gstshaper.sgml:
10355         * docs/gst/tmpl/gstspider.sgml:
10356         * docs/gst/tmpl/gstspideridentity.sgml:
10357         * docs/gst/tmpl/gststructure.sgml:
10358         * docs/gst/tmpl/gstsystemclock.sgml:
10359         * docs/gst/tmpl/gsttag.sgml:
10360         * docs/gst/tmpl/gsttaginterface.sgml:
10361         * docs/gst/tmpl/gsttee.sgml:
10362         * docs/gst/tmpl/gstthread.sgml:
10363         * docs/gst/tmpl/gsttrace.sgml:
10364         * docs/gst/tmpl/gsttrashstack.sgml:
10365         * docs/gst/tmpl/gsttypefind.sgml:
10366         * docs/gst/tmpl/gsttypes.sgml:
10367         * docs/gst/tmpl/gsturi.sgml:
10368         * docs/gst/tmpl/gsturitype.sgml:
10369         * docs/gst/tmpl/gstutils.sgml:
10370         * docs/gst/tmpl/gstvalue.sgml:
10371         * docs/gst/tmpl/gstversion.sgml:
10372         * docs/gst/tmpl/gstxml.sgml:
10373         * docs/gst/tmpl/gstxmlregistry.sgml:
10374         * docs/gst/tmpl/gthread-cothreads.sgml:
10375         * docs/gst/tmpl/types.sgml:
10376
10377 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10378
10379         * docs/pwg/other-sink.xml:
10380         * docs/pwg/other-source.xml:
10381           Documentation on how to write source and sink elements. Other
10382           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
10383           manager, autoplugger) are all still pending.
10384
10385 2004-03-25  Benjamin Otte  <otte@gnome.org>
10386
10387         * testsuite/elements/Makefile.am:
10388         * testsuite/elements/gst-compprep-check:
10389           add check to make sure gst-compprep works
10390         * testsuite/elements/gst-inspect-check.in:
10391           improve initialization output
10392         * testsuite/Makefile.am:
10393         * testsuite/gst-inspect-check:
10394           remove old file
10395
10396 2004-03-24  David Schleef  <ds@schleef.org>
10397
10398         * testsuite/elements/Makefile.am:
10399         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
10400         to the testsuite.
10401
10402 2004-03-24  Benjamin Otte  <otte@gnome.org>
10403
10404         * libs/gst/control/dparam.c: (gst_dparam_attach),
10405         (gst_dparam_detach):
10406         * libs/gst/control/dparammanager.c: (gst_dpman_init):
10407           fix lvalue casts for real
10408
10409 2004-03-24  Benjamin Otte  <otte@gnome.org>
10410
10411         * gst/schedulers/gstbasicscheduler.c:
10412         (gst_basic_scheduler_src_wrapper):
10413         * gst/schedulers/gstoptimalscheduler.c:
10414         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
10415         (pad_clear_queued), (gst_opt_scheduler_add_element),
10416         (gst_opt_scheduler_remove_element):
10417           fix GStreamer to not have issues with lvalue casts anymore (fixes
10418           #136841)
10419
10420 2004-03-24  Benjamin Otte  <otte@gnome.org>
10421
10422         * gst/gstelement.c:
10423           add documentation about a gobject quirk where the object hasn't the
10424           correct class pointer set on initialization
10425         * gst/schedulers/gstbasicscheduler.c:
10426         (gst_basic_scheduler_src_wrapper):
10427           make sure to not run into an infinite loop
10428
10429 2004-03-22  Benjamin Otte  <otte@gnome.org>
10430
10431         * gst/gstutils.c: (gst_util_dump_mem):
10432         * gst/gstutils.h:
10433           first argument of gst_util_dump_mem should be const
10434
10435 2004-03-22  Johan Dahlin  <johan@gnome.org>
10436
10437         * gst/gstvalue.h: Clean up a little bit.
10438
10439 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
10440
10441         reviewed by Benjamin Otte  <otte@gnome.org>
10442
10443         * gst/autoplug/gstspider.c: (gst_spider_dispose):
10444         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
10445         (gst_aggregator_class_init), (gst_aggregator_init):
10446         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10447         (gst_filesrc_dispose), (gst_filesrc_set_location):
10448         * gst/elements/gstidentity.c: (gst_identity_finalize),
10449         (gst_identity_class_init), (gst_identity_chain):
10450         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
10451         * gst/elements/gststatistics.c: (gst_statistics_finalize),
10452         (gst_statistics_class_init):
10453         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
10454         (gst_tee_get_property):
10455           clean up used memory in this elements correctly on teardown (closes
10456           #137279)
10457
10458 2004-03-20  Colin Walters  <walters@redhat.com>
10459
10460         * gst/registries/gstxmlregistry.c:
10461         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
10462         registry saving atomic.
10463
10464 2004-03-20  Colin Walters  <walters@redhat.com>
10465
10466         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
10467         Just use
10468         access() instead of actually creating and deleting files.
10469
10470 2004-03-18  David Schleef  <ds@schleef.org>
10471
10472         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
10473         (bug #137625)
10474
10475 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10476
10477         * po/sv.po: updated translation (Christian Rose)
10478
10479 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10480
10481         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10482         (gst_filesink_get_query_types), (_do_init),
10483         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
10484           return FALSE silently
10485         * po/af.po: updated translation (Petri Jooste)
10486
10487 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10488
10489         * Makefile.am:
10490         * configure.ac:
10491           dist common properly
10492         * po/af.po:
10493         * po/fr.po:
10494         * po/nl.po:
10495         * po/sr.po:
10496         * po/sv.po:
10497           refreshing translations
10498
10499 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10500
10501         * po/LINGUAS:
10502         * po/sv.po:
10503         * po/af.po:
10504           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
10505
10506 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10507
10508         * Makefile.am: use common/release.mak
10509
10510 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10511
10512         * docs/faq/gst-uninstalled:
10513           adding gst-monkeysaudio to the list of possible plugin dirs
10514
10515 2004-03-16  David Schleef  <ds@schleef.org>
10516
10517         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
10518         (gst_init_check_with_popt_table):  Fix some gettext strings to
10519         make them easier to translate.  Required making the strings
10520         non-const.
10521
10522 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10523
10524         * configure.ac: bump nano to 1
10525
10526 === release 0.8.0 ===
10527
10528 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10529
10530         * configure.ac: release 0.8.0, "Executive Slacks"
10531
10532 2004-03-16  Johan Dahlin  <johan@gnome.org>
10533
10534         * gst/schedulers/gstoptimalscheduler.c
10535         (gst_opt_scheduler_pad_unlink): Remove double ;,
10536         spotted by Scott Wheeler
10537
10538 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10539
10540         * configure.ac: bump libtool version
10541
10542 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10543
10544         * gst/gstcaps.h:
10545         * gst/gststructure.h:
10546           add reserved padding
10547
10548 2004-03-15  Benjamin Otte  <otte@gnome.org>
10549
10550         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10551           set the first parameter for select call correctly.
10552           (fixes #137230)
10553
10554 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10555
10556         * *.c,*.h: don't mix tabs and spaces
10557
10558 2004-03-15  Johan Dahlin  <johan@gnome.org>
10559
10560         * gst/schedulers/gstoptimalscheduler.c
10561         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
10562         crash on MPEG playback. My boolean arithmetic is a bit rusty.
10563
10564         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
10565         
10566 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10567
10568         * testsuite/Rules:
10569           fix gst-register rules
10570
10571 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10572
10573         * testsuite/Rules:
10574           use versioned gst-register
10575
10576 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10577
10578         * docs/libs/gstreamer-libs-sections.txt:
10579           remove </SUBSECTION>
10580         * gst/gstplugin.c:
10581         * gst/gstregistry.c: (gst_registry_add_plugin):
10582         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
10583         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
10584           add debugging and fix some comment blocks
10585
10586 2004-03-15  Johan Dahlin  <johan@gnome.org>
10587
10588         * *.h: Revert indent changes.
10589         
10590 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10591
10592         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
10593           g_error_free the g_error
10594         * tools/gst-feedback-m.m:
10595           check for other versions of gstreamer
10596         * tools/gst-indent:
10597           use sh, not bash
10598
10599 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10600
10601         * tools/gst-register.c: do not spill paths when registries are not
10602           writable, until we fix the "user running gst-register" case.
10603
10604 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10605
10606         * *.c, *.h: commit of gst-indent run on core
10607
10608 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10609
10610         * tools/gst-indent:
10611         * tools/Makefile.am:
10612           add our indentation style as a script
10613
10614 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10615
10616         * po/sr.po:
10617         * po/LINGUAS:
10618           added Serbian translation
10619
10620 2004-03-13  Benjamin Otte  <otte@gnome.org>
10621
10622         * gst/gstelement.c:
10623           add documentation note about gst_element_found_tags_for_pad not
10624           being usable in getfunctions. (see #137042)
10625
10626 2004-03-12  David Schleef  <ds@schleef.org>
10627
10628         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
10629         change API right now!  Readd gst_caps_is_simple() macro.
10630         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
10631         uninitialized variable.  I'd bet this caused crashes.
10632         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
10633
10634 2004-03-12  Johan Dahlin  <johan@gnome.org>
10635
10636         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
10637         * gst/gstcaps.h: Clean up
10638
10639         * gst/gst.c (init_post): call gst_caps_get_type() instead of
10640         _gst_caps_initalize()
10641
10642         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
10643         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
10644
10645         * gst/gststructure.c (gst_structure_get_type): Ditto
10646
10647         * gst/gststructure.h: Ditto
10648         
10649 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10650
10651         * gst/gstqueue.c: (gst_queue_init):
10652           Reset default max. values in queues. Reason is simply to avoid
10653           braindead use. If you want wider values, use the properties. The
10654           default is supposed to always work. Wider values would make this
10655           beast a memory hog by default (250 full-PAL RGB32 video frames?
10656           That's 440 MB! No thank you).
10657
10658 2004-03-10  David Schleef  <ds@schleef.org>
10659
10660         * tools/gst-run.c: (main):  Fix crash when no relevant tools
10661         were found.  (bug #136793)
10662
10663 2004-03-10  Johan Dahlin  <johan@gnome.org>
10664
10665         * gst/schedulers/gstoptimalscheduler.c
10666         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
10667         links to elements within the same group, so we can finally remove
10668         that annoying warning. Refactor the code a little bit
10669         (group_dec_links_for_element): Split out
10670
10671 2004-03-09  David Schleef  <ds@schleef.org>
10672
10673         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
10674         (bug #134863)
10675
10676 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10677
10678         * configure.ac: first bug fix due to major/minor bump
10679
10680 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10681
10682         * configure.ac: bump nano to 1
10683
10684 === release 0.7.6 ===
10685
10686 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
10687
10688         * NEWS:
10689         * RELEASE:
10690         * configure.ac:
10691           releasing 0.7.6, "Almost"
10692         * po/fr.po:
10693         * po/nl.po:
10694         * tools/Makefile.am:
10695         * tools/gst-feedback-m.m:
10696           unversioned source
10697
10698 2004-03-09  Johan Dahlin  <johan@gnome.org>
10699
10700         Reviewed by: Thomas Vander Stichele
10701
10702         * gst/gstelement.c (gst_element_class_init): register second
10703         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
10704         language bindings can (de)marshall correctly.
10705
10706         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
10707
10708         * gst/gsterror.c (gst_g_error_get_type): New function
10709
10710         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
10711         with VOID:OBJECT,OBJECT,STRING 
10712
10713 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
10714
10715         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
10716         Free a leaked g_timer on early returns.
10717
10718 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10719
10720         * docs/pwg/advanced-types.xml:
10721           Add cinepak description.
10722
10723 2004-03-07  David Schleef  <ds@schleef.org>
10724
10725         * docs/random/mimetypes:  Added cinepak description
10726
10727 2004-03-07  Andy Wingo  <wingo@pobox.com>
10728
10729         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
10730
10731         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
10732         there are no links to other groups when a group is destroyed.
10733         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
10734         removed from a group, make sure the link count to elements linked
10735         to other pads is appropriately decremented. This really fixes
10736         #135672.
10737
10738         The 1.60->1.61 patch has been reapplied in light of this fix.
10739
10740         * gst/gstelement.c (gst_element_dispose): Really protect against
10741         multiple invocations this time.
10742
10743 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10744
10745         * docs/gst/gstreamer-sections.txt:
10746         * docs/gst/tmpl/gsttag.sgml:
10747           remove some deprecated functions, document some existing ones
10748         * gst/gsttag.c: (gst_tag_get_flag):
10749         * gst/gsttag.h:
10750           add accessor function
10751
10752 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10753
10754         * docs/gst/gstreamer-sections.txt:
10755         * docs/gst/tmpl/gsttag.sgml:
10756         * docs/gst/tmpl/gstxml.sgml:
10757         * gst/gsttag.c: (gst_tag_get_flag):
10758         * gst/gsttag.h:
10759
10760 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
10761
10762         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
10763         leak
10764
10765 2004-03-05  David Schleef  <ds@schleef.org>
10766
10767         * REQUIREMENTS: Add bison and flex.
10768         * configure.ac: Fix comment about bison.
10769         * docs/random/ds/0.9-suggested-changes: yer ma
10770         * tools/gst-inspect.c: (print_element_info):  Fix warning.
10771
10772 2004-03-05  Benjamin Otte  <otte@gnome.org>
10773
10774         * gst/gstelement.c: (gst_element_error_full):
10775           revert recent recursive state changing commit - messing with other
10776           elements' states is evil and should be done by apps only.
10777
10778 2004-03-05  Benjamin Otte  <otte@gnome.org>
10779
10780         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
10781           check for empty intersection instead of NULL caps
10782         (gst_element_get_compatible_pad_filtered):
10783           remove old workaround that is only a bug nowadays
10784
10785 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10786
10787         * gst/gstelement.c: (gst_element_error_full):
10788           make elements try to recursively change state to PAUSED on all
10789           parents after an error to suppress ensuing warnings
10790         * gst/parse/grammar.y:
10791           make it check if it was able to sync the state, and throw an error
10792           if not, so stuff like
10793           oggdemux ! vorbisdec ! osssink gets caught
10794
10795 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10796
10797         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
10798           it contains lib64; use AS_AC_EXPAND to handle it properly
10799
10800 2004-03-05  David Schleef  <ds@schleef.org>
10801
10802         * gst/gstcpuid_i386.s:  Remove unused code
10803         * libs/gst/getbits/getbits.c: (gst_getbits_init),
10804         (gst_getbits_newbuf): Remove MMX code
10805         * libs/gst/getbits/getbits.h: Remove MMX code
10806
10807 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
10808
10809         * debian/.cvsignore:
10810         * debian/README.Debian:
10811         * debian/changelog:
10812         * debian/control:
10813         * debian/control.in:
10814         * debian/copyright:
10815         * debian/gstreamer-core-libs-dev.files:
10816         * debian/gstreamer-core-libs.files:
10817         * debian/gstreamer-core.files:
10818         * debian/gstreamer-core.postinst:
10819         * debian/gstreamer-core.postrm:
10820         * debian/gstreamer-doc.files:
10821         * debian/gstreamer-doc.links:
10822         * debian/gstreamer-doc.lintian:
10823         * debian/gstreamer-runtime.files:
10824         * debian/gstreamer-runtime.manpages:
10825         * debian/gstreamer-runtime.postinst:
10826         * debian/gstreamer-runtime.postrm:
10827         * debian/gstreamer-tools.files:
10828         * debian/gstreamer-tools.manpages:
10829         * debian/libgstreamer-dev.files:
10830         * debian/libgstreamer0.4.1.files:
10831         * debian/libgstreamerVERSION.files:
10832         * debian/rules:
10833         Debian package info not maintained here.
10834
10835 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10836
10837         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
10838         * gst/gstbin.c: (gst_bin_class_init):
10839         * gst/gstelement.c: (gst_element_class_init):
10840         * gst/gstindex.c: (gst_index_class_init):
10841         * gst/gstobject.c: (gst_object_class_init),
10842         (gst_signal_object_class_init):
10843         * gst/gstpad.c: (gst_pad_template_class_init):
10844         * gst/gstregistry.c: (gst_registry_class_init):
10845         * gst/gsturi.c: (gst_uri_handler_base_init):
10846         * gst/gstxml.c: (gst_xml_class_init):
10847         * libs/gst/control/dparam.c: (gst_dparam_class_init):
10848         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
10849           make all signal names use dashes instead of underscore
10850
10851 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10852
10853         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
10854
10855 2004-03-03  Benjamin Otte  <otte@gnome.org>
10856
10857         * gst/schedulers/gstoptimalscheduler.c:
10858           revert last commit by Andy Wingo. It causes segfaults on unreffing
10859           in Rhythmbox. (see bug #135672)
10860
10861 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10862
10863         * po/fr.po: fix typo
10864
10865 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
10866
10867         * tools/gst-inspect.c: (main): 
10868         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
10869
10870 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10871
10872         * configure.ac:
10873           get GLIB_ONLY and POPT flags for the nonversioned binaries
10874         * tools/Makefile.am:
10875           use them
10876
10877 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10878
10879         * gst/gst.c: (init_post):
10880           change so that GST_REGISTRY now is where the global registry gets
10881           saved, since that is where plugins now get attached to first, and
10882           spilled over to the user registry.  Note that in the case of using
10883           GST_REGISTRY env var, we don't want to affect any real registries
10884           beyond the one given by this var, and thus we don't set a user
10885           registry to spill to.  So make sure GST_REGISTRY is writable.
10886
10887 2004-03-01  David Schleef  <ds@schleef.org>
10888
10889         * AUTHORS:  Added some names.  Add yourself if you're missing.
10890
10891 2004-03-01  David Schleef  <ds@schleef.org>
10892
10893         * MAINTAINERS: Add
10894
10895 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
10896
10897         * configure.ac:
10898           remove whitespace
10899         * docs/gst/tmpl/gstbuffer.sgml:
10900         * docs/gst/tmpl/gstdata.sgml:
10901         * docs/gst/tmpl/gstreamer-unused.sgml:
10902         * docs/gst/tmpl/gstxml.sgml:
10903           doc update
10904         * docs/manuals.mak:
10905           add a FIXME
10906         * docs/pwg/intro-preface.xml:
10907         * docs/pwg/pwg.xml:
10908           remove GNOME
10909         * gst/gst.c: (init_post):
10910           try GST_PLUGIN_PATH paths for the _global_registry first
10911         * gst/gstelement.h:
10912           add the error message as well, otherwise (null) debug info doesn't
10913           make much sense
10914         * tools/gst-register.c: (main):
10915           spill paths to next registry if this registry is not writable
10916         * po/fr.po:
10917         * po/nl.po:
10918           translation updates
10919
10920 2004-03-01  Johan Dahlin  <johan@gnome.org>
10921
10922         * gst/gstbuffer.c (_gst_buffer_initialize): 
10923         * gst/gstdata.c (gst_data_get_type): 
10924         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
10925         instead of ref, since some applications that uses GBoxed
10926         routines depends on a function that actually returns a copy.
10927
10928 2004-02-27  Benjamin Otte  <otte@gnome.org>
10929
10930         * gst/gstbuffer.h:
10931           remove gst_buffer_free, use gst_data_unref
10932         * gst/gstdata.c: (gst_data_get_type):
10933           use refcounting in GstData GBoxed registration
10934         * gst/gstdata.h:
10935           remove gst_data_free, use gst_data_unref
10936
10937 2004-02-27  Johan Dahlin  <johan@gnome.org>
10938
10939         * gst/gstdata.c (gst_data_get_type): New function, register
10940         GstData as a GBoxed type.
10941
10942         * gst/gstdata.h (GST_TYPE_DATA): New macro
10943
10944 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
10945
10946         * Makefile.am:
10947         * gstreamer.spec.in:
10948           put back RELEASE
10949         * gst/Makefile.am:
10950           clean up non-disting of built files
10951         * testsuite/debug/commandline.c:
10952           test fix for option rename
10953
10954 2004-02-26  David Schleef  <ds@schleef.org>
10955
10956         * configure.ac:  We don't really need glib-2.3.  Also remove
10957         some unneeded checks for library functions.
10958         * gst/Makefile.am:  Instead, we need to not dist files created
10959         by glib-genmarshal.
10960
10961 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10962
10963         * configure.ac:
10964           bump glib required version to 2.3.0 for g_value_takes_boxed
10965
10966  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
10967
10968         * common/m4/gst-docs.m4
10969         change flavour text from enable to disable as enable is our default
10970         closes bug Bug 135304
10971
10972 === release 0.7.5 ===
10973  
10974  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10975  
10976         * NEWS:
10977           instate NEWS file
10978         * Makefile.am:
10979         * gstreamer.spec.in:
10980         * RELEASE:
10981           put back release
10982         * configure.ac:
10983         * docs/random/release:
10984           more updates
10985
10986 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10987
10988         * gst/gsttag.c: (_gst_tag_initialize):
10989         * po/fr.po:
10990         * po/nl.po:
10991           remove hyphen from codec tags
10992
10993 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10994
10995         * gst/parse/Makefile.am:
10996           fix dependency so that a make from a clean build works the first
10997           time
10998
10999 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11000
11001         * docs/random/release:
11002           update release strategy
11003         * po/fr.po:
11004           auto-update po file
11005         * po/nl.po:
11006           update dutch translation
11007
11008 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11009
11010         * docs/manual/debugging.xml:
11011         fix manual for new debugging system
11012
11013 2004-02-25  Andy Wingo  <wingo@pobox.com>
11014
11015         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11016         gst_pad_link_prepare. Please email the list with specific reasons
11017         for reverting.
11018
11019 2004-02-24  Andy Wingo  <wingo@pobox.com>
11020
11021         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11022         invocations.
11023
11024         * gst/schedulers/gstoptimalscheduler.c:
11025         I added a mess of prototypes at the top of the file by way of
11026         documentation. Some of the operations on chains and groups were
11027         re-organized.
11028
11029         (create_group): Added a type argument so if the group is enabled,
11030         the setup_group_scheduler knows what to do.
11031         (group_elements): Added a type argument here, too, to be passed on
11032         to create_group.
11033         (group_element_set_enabled): If an unlinked PLAYING element is
11034         added to a bin, we have to create a new group to hold the element,
11035         and this function will be called before the group is added to the
11036         chain. Thus we have a valid case for group->chain==NULL. Instead
11037         of calling chain_group_set_enabled, just set the flag on the group
11038         (the chain's status will be set when the group is added to it).
11039         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11040         Setup the group scheduler when the group is enabled, not
11041         specifically when an element goes PAUSED->PLAYING. This means
11042         PLAYING elements can be added, linked, and scheduled into a
11043         PLAYING pipeline, as was intended.
11044         (add_to_group): Don't ref the group twice. I don't know when this
11045         double-ref got in here. Removing it has the potential to cause
11046         segfaults if other parts of the scheduler are buggy. If you find
11047         that the scheduler is segfaulting for you, put in an extra ref
11048         here and see if that hacks over the underlying issue. Of course,
11049         then find out what code is unreffing a group it doesn't own...
11050         (create_group): Make the extra refcount floating, and remove it
11051         after adding the element. This means that...
11052         (unref_group): Destroy when the refcount reaches 0, not 1, like
11053         every other refcounted object in the known universe.
11054         (remove_from_group): When a group becomes empty, set it to be not
11055         active, and remove it from its chain. Don't unref it again,
11056         there's no floating reference any more.
11057         (destroy_group): We have to remove the group from the chain in
11058         remove_from_group (rather than here) to break refcounting cycles
11059         (the chain always has a ref on the group). So assert that
11060         group->chain==NULL.
11061         (ref_group_by_count): Removed, it was commented out anyway.
11062         (merge_chains): Use the remove_from_chain and add_to_chain
11063         primitives to do the reparenting, instead of rolling our own
11064         implementation.
11065         (add_to_chain): The first non-disabled group in the chain's group
11066         list will be the entry point for the chain. Because buffers can
11067         accumulate in loop elements' peer bufpens, we preferentially
11068         schedule loop groups before get groups to avoid unnecessary
11069         execution of get-based groups when the bufpens are already full.
11070         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11071         (get_group_schedule_function): Ditto.
11072         (loop_group_schedule_function): Ditto.
11073         (gst_opt_scheduler_loop_wrapper): Ditto.
11074         (gst_opt_scheduler_iterate): Ditto.
11075
11076         I understand the opt scheduler now, yippee!
11077
11078         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11079         (gst_pad_get_name, gst_pad_set_chain_function) 
11080         (gst_pad_set_get_function, gst_pad_set_event_function) 
11081         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11082         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11083         (gst_pad_set_query_function, gst_pad_get_query_types) 
11084         (gst_pad_get_query_types_default) 
11085         (gst_pad_set_internal_link_function) 
11086         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11087         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11088         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11089         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11090         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11091         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11092         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11093         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11094         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11095         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11096         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11097         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11098         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11099         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11100         argument checks, and some doc fixes.
11101
11102         (gst_pad_custom_new_from_template): Um, does anyone
11103         use these functions? Actually make a custom pad instead of a
11104         normal one.
11105         (gst_pad_try_set_caps): Transpose some checks.
11106         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11107         the pad is in negotiation.
11108         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11109         
11110         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11111
11112         * gst/gstelement.h: 
11113         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11114         on the list.
11115
11116 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11117
11118         * gst/gstbin.c: (gst_bin_add):
11119           add error for not being able to add elements
11120
11121 2004-02-22  Julien MOUTTE <julien@moutte.net>
11122
11123         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11124         audio-codec and video-codec.
11125
11126 2004-02-22  Benjamin Otte  <otte@gnome.org>
11127
11128         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11129
11130         * autogen.sh:
11131           replace test -e with test -x for mkinstalldirs to be more portable.
11132           (fixes #134816)
11133
11134 2004-02-22  Benjamin Otte  <otte@gnome.org>
11135
11136         * gst/gstpad.c:
11137           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11138           too noisy
11139         * gst/gsttag.c: (_gst_tag_initialize):
11140         * gst/gsttag.h:
11141           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11142         * libs/gst/control/dparam.c: (gst_dparam_attach):
11143         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11144           check that types for attached dparams match
11145
11146 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11147
11148         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11149         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11150         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11151           fix errors
11152
11153 2004-02-20  Andy Wingo  <wingo@pobox.com>
11154
11155         * gst/gstbin.c:
11156         * gst/gstbuffer.c:
11157         * gst/gstplugin.c:
11158         * gst/registries/gstxmlregistry.c: 
11159         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11160
11161         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11162         (gst_element_add_pad): DEBUG->INFO, some fixes.
11163         (gst_element_get_compatible_pad_template): Just see if the
11164         templates' caps intersect, not if one is a strict subset of the
11165         other. This conforms more to what gst_pad_link_intersect() does.
11166         (gst_element_class_add_pad_template): Don't memcpy the pad
11167         template, just ref it.
11168         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11169
11170         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11171         (gst_pad_link_filtered): Debug changes.
11172         (gst_pad_link_prepare): New function, consolidated from
11173         can_link_filtered and link_filtered.
11174
11175         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11176         look more like that of the functions in gstelement.c
11177
11178         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11179         object, and return the empty string if object is NULL.
11180
11181         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11182         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11183         LOG, not DEBUG. We still get flex info on debug.
11184
11185         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11186         debug string more verbose.
11187         (plugin_times_older_than): DEBUG->LOG.
11188
11189 2004-02-20  Julien MOUTTE <julien@moutte.net>
11190
11191         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11192         will emit found_tag for each stream they demux with the codec.
11193
11194 2004-02-20  Benjamin Otte  <otte@gnome.org>
11195
11196         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11197           copy navigation event correctly. Check freeing tag lists. 
11198         * gst/gstthread.c: (gst_thread_change_state):
11199           don't abort() on state changing mess - it might happen because of
11200           bugs.
11201         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11202           use boxed functions
11203         * gst/gstvalue.h:
11204           fix GST_VALUE_HOLDS_CAPS
11205
11206 2004-02-19  David Schleef  <ds@schleef.org>
11207
11208         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11209         and use it for GST_FUNCTION.  (bug #134750)
11210
11211 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11212
11213         * po/fr.po:
11214         * po/nl.po:
11215           updating translations
11216
11217 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11218
11219         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11220
11221 2004-02-18  kost@imn.htwk-leipzig.de
11222
11223         reviewed by: David Schleef  <ds@schleef.org>
11224
11225         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
11226         for libgstcontrol.
11227
11228 2004-02-18  David Schleef  <ds@schleef.org>
11229
11230         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11231         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11232         (gst_dpsmooth_new): Additional fixes to get double dparams working.
11233         * tools/gst-inspect.c: (print_element_info): Support dumping of
11234         double dparam information.
11235
11236 2004-02-17  David Schleef  <ds@schleef.org>
11237
11238         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11239         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
11240         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
11241         Use GST_TYPE_CAPS in signal prototype.
11242         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
11243         Convert GST_TYPE_CAPS to boxed.
11244         * gst/gstelement.c: (gst_element_class_init):
11245         Use GST_TYPE_TAG_LIST in signal prototype.
11246         * gst/gstindex.c: (gst_index_class_init):
11247         * gst/gstindex.h:
11248         Add GST_TYPE_INDEX_ENTRY type.
11249         * gst/gstmarshal.list:
11250         Add necessary marshal types.
11251         * gst/gstpad.c: (gst_real_pad_class_init),
11252         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11253         (gst_pad_recover_caps_error):
11254         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
11255         * gst/gststructure.c: (_gst_structure_initialize),
11256         (gst_structure_copy), (_gst_structure_copy_conditional):
11257         * gst/gststructure.h:
11258         Convert GST_TYPE_STRUCTURE to boxed.
11259         * gst/gsttag.c: (gst_tag_list_get_type):
11260         * gst/gsttag.h:
11261         Add GST_TYPE_TAG_LIST type.
11262
11263 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11264
11265         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
11266         to what we agreed with david.
11267         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
11268
11269 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11270
11271         * po/nl.po: update translation
11272
11273 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11274
11275         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
11276           throw an error if spider is trying to play a mime type there is
11277           no decoder for
11278         * po/POTFILES.in:
11279           add gst/autoplug/gstspider.c for translation
11280
11281 2004-02-17  Julien MOUTTE  <julien@moutte.net>
11282
11283         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
11284         silently when the pad is negotiating.
11285
11286 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11287
11288         * docs/faq/Makefile.am:
11289           add script to run gstreamer uninstalled 
11290         * docs/faq/faq.xml:
11291         * docs/faq/developing.xml:
11292         * docs/faq/gst-uninstalled:
11293           extract script to run gstreamer uninstalled
11294         * docs/manuals.mak:
11295           add EXTRA_SOURCES variable for Makefile.am's to set to
11296           use additional SOURCE files for the doc build
11297
11298 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11299
11300         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
11301
11302 2004-02-15  Julien MOUTTE  <julien@moutte.net>
11303
11304         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
11305         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
11306         an error was thrown by osssink. Basically a state change failure for
11307         an element in a different scheduling group was considered as
11308         successful, which means that caps nego was going on and weird stuff
11309         happened. Like I wrote in the comment there, if someone wants to
11310         revert that please drop me a mail explaining why because I really see
11311         no point in keeping that broken behaviour there.
11312         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
11313         be empty, we then return NULL which will trigger a nice error when 
11314         pulling from the pad.
11315
11316 2004-02-13  David Schleef  <ds@schleef.org>
11317
11318         * libs/gst/control/dparam.c: (gst_dparam_class_init),
11319         (gst_dparam_get_property), (gst_dparam_set_property),
11320         (gst_dparam_do_update_default):
11321         * libs/gst/control/dparam.h:
11322         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
11323         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
11324         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
11325         (gst_dpsmooth_do_update_double):
11326         * libs/gst/control/dparam_smooth.h:
11327         * libs/gst/control/dparammanager.c:
11328         (gst_dpman_inline_direct_update):
11329         Add support for double dparams.
11330
11331 2004-02-13  David Schleef  <ds@schleef.org>
11332
11333         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
11334         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
11335
11336 2004-02-13  Mattias Wadman  <mattias@sudac.org>
11337
11338         reviewed by: David Schleef  <ds@schleef.org>
11339
11340         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
11341         (gst_fdsrc_init), (gst_fdsrc_set_property),
11342         (gst_fdsrc_get_property), (gst_fdsrc_get):
11343         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
11344         and sends an EOS event if file descriptor reading times out.
11345
11346 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11347
11348         * configure.ac:
11349           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
11350
11351 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11352
11353         * configure.ac: pass required libxml version as argument
11354         (bug reported by Christophe Fergeau)
11355
11356 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11357   
11358         * docs/gst/gstreamer-docs.sgml:
11359         * docs/gst/tmpl/gstxml.sgml:
11360         * docs/libs/gstreamer-libs-docs.sgml:
11361           version API docs
11362
11363 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11364
11365         * gst/gstinfo.c:
11366         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
11367         (gst_registry_pool_feature_filter):
11368         * gst/gstthread.c: (gst_thread_class_init):
11369         * gst/gstvalue.c:
11370           add includes exposed by building without libxml
11371         * gst/indexers/Makefile.am:
11372           do not build fileindex when LOADSAVE disabled; we should have
11373           a better libxml check later since fileindex depends on xml, not
11374           LOADSAVE or REGISTRY
11375         * libs/gst/control/Makefile.am:
11376           link with m
11377         * tools/Makefile.am:
11378           fix wrong source code for gst-xmlinspect
11379
11380 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11381
11382         * configure.ac:
11383           fix gcov help output
11384           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
11385         * docs/random/release:
11386           some updated releasing notes
11387         * gstreamer.spec.in:
11388           more updates
11389
11390 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11391
11392         * docs/faq/faq.xml:
11393         * docs/manual/manual.xml:
11394         * docs/pwg/pwg.xml:
11395         * docs/pwg/titlepage.xml:
11396           put version in documentation
11397
11398 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11399
11400         * tools/Makefile.am: fix man page installation
11401
11402 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11403
11404         * configure.ac:
11405           don't check for libxml when load/save and registry disabled (#105844)
11406         * gstreamer.spec.in:
11407           sync with fedora candidate spec
11408
11409 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11410
11411         * po/fr.po:
11412         * po/nl.po:
11413           replace multidisksrc with multifilesrc
11414
11415 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11416
11417         * po/POTFILES.in:
11418           update to multidisksrc => multifilesrc file renaming (#134145)
11419
11420 2004-02-11  David Schleef  <ds@schleef.org>
11421
11422         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
11423         * docs/gst/tmpl/gstpadtemplate.sgml: same
11424         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
11425         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
11426         fixing dance.
11427         * gst/gstutils.c: Remove disabled code that uses GstProps.
11428         * gst/registries/gstxmlregistry.h: same
11429         * docs/random/ds/0.9-suggested-changes: random notes
11430
11431 2004-02-11  kost@imn.htwk-leipzig.de
11432
11433         reviewed by: David Schleef  <ds@schleef.org>
11434
11435         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
11436         initialisation of clock (bug #134128)
11437
11438 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11439
11440         * configure.ac:
11441         * gst/elements/Makefile.am:
11442         * gst/elements/gstelements.c:
11443         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
11444         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
11445         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
11446         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
11447         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
11448         * gst/elements/gstmultifilesrc.h:
11449           rename multidisksrc to multifilesrc (part of #122200)
11450
11451 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11452
11453         * docs/manuals.mak:
11454           fix automake complaints
11455         * gst-element-check.m4:
11456           fix unquotedness
11457
11458 2004-02-11  David Schleef  <ds@schleef.org>
11459
11460         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
11461         * gst/gstatomic_impl.h: Disable sparc implementation.
11462
11463 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11464
11465         * gst-element-check.m4:
11466           fix underquoted macros as reported by automake 1.8.x (#133800)
11467         * configure.ac:
11468           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
11469           by autopoint (fixes #132996)
11470
11471 2004-02-10  Andy Wingo  <wingo@pobox.com>
11472
11473         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
11474         way to do inheritance.
11475         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
11476         (gst_pad_get_query_types, gst_pad_get_query_types_default):
11477         Routine docs.
11478         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
11479         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
11480         doc.
11481         (gst_pad_unlink, gst_pad_is_linked): Docs.
11482         (gst_pad_renegotiate): A brief description of capsnego.
11483         (gst_pad_try_set_caps): Document.
11484         (gst_pad_try_set_caps_nonfixed): Document.
11485         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
11486         (gst_pad_set_parent): Deprecated (although not out of the API).
11487         (gst_pad_get_parent): Deprecated, although many plugins use this.
11488         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
11489         are private and will go away in 0.9.
11490         (gst_pad_perform_negotiate): Doc.
11491         (gst_pad_link_unnegotiate): I think this is meant to be static.
11492         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
11493         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
11494         (gst_pad_get_peer): Doc updates.
11495         (gst_pad_caps_change_notify): Doc.
11496         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
11497         (gst_ghost_pad_new): Doc fixes.
11498
11499         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
11500         (gst_object_check_uniqueness): 
11501
11502         * gst/gstelement.c (gst_element_add_pad) 
11503         (gst_element_add_ghost_pad, gst_element_remove_pad) 
11504         (gst_element_remove_ghost_pad, gst_element_get_pad) 
11505         (gst_element_get_static_pad, gst_element_get_pad_list) 
11506         (gst_element_class_get_pad_template_list) 
11507         (gst_element_class_get_pad_template): Work on the docs.
11508         (gst_element_get_pad_template_list): Uses the class method.
11509         (gst_element_get_compatible_pad_template): Docs, and consolidate
11510         some test conditions. 
11511         (gst_element_get_pad_from_template): New static function.
11512         (gst_element_request_compatible_pad): Docs, and work with
11513         non-request compatible templates. 
11514         (gst_element_get_compatible_pad_filtered): Docs and remove
11515         redundant checks.
11516         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
11517         (gst_element_link_filtered, gst_element_link_many) 
11518         (gst_element_link, gst_element_link_pads) 
11519         (gst_element_unlink_many): Docs.
11520
11521 2004-02-05  Andy Wingo  <wingo@pobox.com>
11522
11523         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
11524         s/pointer/boxed/.
11525
11526         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
11527
11528         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
11529         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
11530         with the type=GST_TYPE_CAPS. This allows language bindings to know
11531         what kind of data they're dealing with.
11532
11533         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
11534         to NULL when g_value_init is called. GstCaps, which rolls its own
11535         type implementation, now does the same instead of allocating empty
11536         caps.
11537         (_gst_caps_initialize, _gst_caps_collect_value,
11538         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
11539         table methods. This allows G_VALUE_COLLECT to work.
11540
11541 2004-02-05  Andy Wingo  <wingo@pobox.com>
11542
11543         * configure.ac:
11544         * testsuite/Makefile.am (SUBDIRS): 
11545         * testsuite/ghostpads/Makefile.am: 
11546         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
11547
11548         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
11549         These two routines are the only ones that set
11550         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
11551         pad template. They should be made static, depending on ABI needs.
11552         (gst_real_pad_dispose): Handle the case of ghost pads without a
11553         parent. Assert after dealing with ghost pads that the ghost pad
11554         list is empty.
11555         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
11556         set after creation.
11557         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
11558         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
11559         functions. set_property will call add_ghost_pad/remove_ghost_pad
11560         as appropriate.
11561         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
11562
11563         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
11564         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
11565         (gst_element_remove_pad): Handle ghost pads as well.
11566         (gst_element_remove_ghost_pad): Deprecated (could be removed,
11567         depending on API-stability needs).
11568
11569 2004-02-05  Andy Wingo  <wingo@pobox.com>
11570
11571         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
11572         of course they're const
11573
11574 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
11575
11576         * tools/Makefile.am:
11577         * tools/gst-feedback:
11578         * tools/gst-feedback-0.7:
11579           make gst-feedback versioned too for consistency
11580
11581 2004-02-11  David Schleef  <ds@schleef.org>
11582
11583         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11584         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
11585
11586 2004-02-10  Julien MOUTTE <julien@moutte.net>
11587
11588         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
11589         the structure does not contain a valid tag list. Adding a safety check
11590         to remove a noisy warning in that case.
11591
11592 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11593
11594         * gst/gst.c: fix name to be in line with others
11595
11596 2004-02-09  Julien MOUTTE <julien@moutte.net>
11597
11598         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
11599         not shout that loud when len is 0. Just return 0 silently.
11600
11601 2004-02-09  Julien MOUTTE  <julien@moutte.net>
11602
11603         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
11604         because data_unref has one and I prefer the debug to be symetric.
11605         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
11606         were refed when added to the queue and unrefed only once when the queue
11607         was flushed. Now the flush handler unref the buffers two times : first
11608         unref for the ref added when pushing in the queue's tail and second
11609         unref to destroy the flushed buffer.
11610
11611 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
11612
11613         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
11614
11615 2004-02-06  David Schleef  <ds@schleef.org>
11616
11617         * docs/random/ds/0.9-suggested-changes: Random ramblings
11618         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
11619         to int before printing.
11620         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
11621         * gst/parse/parse.l: same.  See bug #129600
11622
11623 2004-02-06  David Schleef  <ds@schleef.org>
11624
11625         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
11626         (gst_index_add_entry), (gst_index_add_associationv),
11627         (gst_index_add_association): Add gst_index_add_associationv()
11628         and clean up gst_index_add_association(). #127133
11629
11630 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11631
11632         * autogen.sh: check out common with right tag if CVS/Tag exists
11633
11634 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11635
11636         * testsuite/ghostpads/ghostpads.c: (main):
11637           fix testsuite from segfaulting
11638
11639 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11640
11641         * Makefile.am: add release target
11642         * configure.ac: bump nano to 1
11643         * docs/random/release:
11644
11645 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11646
11647         * gst/gstcaps.h:
11648         * gst/gstelement.c: (gst_element_base_class_init),
11649         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11650         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11651         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11652         (gst_real_pad_dispose):
11653         * gst/gststructure.c: (gst_structure_free),
11654         (gst_structure_from_string):
11655           put reverted patch back in
11656         * gst/gstelement.c: (gst_element_remove_pad):
11657           free explicit caps if they're set
11658         * gst/gstpad.c: (_gst_pad_default_fixate_func):
11659           copy the structure when fixating
11660
11661 2004-02-05  David Schleef  <ds@schleef.org>
11662
11663         * gst/gstmarshal.list:
11664         * gst/gstpad.c: (gst_real_pad_class_init),
11665         (_gst_real_pad_fixate_accumulator):
11666         Revert POINTER->BOXED change in signal marshaller.
11667
11668 === release 0.7.4 ===
11669                                                                                 
11670 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11671                                                                                 
11672         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
11673         * configure.ac: changed for release
11674
11675 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
11676
11677         * gstreamer.spec.in:
11678           bump required version of gtk-doc
11679
11680 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11681
11682         * gst/gstcaps.h:
11683         * gst/gstelement.c: (gst_element_base_class_init),
11684         (gst_element_class_set_details), (gst_element_clear_pad_caps):
11685         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11686         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
11687         (gst_real_pad_dispose):
11688         * gst/gststructure.c: (gst_structure_free),
11689         (gst_structure_from_string):
11690           revert patch that breaks applications, reapply after release
11691           to get this fixed properly
11692
11693 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11694
11695         * gst/gsttag.c: (_gst_tag_initialize):
11696         * gst/gsttag.h:
11697           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
11698
11699 2004-02-04  David Schleef  <ds@schleef.org>
11700
11701         Fix some memleaks:
11702         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
11703         (gst_spider_plug_from_srcpad):
11704         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
11705
11706 2004-02-04  David Schleef  <ds@schleef.org>
11707
11708         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
11709         a GstRealPad before accessing its structure members.
11710
11711 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11712
11713         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
11714         (gst_clock_get_speed):
11715         * gst/gstclock.h:
11716           reset padding, remove unused fields
11717
11718 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11719
11720         * gst/autoplug/gstspideridentity.c:
11721         (gst_spider_identity_sink_loop_type_finding):
11722           use get_allowed_caps, not get_caps (fixes #132519)
11723         * gst/elements/gsttypefind.c: (stop_typefinding):
11724           use correct order when sending buffers and seeking
11725
11726 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11727
11728         * configure.ac:
11729         * gst/gstelement.h:
11730         * gst/gstpad.h:
11731         * gst/gstqueue.h:
11732           upgrade libtool CURRENT, reset padding
11733
11734 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11735
11736         * configure.ac:
11737           bump to prerelease
11738           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
11739
11740 2004-02-04  David Schleef  <ds@schleef.org>
11741
11742         * docs/random/ds/0.9-suggested-changes: random notes
11743         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
11744         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
11745         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
11746         expansion.
11747         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11748         (gst_filesink_get_query_types): same
11749         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
11750         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
11751         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
11752         to use new GST_PTR_FORMAT.
11753         * gst/gstelement.h: deprecate function factory macros
11754         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
11755         These are our last variadic macros that can't be replaced with
11756         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
11757         attempting to deprecate gst_element_clock_wait().
11758         * gst/gstevent.h: same
11759         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
11760         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
11761         * gst/gstpad.h: deprecate function factory macros similar to above.
11762
11763 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11764
11765         * configure.ac:
11766         * tools/Makefile.am:
11767         * tools/gst-run.c: (popt_callback), (hash_print_key),
11768         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
11769         (get_candidates), (main):
11770           add new source file to generate non-versioned wrapper binaries
11771           for our tools.
11772
11773 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11774
11775         * gst/gstevent.c: (_gst_event_free):
11776           actually break; inside the switch statement
11777         * gst/parse/grammar.y:
11778           fix memleak where GValues weren't unset
11779
11780 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11781
11782         * gst/gststructure.c: (gst_structure_from_string):
11783           fix huge memleak
11784         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
11785         (new_entry), (gst_type_find_element_chain):
11786         * gst/gstelement.c: (gst_element_base_class_init),
11787         (gst_element_class_set_details):
11788         * gst/gstpad.c: (gst_pad_can_link_filtered):
11789           fix smaller memleaks
11790         * gst/gstpad.c: (gst_real_pad_dispose):
11791           check that explicit caps are gone
11792         * gst/gststructure.c: (gst_structure_free):
11793           actually free the structure
11794         * gst/gstelement.c: (gst_element_clear_pad_caps):
11795           unset explicit caps
11796
11797 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11798
11799         * tools/Makefile.am:
11800           use AM_CFLAGS since all the CFLAGS are the same
11801           use AM_LDFAGS
11802
11803 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11804
11805         * docs/manual/gnome.xml:
11806           expand example a little
11807         * gst/gst.c: (gst_init_with_popt_table),
11808         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
11809           make sure popt option displays are done with right textdomain
11810           use GstPoptOption type
11811         * gst/gst.h:
11812           create GstPoptOption type
11813
11814 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11815
11816         * gst/gsterror.c: (_gst_stream_errors_init):
11817         * gst/gsterror.h:
11818           adding error type for no codec
11819         * po/POTFILES.in:
11820           add gst-inspect
11821         * po/nl.po:
11822           update dutch translation
11823         * tools/gst-inspect.c: (print_element_list), (main):
11824           do proper internationalization
11825         * tools/gst-launch.c: (idle_func):
11826           remove commented out function call
11827
11828 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11829
11830         * docs/README:
11831           add some error fixing notes
11832         * docs/gst/gstreamer-sections.txt:
11833           remove double entries
11834         * docs/gst/tmpl/gstbin.sgml:
11835         * docs/gst/tmpl/gstclock.sgml:
11836           remove override
11837         * docs/gst/tmpl/gstelement.sgml:
11838         * docs/gst/tmpl/gstindex.sgml:
11839         * docs/gst/tmpl/gstobject.sgml:
11840         * docs/gst/tmpl/gstpadtemplate.sgml:
11841         * docs/gst/tmpl/gstreamer-unused.sgml:
11842         * docs/gst/tmpl/gsttag.sgml:
11843         * docs/gst/tmpl/gstthread.sgml:
11844         * docs/gst/tmpl/gstxml.sgml:
11845         * gst/gsttag.h:
11846           sync header prototypes with c decls
11847         * gst/gsttaginterface.c:
11848           fix doc headers
11849
11850 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11851
11852         * gst/parse/Makefile.am:
11853         * gst/gstobject.h:
11854           get rid of gstmarshal.h dependency. It's not needed.
11855         * gst/gst.h:
11856         * gst/elements/gstfakesink.c:
11857         * gst/elements/gstfakesrc.c:
11858         * gst/elements/gstidentity.c:
11859         * gst/gstbin.c:
11860         * gst/gstelement.c:
11861         * gst/gstindex.c:
11862         * gst/gstobject.c:
11863         * gst/gstpad.c:
11864         * gst/gstthread.c:
11865         * gst/gstxml.c:
11866         * libs/gst/control/dparam.c:
11867         * libs/gst/control/dparammanager.c:
11868           include gstmarshal.h.
11869         Fixes #132045
11870
11871 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11872
11873         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11874         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
11875         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
11876         * gst/elements/gstfilesrc.h:
11877           don't ref the filesrc when creating mmaped buffers. Don't keep a
11878           list of not-yet-destroyed buffers.
11879         * gst/gstbuffer.h:
11880           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
11881
11882 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11883
11884         * gst/gst.c: (init_pre):
11885           remove textdomain
11886
11887 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11888
11889         * docs/pwg/advanced-events.xml:
11890         * docs/pwg/advanced-scheduling.xml:
11891         * docs/pwg/intro-basics.xml:
11892         * docs/pwg/other-manager.xml:
11893         * docs/pwg/other-nton.xml:
11894         * docs/pwg/other-ntoone.xml:
11895         * docs/pwg/other-oneton.xml:
11896         * docs/pwg/pwg.xml:
11897           All sort of documentation... Forgot what. Point is that I want this
11898           in before I leave. The 'other-*' will be the last section and will
11899           explain issues specific to these type of elements.
11900
11901 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11902
11903         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11904         (gst_filesrc_get_read):
11905           set all the values on buffers that we can
11906
11907 2004-02-02  David Schleef  <ds@schleef.org>
11908
11909         Change usage of isblah() to g_ascii_isblah() to be more locale
11910         independent.  (#133076)
11911         * gst/gsturi.c: (gst_uri_protocol_check_internal):
11912         * gst/gstutils.c:
11913         * gst/parse/parse.l:
11914
11915 2004-02-02  Jon Trowbridge  <trow@gnu.org>
11916
11917         reviewed by: David Schleef  <ds@schleef.org>
11918
11919         Fix memory leaks:
11920         * gst/gstcaps.c: (gst_caps_to_string):
11921         * gst/registries/gstxmlregistry.c:
11922         (gst_xml_registry_add_path_list_func),
11923         (gst_xml_registry_parse_padtemplate):
11924
11925 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11926
11927         * gst/gstelement.c: (gst_element_default_error):
11928           suffix error messages with period
11929
11930 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11931
11932         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11933         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11934         * gst/gsterror.c: (gst_error_get_message):
11935           Suffix with dots
11936         * po/fr.po:
11937         * po/nl.po:
11938           Update translation files
11939
11940 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11941
11942         * gst/autoplug/gstspideridentity.c:
11943         (gst_spider_identity_sink_loop_type_finding):
11944         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11945         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11946         (gst_filesink_close_file), (gst_filesink_handle_event),
11947         (gst_filesink_chain):
11948         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
11949         (gst_filesrc_get_read), (gst_filesrc_open_file):
11950         * gst/elements/gstidentity.c: (gst_identity_chain):
11951         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11952         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11953         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11954         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11955         * gst/gsterror.c: (_gst_core_errors_init),
11956         (_gst_library_errors_init), (_gst_resource_errors_init),
11957         (_gst_stream_errors_init), (gst_error_get_message):
11958         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11959         (gst_pad_recover_caps_error), (gst_pad_pull):
11960         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11961         * gst/schedulers/gstbasicscheduler.c:
11962         (gst_basic_scheduler_chainhandler_proxy),
11963         (gst_basic_scheduler_gethandler_proxy),
11964         (gst_basic_scheduler_cothreaded_chain):
11965           Suffix error messages with period.
11966           Use (NULL) instead of NULL
11967
11968 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
11969
11970         * docs/gst/tmpl/gstelement.sgml:
11971         * docs/gst/tmpl/gstxml.sgml:
11972         * gst/gstelement.c: (gst_element_error_full):
11973           add element path to error
11974
11975 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11976
11977         * docs/random/mimetypes:
11978           update raw int/float info
11979         * gst/gsttag.c: (_gst_tag_initialize):
11980         * gst/gsttag.h:
11981           add GST_TAG_ENCODER
11982
11983 2004-01-30  David Schleef  <ds@schleef.org>
11984
11985         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
11986           missing (#132991)
11987
11988 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
11989
11990         reviewed by Benjamin Otte 
11991           parts of the patch submitted in bug #113913
11992
11993         * configure.ac:
11994           use AC_C_INLINE. Use = instead of == with test
11995         * examples/plugins/example.c:
11996         * gst/autoplug/gstspideridentity.c:
11997         * gst/elements/gstfdsrc.c:
11998         * gst/elements/gstfilesrc.c:
11999         * gst/elements/gstidentity.c:
12000         * gst/elements/gstmultidisksrc.c:
12001         * gst/elements/gststatistics.c:
12002         * gst/gstelement.c:
12003         * gst/gstobject.c:
12004         * gst/gstpad.c:
12005         * gst/gstpipeline.c:
12006         * gst/gstthread.c:
12007           don't end enums with a comma
12008         * gst/gstindex.c: (gst_index_compare_func):
12009           do explicit casting to gint
12010         * gst/gsttrace.c: (gst_trace_text_flush):
12011           #define strsize as a macro
12012
12013 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12014
12015         * docs/README:
12016         * docs/gst/gstreamer-docs.sgml:
12017         * docs/gst/gstreamer-sections.txt:
12018         * docs/gst/tmpl/gstelement.sgml:
12019         * docs/gst/tmpl/gsterror.sgml:
12020         * docs/gst/tmpl/gstinterface.sgml:
12021         * docs/gst/tmpl/gstreamer-unused.sgml:
12022         * docs/gst/tmpl/gststructure.sgml:
12023         * docs/gst/tmpl/gsttag.sgml:
12024         * docs/gst/tmpl/gsttaginterface.sgml:
12025         * docs/gst/tmpl/gstvalue.sgml:
12026         make sure all API ends up in the built docs
12027         * gst/gstinterface.c:
12028         * gst/gststructure.c: (gst_structure_id_set_value),
12029         (gst_structure_set_value), (gst_structure_id_get_value):
12030         * gst/gststructure.h:
12031         * gst/gstvalue.h:
12032         sync .h with .c declarations
12033
12034 2004-01-30  Julien Moutte  <julien@moutte.net>
12035
12036         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12037         Ronald will fix riffread.
12038
12039 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12040
12041         * docs/pwg/advanced-interfaces.xml:
12042           Added tuner interface docs.
12043
12044 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12045
12046         * docs/random/mimetypes:
12047           correct Theora information
12048         * gst/gstelement.h:
12049           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12050
12051 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12052
12053         * gst/gstelement.c: (gst_element_error_full):
12054         * gst/gstelement.h:
12055           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12056
12057 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12058
12059         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12060         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12061         again and even before DISCONT.
12062         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12063         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12064         bytestream so that it's not stopping to fill the bytestream if events
12065         different than EOS or DISCONT are received. Instead it process them so
12066         that they go downstream.
12067
12068 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12069
12070         * docs/gst/tmpl/gstelement.sgml:
12071         * docs/gst/tmpl/gstreamer-unused.sgml:
12072         * docs/gst/tmpl/gstxml.sgml:
12073         * gst/autoplug/gstspideridentity.c:
12074         (gst_spider_identity_sink_loop_type_finding):
12075         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12076         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12077         (gst_filesink_close_file), (gst_filesink_handle_event),
12078         (gst_filesink_chain):
12079         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12080         (gst_filesrc_get_read), (gst_filesrc_open_file):
12081         * gst/elements/gstidentity.c: (gst_identity_chain):
12082         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12083         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12084         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12085         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12086         * gst/gstelement.h:
12087         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12088         (gst_pad_recover_caps_error), (gst_pad_pull):
12089         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12090         * gst/schedulers/gstbasicscheduler.c:
12091         (gst_basic_scheduler_chainhandler_proxy),
12092         (gst_basic_scheduler_gethandler_proxy),
12093         (gst_basic_scheduler_cothreaded_chain):
12094           gst_element_error -> GST_ELEMENT_ERROR
12095
12096 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12097
12098         * docs/Makefile.am:
12099         * docs/gst/tmpl/gstelement.sgml:
12100         * docs/gst/tmpl/gstxml.sgml:
12101         * docs/manuals.mak:
12102         * docs/pwg/advanced-request.xml:
12103         * docs/pwg/advanced-scheduling.xml:
12104         * docs/pwg/advanced-tagging.xml:
12105           fix non-validating docbook using CDATA
12106           make sure make check-local gets run first to check if it validates
12107
12108 2004-01-29  Julien MOUTTE <julien@moutte.net>
12109
12110         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12111         handling (up and downstream).
12112         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12113         my_filter thing.
12114
12115 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12116
12117         * docs/pwg/advanced-tagging.xml:
12118           Add docs about tag writing.
12119
12120 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12121
12122         * docs/pwg/advanced-tagging.xml:
12123           Add a part about tag reading and application signalling... Tag
12124           writing still needs to be documented.
12125         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12126           We can set file locations in READY, too.
12127
12128 2004-01-29  Julien MOUTTE <julien@moutte.net>
12129
12130         * docs/random/ds/element-checklist: Adding some notes about src
12131         events.
12132
12133 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12134
12135         * docs/random/mimetypes:
12136           Update docs to point to correct elements for various mimetypes, and
12137           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12138           <stephane.loeuillet@tiscali.fr>.
12139
12140 2004-01-28  David Schleef  <ds@schleef.org>
12141
12142         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12143
12144 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12145
12146         * docs/random/mimetypes:
12147           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12148           undefined"
12149         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12150           make it only work in NULL.
12151         * gst/gstcaps.c:
12152           don't posion NULL caps
12153         * gst/gstelement.c: (gst_element_set_time):
12154           add debugging statement
12155         * gst/gstelement.c: (gst_element_emit_found_tag),
12156         (gst_element_found_tag_func), (gst_element_found_tags):
12157         * gst/gstelement.h:
12158           These functions take const taglists
12159         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12160           fix memleak
12161         * gst/gstpad.c: (gst_pad_event_default):
12162           make more effort on handling discont and clocks, g_warn if everything
12163           fails
12164         * gst/gststructure.c: (gst_structure_remove_fields),
12165         (gst_structure_remove_fields_valist):
12166         * gst/gststructure.h:
12167           add gst_structure_remove_fields(_valist)
12168         * gst/gsttag.c:
12169           fix doc glitch
12170
12171 2004-01-28  David Schleef  <ds@schleef.org>
12172
12173         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12174         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12175         Fix memory leakage of gst_caps_to_string().
12176
12177         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12178         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12179         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12180         (gst_spider_identity_sink_loop_type_finding):
12181         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12182         (find_suggest):
12183         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12184         (gst_pad_set_explicit_caps):
12185         * gst/parse/grammar.y:
12186
12187 2004-01-28  David Schleef  <ds@schleef.org>
12188
12189         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12190         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12191         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12192         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12193         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12194         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12195         (gst_debug_log_default), (_gst_info_printf_extension),
12196         (_gst_info_printf_extension_arginfo):  Add printf extension.
12197         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12198         * gst/gststructure.c: (gst_structure_to_string),
12199         (_gst_structure_parse_value): Use gst_value_deserialize() and
12200         remove old code.
12201         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12202         (gst_value_deserialize_boolean), (gst_strtoi),
12203         (gst_value_deserialize_int), (gst_value_deserialize_double),
12204         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12205         a bunch of deserialize functions and gst_value_deserialize.
12206         * gst/gstvalue.h: er, _de_serialize, not unserialize
12207         * testsuite/caps/string-conversions.c: (main): We don't currently
12208         handle (float) in caps, so convert these to (double).
12209         * testsuite/debug/Makefile.am: Add new test for the printf extension
12210         * testsuite/debug/printf_extension.c: (main): same
12211
12212 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12213
12214         * docs/random/company/time:
12215           Add some docs about clocking and time
12216
12217 2004-01-28  Julien MOUTTE <julien@moutte.net>
12218
12219         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12220
12221 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12222
12223         * docs/pwg/advanced-clock.xml:
12224         * docs/pwg/advanced-dparams.xml:
12225         * docs/pwg/advanced-events.xml:
12226         * docs/pwg/advanced-interfaces.xml:
12227         * docs/pwg/advanced-midi.xml:
12228         * docs/pwg/advanced-request.xml:
12229         * docs/pwg/advanced-scheduling.xml:
12230         * docs/pwg/advanced-tagging.xml:
12231         * docs/pwg/advanced-types.xml:
12232         * docs/pwg/appendix-checklist.xml:
12233         * docs/pwg/building-boiler.xml:
12234         * docs/pwg/building-chainfn.xml:
12235         * docs/pwg/building-filterfactory.xml:
12236         * docs/pwg/building-pads.xml:
12237         * docs/pwg/building-props.xml:
12238         * docs/pwg/building-signals.xml:
12239         * docs/pwg/building-state.xml:
12240         * docs/pwg/building-testapp.xml:
12241         * docs/pwg/intro-basics.xml:
12242         * docs/pwg/intro-preface.xml:
12243         * docs/pwg/other-autoplugger.xml:
12244         * docs/pwg/other-sink.xml:
12245         * docs/pwg/other-source.xml:
12246         * docs/pwg/titlepage.xml:
12247           fix up id's
12248
12249 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12250
12251         * docs/95NonPath:
12252         * docs/HACKING:
12253         * docs/README:
12254         * docs/building-the-docs-on-debian:
12255           collect relevant bits of doc info
12256
12257 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12258
12259         * docs/pwg/advanced_tagging.xml:
12260           Half-assed commit so Thomas can re-arrange document IDs here to be
12261           consistent, too.
12262
12263 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12264
12265         * docs/manual/autoplugging.xml:
12266         * docs/manual/bins-api.xml:
12267         * docs/manual/bins.xml:
12268         * docs/manual/buffers-api.xml:
12269         * docs/manual/buffers.xml:
12270         * docs/manual/clocks.xml:
12271         * docs/manual/components.xml:
12272         * docs/manual/cothreads.xml:
12273         * docs/manual/debugging.xml:
12274         * docs/manual/dparams-app.xml:
12275         * docs/manual/dynamic.xml:
12276         * docs/manual/elements-api.xml:
12277         * docs/manual/elements.xml:
12278         * docs/manual/factories.xml:
12279         * docs/manual/gnome.xml:
12280         * docs/manual/goals.xml:
12281         * docs/manual/helloworld.xml:
12282         * docs/manual/helloworld2.xml:
12283         * docs/manual/init-api.xml:
12284         * docs/manual/intro.xml:
12285         * docs/manual/links-api.xml:
12286         * docs/manual/links.xml:
12287         * docs/manual/manual.xml:
12288         * docs/manual/motivation.xml:
12289         * docs/manual/pads-api.xml:
12290         * docs/manual/pads.xml:
12291         * docs/manual/plugins-api.xml:
12292         * docs/manual/plugins.xml:
12293         * docs/manual/programs.xml:
12294         * docs/manual/queues.xml:
12295         * docs/manual/quotes.xml:
12296         * docs/manual/schedulers.xml:
12297         * docs/manual/states-api.xml:
12298         * docs/manual/states.xml:
12299         * docs/manual/threads.xml:
12300         * docs/manual/typedetection.xml:
12301         * docs/manual/xml.xml:
12302           use chapter, part, section or misc as id starts for all bits
12303
12304 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12305
12306         * docs/gst/gstreamer-sections.txt:
12307           Fix up TITLE of the sections
12308
12309 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12310
12311         * docs/pwg/advanced_interfaces.xml:
12312           Add documentation on propertyprobing.
12313         * docs/pwg/advanced_events.xml:
12314         * docs/pwg/advanced_tagging.xml:
12315         * docs/pwg/building_boiler.xml:
12316         * docs/pwg/building_filterfactory.xml:
12317         * docs/pwg/pwg.xml:
12318           Move filterfactory and tagging into their own chapter, add a chapter
12319           on events. all these are empty placeholders that will be filled in
12320           some day.
12321
12322 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12323
12324         * docs/pwg/advanced_interfaces.xml:
12325           Docs for mixer interface. Also a check for website uploading.
12326
12327 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12328
12329         * docs/HACKING:
12330         * docs/Makefile.am:
12331         * docs/faq/Makefile.am:
12332         * docs/gst/Makefile.am:
12333         * docs/gst/tmpl/gstelement.sgml:
12334         * docs/gst/tmpl/gstplugin.sgml:
12335         * docs/gst/tmpl/gstreamer-unused.sgml:
12336         * docs/libs/Makefile.am:
12337         * docs/manual/Makefile.am:
12338         * docs/manuals.mak:
12339         * docs/pwg/Makefile.am:
12340         * docs/upload.mak:
12341           Separate out upload target and make it similar for
12342           both docbook and gtk-doc docs
12343
12344 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12345
12346         * docs/manuals.mak:
12347           Fix upload target to work with freedesktop
12348
12349 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12350
12351         * docs/pwg/advanced_types.xml:
12352           Add notes on creating your own types.
12353         * docs/pwg/building_boiler.xml:
12354         * docs/pwg/building_pads.xml:
12355         * docs/pwg/building_state.xml:
12356           Add some stuff about how to retrieve values from structures, how
12357           that relates to types and change layout slightly again to be almost
12358           perfect.
12359
12360 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12361
12362         * docs/pwg/advanced_dparams.xml:
12363         * docs/pwg/advanced_scheduling.xml:
12364           Change index layout slightly.
12365
12366 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12367
12368         * docs/pwg/advanced_clock.xml:
12369         * docs/pwg/advanced_interfaces.xml:
12370         * docs/pwg/advanced_midi.xml:
12371           General placeholders for now.
12372         * docs/pwg/advanced_request.xml:
12373           Explanation about sometimes and request pads.
12374         * docs/pwg/advanced_scheduling.xml:
12375           Concept of bytestream, loopfunctions and schedulers.
12376         * docs/pwg/building_boiler.xml:
12377           Add something about plugin-init.
12378
12379 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12380
12381         * docs/pwg/building_pads.xml:
12382           Fix broken docbook
12383
12384 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12385
12386         * docs/pwg/advanced_interfaces.xml:
12387         * docs/pwg/pwg.xml:
12388           Add as a placeholder for future filling-in.
12389         * docs/pwg/basics_autoplugging.xml:
12390         * docs/pwg/basics_buffers.xml:
12391         * docs/pwg/basics_elements.xml:
12392         * docs/pwg/basics_events.xml:
12393         * docs/pwg/basics_plugins.xml:
12394         * docs/pwg/basics_types.xml:
12395           Remove, because unused (this is all in intro_basics.xml).
12396         * docs/pwg/building_signals.xml:
12397           Short intro to signals + reference to GObject docs - we really
12398           shouldn't go into these sort of things to deply because we don't
12399           use them that extensively anyway.
12400         * docs/pwg/building_state.xml:
12401           Explanation of states. Benjamin, please check.
12402         * docs/pwg/building_testapp.xml:
12403           Put everything in one page - putting only a few lines of content
12404           per page doesn't really make sense.
12405
12406           Time to get into the advanced topics. ;).
12407
12408 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12409
12410         * docs/pwg/advanced_types.xml:
12411           Finish documenting the current state of mimetypes.
12412         * docs/pwg/building_boiler.xml:
12413         * docs/pwg/building_chainfn.xml:
12414         * docs/pwg/building_pads.xml:
12415         * docs/pwg/building_props.xml:
12416         * docs/pwg/building_testapp.xml:
12417           Start documenting the "how to build a simple audio filter" part
12418           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
12419           states and (maybe?) a short introduction to capsnego in the chapter
12420           on pads (building_pads.xml). Capsnego should probably be explained
12421           fully in advanced_capsnego.xml or so.
12422
12423 2004-01-26  David Schleef  <ds@schleef.org>
12424
12425         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
12426         * gst/gstpad.h: Add new function to allow element to (somewhat)
12427         specify non-fixed caps on a pad.
12428         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
12429         that I added a few weeks ago.
12430
12431 2004-01-26  David Schleef  <ds@schleef.org>
12432
12433         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
12434           making try_set_caps() work with non-fixed caps.
12435
12436 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12437
12438         * docs/pwg/advanced_types.xml:
12439         * docs/pwg/intro_basics.xml:
12440         * docs/pwg/intro_preface.xml:
12441         * docs/pwg/pwg.xml:
12442         * docs/pwg/titlepage.xml:
12443           First try to resurrect the PWG. I'm halfway integrating the mimetypes
12444           in here (docs/random/mimetypes), and will from there on work on both
12445           updating outdated parts and adding missing parts.
12446           That doesn't mean I'll fix it completely, but I'll try at least. ;).
12447
12448 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
12449
12450         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
12451           policy is set
12452
12453 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12454
12455         * gst/gstelement.h:
12456           remove gst_element_factory_get_version. It doesn't exist anymore.
12457         * gst/gstplugin.c:
12458         * gst/gstplugin.h:
12459           remove gst_plugin_set_name and change gst_plugin_get_longname to
12460           gst_plugin_get_description to match code.
12461         * gst/gsterror.h:
12462           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
12463         * gst/gstpad.c: (gst_pad_try_set_caps):
12464           make it work with nonfixed caps.
12465           Note that even in the nonfixed case the link function of the pad
12466           that tries to set caps isn't called.
12467
12468 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12469
12470         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
12471           fix bug where buffer was not assembled correctly
12472         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
12473           silence by default
12474         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12475           only seek if there's no more buffers that could work without seeking
12476
12477 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12478
12479         * gst/gsttag.c: (_gst_tag_initialize):
12480         * gst/gsttag.h:
12481           Add application tag (for encoding/muxing app).
12482
12483 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12484
12485         * autogen.sh:
12486           make autopoint force, and libtoolize not copy
12487         * common/m4/as-docbook.m4:
12488           added docbook xml catalog setup check
12489         * common/m4/gst-doc.m4:
12490           use docbook check
12491
12492 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
12493
12494         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
12495         * gst/gsttag.h:
12496           add GstTagFlag
12497
12498 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12499
12500         * docs/gst/gstreamer-sections.txt:
12501         * docs/gst/tmpl/gst.sgml:
12502         * docs/gst/tmpl/gstbuffer.sgml:
12503         * docs/gst/tmpl/gstclock.sgml:
12504         * docs/gst/tmpl/gstelement.sgml:
12505         * docs/gst/tmpl/gstreamer-unused.sgml:
12506         * docs/gst/tmpl/gstxml.sgml:
12507           sync latest API changes to docs
12508
12509 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12510
12511         * gst/gstpluginfeature.c:
12512           fix doc snippet
12513         * tools/gst-inspect.c: (print_element_list):
12514           fix output of typefind
12515           add GPL header
12516         * tools/gst-launch.c:
12517           add GPL header
12518
12519 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12520
12521         * gst/elements/Makefile.am:
12522         * gst/elements/gstelements.c:
12523         * gst/elements/gsttypefindelement.c:
12524         * gst/elements/gsttypefindelement.h:
12525         * po/POTFILES.in:
12526         * po/fr.po:
12527         * po/nl.po:
12528           renamed gsttypefindelement to gsttypefind, conserving CVS history
12529
12530 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12531
12532         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
12533         * gst/gsttag.h:
12534           add some tags used in ogg as well
12535           fix _ in replaygain tags
12536
12537 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12538
12539         * gst/gsterror.h:
12540           fix wrong GST_LIBRARY_ERROR_ENCODE addition
12541
12542 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12543
12544         * gst/gstelement.c: (gst_element_error_full):
12545         * gst/gstelement.h:
12546           change _extended to _full
12547
12548 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12549
12550         reviewed by: <delete if not using a buddy>
12551
12552         * docs/gst/tmpl/gst.sgml:
12553         * docs/gst/tmpl/gstbuffer.sgml:
12554         * docs/gst/tmpl/gstclock.sgml:
12555         * docs/gst/tmpl/gstelement.sgml:
12556         * docs/gst/tmpl/gstreamer-unused.sgml:
12557         * docs/gst/tmpl/gstxml.sgml:
12558         * gst/gstelement.c: (gst_element_error_full):
12559         * gst/gstelement.h:
12560
12561 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
12562
12563         * gst/gstelement.h: fix _gst_element_error_printf prototype
12564
12565 2004-01-20  David Schleef  <ds@schleef.org>
12566
12567         * gst/gststructure.c: (gst_structure_to_string):
12568         Convert function to use gst_value_serialize().
12569         * gst/gstvalue.c: (gst_value_serialize_list),
12570         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
12571         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
12572         (gst_value_serialize_int), (gst_value_serialize_double),
12573         (gst_string_wrap), (gst_value_serialize_string),
12574         (gst_value_serialize), (gst_value_deserialize):
12575         * gst/gstvalue.h:
12576         Add implementations for serialize.
12577
12578 2004-01-20  Julien MOUTTE  <julien@moutte.net>
12579
12580         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
12581         we want to keep that one in the future or change xvidenc.c to use 
12582         another error.
12583
12584 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12585
12586         * gst/gstelement.c: (_gst_element_error_printf):
12587         * gst/gstelement.h:
12588           privatise function
12589
12590 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12591
12592         * docs/random/error:
12593           doc explaining error system
12594         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12595           cleanup
12596
12597 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12598
12599         * gst/gst-i18n-app.h:
12600         * gst/gst-i18n-lib.h:
12601           remove inclusion of config.h
12602         * po/POTFILES.in:
12603         * po/nl.po:
12604           add gst/gstelement.c
12605
12606 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12607
12608         * po/nl.po: updated Dutch translation
12609
12610 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12611
12612         * gst/gsterror.c: (_gst_core_errors_init),
12613         (_gst_library_errors_init), (_gst_resource_errors_init),
12614         (_gst_stream_errors_init):
12615         remove ending punctuation dots
12616
12617 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12618
12619         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
12620         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
12621         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12622         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12623         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12624         use GST_ERROR_SYSTEM
12625
12626 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12627
12628         * gst/gstelement.c: (gst_element_error_printf),
12629         (gst_element_error_extended):
12630         * gst/gstelement.h:
12631           add a helper printf function so we can have NULL values passed.
12632
12633 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12634
12635         * gst/gstelement.h:
12636           add G_STMT macros to gst_element_error, which isn't strictly
12637           necessary but people tell me to anyway.
12638
12639 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
12640
12641         * gst/Makefile.am:
12642         * gst/autoplug/gstspideridentity.c:
12643         (gst_spider_identity_sink_loop_type_finding):
12644         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12645         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12646         (gst_filesink_close_file), (gst_filesink_handle_event),
12647         (gst_filesink_chain):
12648         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
12649         (gst_filesrc_map_region), (gst_filesrc_get_read),
12650         (gst_filesrc_open_file):
12651         * gst/elements/gstidentity.c: (gst_identity_chain):
12652         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12653         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12654         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12655         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
12656         * gst/gst.h:
12657         * gst/gst_private.h:
12658         * gst/gstelement.c: (gst_element_class_init),
12659         (gst_element_default_error), (gst_element_error_func),
12660         (gst_element_error_extended):
12661         * gst/gstelement.h:
12662         * gst/gsterror.c: (_gst_core_errors_init),
12663         (_gst_library_errors_init), (_gst_resource_errors_init),
12664         (_gst_stream_errors_init), (gst_error_get_message):
12665         * gst/gsterror.h:
12666         * gst/gstinfo.c: (_gst_debug_init):
12667         * gst/gstmarshal.list:
12668         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12669         (gst_pad_recover_caps_error), (gst_pad_pull):
12670         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12671         * gst/schedulers/gstbasicscheduler.c:
12672         (gst_basic_scheduler_chainhandler_proxy),
12673         (gst_basic_scheduler_gethandler_proxy),
12674         (gst_basic_scheduler_cothreaded_chain):
12675         * po/POTFILES.in:
12676         * po/fr.po:
12677         * po/nl.po:
12678           change error signal
12679           add error categories
12680
12681 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
12682
12683         * gst/gsttag.c: (_gst_tag_initialize):
12684         * gst/gsttag.h:
12685         Add replaygain tag
12686
12687 2004-01-18  Colin Walters  <walters@verbum.org>
12688
12689         * examples/retag/retag.c: Call gst_init before processing
12690         program args.  Add g_assert to _link_many call.
12691
12692 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12693
12694         * gst/gstpad.c: (gst_pad_alloc_buffer):
12695           Return a newly allocated buffer when the pad has no peer.
12696
12697 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12698
12699         * gst/gstclock.c: (gst_clock_get_time):
12700           make it compile with gcc 2.95 again.
12701           Patch by Scott Wheeler
12702
12703 2004-01-15  David Schleef  <ds@schleef.org>
12704
12705         * gst/gstcaps.h:
12706         Added gst_caps_is_simple() macro.
12707         * testsuite/caps/caps.c: (test1):
12708         * testsuite/caps/intersect2.c: (main):
12709         * testsuite/caps/intersection.c: (main):
12710         Fixes to make 'make check' work again after removing
12711         gst_caps_is_chained().
12712
12713 2004-01-15  Leif Johnson <leif@ambient.2y.net>
12714
12715         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
12716         and additions to the MIDI document.
12717
12718 2004-01-15  David Schleef  <ds@schleef.org>
12719
12720         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
12721         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
12722         of GST_RPAD_, since we don't know if it's a real or ghost pad.
12723
12724 2004-01-15  David Schleef  <ds@schleef.org>
12725
12726         * gst/gstqueue.c:
12727         * gst/gstqueue.h:
12728         Fix the spelling of "treshold" and make min_threshold actually
12729         affect the queue.
12730
12731 2004-01-15  David Schleef  <ds@schleef.org>
12732
12733         * gst/gstcaps.c:
12734         Add lots of documentation.
12735         * gst/gstcaps.h:
12736         Deprecate a few functions.
12737         * gst/gstpad.c:
12738         Removed use of deprecated functions.
12739
12740 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12741
12742         * gst/gstpad.c: (gst_pad_is_linked):
12743         * gst/gstpad.h:
12744           implement gst_pad_is_linked
12745         * gst/gstelement.h:
12746           reserve space for initiate_state_change
12747
12748 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12749
12750         * gst/autoplug/gstspideridentity.c:
12751         (gst_spider_identity_sink_loop_type_finding):
12752           break infinite loop by just returning instead of looping
12753         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
12754           set event time difference correctly. Set it to 1 second instead
12755           of 100ms to be more tolerant
12756         * gst/gstelement.c: (gst_element_set_time):
12757           add debugging output
12758
12759 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12760
12761         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
12762           query if buffers are inside the pool, ignore events
12763
12764 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12765
12766         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
12767         (gst_clock_set_speed), (gst_clock_set_active),
12768         (gst_clock_is_active), (gst_clock_reset),
12769         (gst_clock_handle_discont):
12770         * gst/gstclock.h:
12771           deprecate old interface and disable functions that aren't in use
12772           anymore.
12773         * gst/gstelement.h:
12774         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
12775         (gst_element_set_time), (gst_element_adjust_time):
12776           add concept of "element time" and functions to get/set this time.
12777         * gst/gstelement.c: (gst_element_change_state):
12778           update element time correctly.
12779         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
12780           This is a debug message, not a g_critical.
12781         * gst/gstpad.c: (gst_pad_event_default):
12782           handle discontinuous events right with element time.
12783         * gst/gstscheduler.c: (gst_scheduler_state_transition):
12784           update to clocking fixes.
12785           set clocks on elements in READY=>PAUSED. The old behaviour caused
12786           a wrong element time on the first element that started playing.
12787         * gst/schedulers/gstbasicscheduler.c:
12788         (gst_basic_scheduler_class_init):
12789         * gst/schedulers/gstoptimalscheduler.c:
12790         (gst_opt_scheduler_class_init):
12791           remove code that just implements the default behaviour.
12792         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
12793           update to use new clocking functions
12794         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
12795         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
12796           update to test new element time.
12797         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
12798           use _get_allowed_caps instead of _get_caps. This catches filtered
12799           caps correctly.
12800         * testsuite/debug/commandline.c:
12801           update for new GST_DEBUG syntax.
12802         * testsuite/threads/Makefile.am:
12803           disable a test that only works sometimes.
12804
12805 2004-01-13  Julien MOUTTE <julien@moutte.net>
12806
12807         * po/LINGUAS: Adding fr.
12808         * po/fr.po: Adding french translation.
12809
12810 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12811
12812         * gst/parse/grammar.y:
12813         * po/POTFILES.in:
12814         * po/nl.po:
12815         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
12816           translate parsing error messages
12817
12818 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12819
12820         * po/POTFILES.in: adding gst-launch
12821         * po/nl.po: updated translation, all 99 strings translated
12822         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
12823         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
12824           fix strings for translation
12825
12826 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12827
12828         * gst/gst.c:
12829           - capitalize beginnings of popt options
12830           - fix strings for translation
12831           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
12832
12833 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12834
12835         * po/README: add some notes on how to update translations
12836
12837 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12838
12839         * ABOUT-NLS: removed, is autogenerated from autopoint
12840         * autogen.sh: add autopoint stuff
12841         * configure.ac: fix up gettext stuff
12842         * gst/Makefile.am: add i18n headers to noinst_HEADERS
12843         * gst/elements/gsttypefindelement.c: add header include
12844         * gst/gettext.h: add header, copy from system-installed header
12845         * gst/gst-i18n-app.h: to be included by each app having translations
12846         * gst/gst-i18n-lib.h: to be included by each lib having translations
12847         * gst/gst.c: (init_pre): fix up gettext calls
12848         * gst/gst_private.h: remove i18n stuff, moving to separate headers
12849         * po/LINGUAS: the new way to specify translations present
12850         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
12851         * po/Makevars: the variables filled in for GStreamer
12852         * po/POTFILES.in: added new files with translations
12853         * po/de.po: has new strings
12854         * po/nl.po: readded, has new strings
12855
12856 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12857
12858         * gst/gsttag.c: fix some strings marked for translation
12859
12860 2004-01-13  Iain <iain@prettypeople.org>
12861
12862         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
12863         group when we add an element to it, cos we unref it when we remove one
12864
12865 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12866
12867         * testsuite/debug/commandline.c: (debug_not_reached):
12868         * testsuite/debug/output.c: (check_message):
12869           fix testsuite
12870
12871 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12872
12873         * examples/cutter/.cvsignore:
12874         * examples/helloworld/.cvsignore:
12875         * examples/launch/.cvsignore:
12876         * examples/manual/.cvsignore:
12877         * examples/mixer/.cvsignore:
12878         * examples/pingpong/.cvsignore:
12879         * examples/plugins/.cvsignore:
12880         * examples/queue/.cvsignore:
12881         * examples/queue2/.cvsignore:
12882         * examples/queue3/.cvsignore:
12883         * examples/queue4/.cvsignore:
12884         * examples/retag/.cvsignore:
12885         * examples/thread/.cvsignore:
12886         * examples/typefind/.cvsignore:
12887         * examples/xml/.cvsignore:
12888         * gst/.cvsignore:
12889         * gst/autoplug/.cvsignore:
12890         * gst/elements/.cvsignore:
12891         * gst/indexers/.cvsignore:
12892         * gst/parse/.cvsignore:
12893         * gst/registries/.cvsignore:
12894         * gst/schedulers/.cvsignore:
12895         * libs/gst/bytestream/.cvsignore:
12896         * libs/gst/control/.cvsignore:
12897         * libs/gst/getbits/.cvsignore:
12898         * tests/.cvsignore:
12899         * tests/bufspeed/.cvsignore:
12900         * tests/instantiate/.cvsignore:
12901         * tests/memchunk/.cvsignore:
12902         * tests/muxing/.cvsignore:
12903         * tests/sched/.cvsignore:
12904         * tests/seeking/.cvsignore:
12905         * tests/threadstate/.cvsignore:
12906         * testsuite/.cvsignore:
12907         * testsuite/caps/.cvsignore:
12908         * testsuite/cleanup/.cvsignore:
12909         * testsuite/dynparams/.cvsignore:
12910         * testsuite/plugin/.cvsignore:
12911         * tools/.cvsignore:
12912           update - this is huge, because it includes *.bb, *.bbg and *.da files
12913           which are generated for gcov.
12914
12915 2004-01-11  David Schleef  <ds@schleef.org>
12916
12917         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
12918         a function to parse integers in ways that strto[u]l() does not.
12919
12920 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12921
12922         * tools/gst-inspect.c: (print_caps):
12923           improve output of caps a bit
12924
12925 2004-01-11  David Schleef  <ds@schleef.org>
12926
12927         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
12928         inherit correct flags (READONLY and DONTKEEP).
12929
12930 2004-01-11  David Schleef  <ds@schleef.org>
12931
12932         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
12933         (gst_filesrc_map_region):
12934         * gst/gstbuffer.c: (_gst_buffer_initialize),
12935         (_gst_buffer_sub_free), (gst_buffer_default_copy),
12936         (gst_buffer_new), (gst_buffer_create_sub),
12937         (gst_buffer_is_span_fast), (gst_buffer_span):
12938         * gst/gstbuffer.h:
12939         Change GstBuffer private structure element names. (all files)
12940         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
12941         (gst_queue_link):
12942         * gst/gstqueue.h:
12943         Implement getcaps/pad_link functions that handle the case where
12944         there are data in the queue.
12945
12946 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12947
12948         * gst/elements/gstbufferstore.c:
12949           initialize debugging structure correctly
12950         * gst/elements/gsttee.c: (gst_tee_set_property):
12951           g_object_notify when property was changed
12952         * gst/elements/gsttypefindelement.c:
12953         (gst_type_find_element_change_state):
12954           clear caps correctly
12955
12956 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12957
12958         * gst/gstqueue.c: (gst_queue_init):
12959           Use better defaults for when a queue should block. This
12960           gets rid of jerky playback for quite a few files.
12961           It takes more memory.
12962
12963 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12964
12965         (gst_xml_registry_parse_padtemplate):
12966           make critical message slightly more useful
12967
12968 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12969
12970         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
12971         (gst_debug_message_get), (gst_debug_log_default):
12972         * gst/gstinfo.h:
12973           Change gst_debug_log(_valist) to take a const format string.
12974           Change prototype of log function and functions using those to 
12975           take a GstDebugMessage instead of a string that requires using
12976           gst_debug_message_get.
12977
12978 2004-01-08  David Schleef  <ds@schleef.org>
12979
12980         * Makefile.am:
12981         * configure.ac:
12982         Add option --enable-gcov to build GStreamer with -fprofile-arcs
12983         and -ftest-coverage, which allows gcov to show information about
12984         testsuite coverage.
12985
12986 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12987
12988         * gst/gstutils.h:
12989           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
12990           GST_PARENT_CALL_WITH_DEFAULT
12991         * gst/elements/gstaggregator.c: 
12992         * gst/elements/gstbufferstore.c: 
12993         * gst/elements/gstfakesink.c: 
12994         * gst/elements/gstfakesrc.c: 
12995         * gst/elements/gstfdsink.c: 
12996         * gst/elements/gstfdsrc.c: 
12997         * gst/elements/gstfilesink.c: 
12998         * gst/elements/gstfilesrc.c: 
12999         * gst/elements/gstidentity.c: 
13000         * gst/elements/gstmd5sink.c: 
13001         * gst/elements/gstmultidisksrc.c:
13002         * gst/elements/gstpipefilter.c: 
13003         * gst/elements/gstshaper.c:
13004         * gst/elements/gststatistics.c:
13005         * gst/elements/gsttee.c:
13006         * gst/elements/gsttypefindelement.c:
13007           use them.
13008
13009 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13010
13011         * docs/gst/gstreamer-docs.sgml: remove props
13012         * docs/gst/gstreamer-sections.txt: remove props
13013         * docs/gst/tmpl/gst.sgml:
13014         * docs/gst/tmpl/gstbin.sgml:
13015         * docs/gst/tmpl/gstbuffer.sgml:
13016         * docs/gst/tmpl/gstcaps.sgml:
13017         * docs/gst/tmpl/gstclock.sgml:
13018         * docs/gst/tmpl/gstelement.sgml:
13019         * docs/gst/tmpl/gstindex.sgml:
13020         * docs/gst/tmpl/gstobject.sgml:
13021         * docs/gst/tmpl/gstpad.sgml:
13022         * docs/gst/tmpl/gstpadtemplate.sgml:
13023         * docs/gst/tmpl/gstreamer-unused.sgml:
13024         * docs/gst/tmpl/gstthread.sgml:
13025         * docs/gst/tmpl/gstxml.sgml:
13026           sync with code reorganization
13027
13028 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13029
13030         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13031         Make the 'Could not find compatible pad' message more informative.
13032
13033 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13034                                                                                 
13035         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13036           Fix for if we pass NULL as property to location.
13037         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13038         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13039           Fix for instantiate-test (see below).
13040         * gst/gststructure.c: (_gst_structure_parse_value):
13041           Fix compile error on gcc-2.96.
13042         * configure.ac:
13043         * tests/Makefile.am:
13044         * tests/instantiate/Makefile.am:
13045         * tests/instantiate/create.c: (create_all_elements), (main):
13046           Add a test that instantiates all elements. This makes it easy to
13047           track dead code for old API/design (like setting event functions
13048           on sink pads and so on).
13049
13050 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13051
13052         * gst/gstcaps.c: (gst_caps_append_structure):
13053           Move the poisoning to allow a NULL structure
13054         * gst/gstevent.c: (_gst_event_free):
13055           When freeing a navigation event, free the structure
13056           also
13057
13058 2004-01-04  David Schleef  <ds@schleef.org>
13059
13060         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13061         Remove usage of gst_pad_proxy_fixate.
13062         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13063         (gst_caps_split_one), (gst_caps_replace):
13064         Add poisoning code.
13065         * gst/gstmarshal.list:
13066         Add pointer__pointer for fixate signal
13067         * gst/gstpad.c: (gst_real_pad_class_init),
13068         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13069         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13070         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13071         Add poisoning code. Add fixate signal on RealPad. Change
13072         set_explicit_caps() to take const GstCaps, like try_set_caps().
13073         * gst/gstpad.h:
13074         * testsuite/caps/Makefile.am:
13075         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13076
13077 2004-01-03  David Schleef  <ds@schleef.org>
13078
13079         * gst/elements/gsttypefindelement.c:
13080         (gst_type_find_element_have_type), (gst_type_find_element_init):
13081         Use gst_pad_use_explicit_caps for src pad.
13082         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13083         before using it.
13084
13085 2004-01-03  David Schleef  <ds@schleef.org>
13086
13087         * gst/gstelement.c: (gst_element_link_pads_filtered),
13088         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13089         that linking was successful.
13090         * gst/gstpad.c: (gst_pad_link_free),
13091         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13092         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13093         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13094         GstPadLinkReturn correctly between functions, and don't fail
13095         when DELAYED is used (DELAYED is very important).  Better
13096         cleanup on unlinking and unnegotiation.  Should fix some spider
13097         bugs.
13098
13099 2004-01-02  David Schleef  <ds@schleef.org>
13100
13101         * gst/gstelement.c: (gst_element_class_init),
13102         (gst_element_base_class_init): ->padtemplates should be cleared
13103         in base_init, since we need to have a fresh list for every
13104         class.  (Alternately, we chould copy the list and share the
13105         actual pad templates (not the list), but that would require
13106         changing every plugin to move pad template registration from
13107         base_init to class_init.)
13108
13109 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13110
13111         * gst/gstelement.c: (gst_element_class_add_pad_template):
13112           Refuse registering a pad template if another pad template
13113           with the same name already exists (#114715).
13114
13115 2004-01-02  David Schleef  <ds@schleef.org>
13116
13117         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13118         (gst_caps_is_equal_fixed): Add new function.
13119         * gst/gstcaps.h: ditto.
13120         * gst/gstpad.c: (gst_real_pad_class_init),
13121         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13122         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13123         check new caps against existing caps -- if they're the same, return
13124         OK without renegotiating.  caps-nego-failed signal fixed so that
13125         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13126         to save an extra caps copy.  Don't complete negotiation if a pad
13127         link function returns DELAYED.
13128
13129 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13130
13131         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13132           Fix wrong g_return_if_fail
13133
13134 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13135
13136         * gst/gstbin.c: (gst_bin_class_init):
13137         Change the marshalling of element_added/element_removed
13138         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13139         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13140
13141 2004-01-01  David Schleef  <ds@schleef.org>
13142
13143         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13144         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13145         (gst_pad_use_explicit_caps):
13146         * gst/gstpad.h:
13147         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13148         to use an internal getcaps and link fuction so that negotiation
13149         always results in the explicitly set caps.
13150         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13151         are particularly useful for decoders.
13152
13153 2003-12-31  David Schleef  <ds@schleef.org>
13154
13155         * gst/elements/gstidentity.c: (gst_identity_class_init),
13156         (gst_identity_init), (gst_identity_chain),
13157         (gst_identity_set_property), (gst_identity_get_property):
13158         * gst/elements/gstidentity.h:
13159         * gst/gstqueue.c: (gst_queue_init):
13160           Negotiation fixes.
13161
13162 2003-12-31  David Schleef  <ds@schleef.org>
13163
13164         * gst/gstcaps.c: (gst_caps_intersect),
13165         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13166           Implement gst_caps_normalize().
13167         * testsuite/caps/normalisation.c: (main):
13168           Add an additional test
13169
13170 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13171
13172         * gst/gstqueue.c: (gst_queue_init):
13173           use gst_pad_proxy_getcaps()
13174
13175 2003-12-31  David Schleef  <ds@schleef.org>
13176
13177         * gst/elements/gstshaper.c: (gst_shaper_link):
13178         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13179         * gst/gstqueue.c: (gst_queue_link):
13180           Negotiation fixes.
13181
13182 2003-12-31  David Schleef  <ds@schleef.org>
13183
13184         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13185         * gst/gstpad.h: Add functions that are useful as default pad
13186         link and fixate functions for elements.
13187
13188 2003-12-30  David Schleef  <ds@schleef.org>
13189
13190         * gst/gstpad.c: (gst_pad_link_try):
13191           Fix segfault when attempting to return to old caps
13192
13193 2003-12-29  David Schleef  <ds@schleef.org>
13194
13195         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13196         (gst_caps_structure_simplify), (gst_caps_simplify):
13197         * gst/gstcaps.h:
13198           Add simplify function
13199         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13200         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13201         * gst/gstpad.h:
13202           Copy over srcnotify, sinknotify when calling old pad_link
13203           functions.  Add new is_negotiated() function.
13204         * gst/gststructure.c: (gst_structure_copy):
13205           Fix an incredibly stupid bug that should have been noticed
13206           weeks ago.  _copy() returned the argument, not the new copy.
13207
13208 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13209
13210         * gst/gstcaps.c: (gst_caps_append):
13211           add sanity checks
13212         * gst/gstcaps.h: (gst_caps_debug):
13213           remove, it doesn't exist anymore.
13214         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13215         (gst_element_threadsafe_properties_post_run):
13216           make debugging messages not clutter up THREAD debug category
13217         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13218         (gst_element_change_state):
13219           update to new caps API
13220         * gst/gstinterface.c: (gst_implements_interface_cast):
13221           don't put vital code in g_return_if_fail
13222         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13223         (gst_pad_link_filtered):
13224           add pst_pad_try_link and use it.
13225         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
13226           implement correctly, deprecate first one.
13227         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
13228           add and implement.
13229         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
13230           implement.
13231         (gst_pad_get_negotiated_caps):
13232           add and implement. Make GST_PAD_CAPS call this function.
13233         (gst_pad_get_caps):
13234           remove unneeded check..
13235         (gst_pad_recover_caps_error):
13236           disable, always return FALSE.
13237         (gst_real_pad_dispose):
13238           don't free caps and appfilter anymore, they're unused.
13239         * gst/gstpad.h:
13240           Reflect changes mentioned above.
13241         * gst/gstsystemclock.c: (gst_system_clock_wait):
13242           Make 'clock is way behind' a debugging message.
13243         * gst/gstthread.c: (gst_thread_change_state):
13244           Fix debugging message
13245
13246 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
13247
13248         * gst/gstinfo.h:
13249           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
13250         * docs/gst/tmpl/gstreamer-unused.sgml:
13251           removed all traces of cvs conflicts
13252
13253 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13254
13255         * configure.ac:
13256         * gst/schedulers/cothreads_compat.h:
13257         * libs/Makefile.am:
13258           remove last instances of wingo cothread usage
13259
13260 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13261
13262         * gst/gstplugin.c:
13263         * gst/gstversion.h.in:
13264         * gst/parse/grammar.y:
13265           change comment block from /** to /* when not gtk-doc comments
13266
13267 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13268
13269         * gst/gst.c: whitespace and doc style fixes
13270
13271 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
13272
13273         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
13274
13275 2003-12-24  Colin Walters  <walters@verbum.org>
13276
13277         * gst/elements/gsttypefindelement.c:
13278           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
13279           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
13280           Don't double-free caps.
13281
13282 2003-12-23  David Schleef  <ds@schleef.org>
13283
13284         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
13285           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
13286           Many little fixes and additions of debug statements to
13287           get rhythmbox working.
13288
13289 2003-12-23  Colin Walters  <walters@verbum.org>
13290
13291         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
13292         Use GST_PAD_LINK_SUCCESSFUL.
13293
13294 2003-12-23  David Schleef  <ds@schleef.org>
13295
13296         * gst/elements/gstaggregator.c:
13297         * gst/elements/gsttee.c:
13298           Use gst_pad_proxy_getcaps().
13299         * gst/gstpad.c:
13300         * gst/gstpad.h:
13301           Add gst_pad_proxy_getcaps(), which filter elements can use
13302           as a generic getcaps implementation.
13303           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
13304           was advertised.
13305
13306 2003-12-23  David Schleef  <ds@schleef.org>
13307
13308         * gst/gstpad.c:
13309           Rearrange/rewrite much of the pad negotiation code, since it
13310           resembled pasta.  This actually changes the way some
13311           negotiation works, since the previous code was inconsistent
13312           depending on how it was invoked.  Add (internal) structure
13313           GstPadLink, which is used to hold some information (more in
13314           the future) about the link between two pads.  Fixes a number
13315           of bugs, including random lossage of filter caps when the
13316           initial negotiation is delayed.  A few functions are still
13317           unimplemented.
13318         * gst/gstpad.h:
13319           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
13320           these when testing GstPadLinkReturn values instead of comparing
13321           directly.
13322
13323 2003-12-23  David Schleef  <ds@schleef.org>
13324
13325         * gst/gstvalue.c: 
13326         * gst/gstvalue.h:
13327           Rearrange lots of code.  Change registration of compare function
13328           into registration of compare/serialize/deserialize functions.
13329           Doesn't include implementation of gst_value_[de]serialize(),
13330           but that should be easy.
13331
13332 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13333
13334         * docs/gst/gstreamer-sections.txt:
13335         * docs/gst/tmpl/gstprops.sgml: removed
13336         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
13337           David removed props and caps code, so let's remove their docs as well.
13338           Removed all no longer existing symbols from gstreamer-sections.txt
13339           
13340 2003-12-22  Colin Walters  <walters@verbum.org>
13341
13342         * gst/gsttaginterface.c, gst/gsttaginterface.h,
13343           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
13344           of tags directly.
13345
13346 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13347
13348         * gst/elements/gstelements.c:
13349           Set ranks of elements to NONE, so the autoplugger doesn't use them.
13350         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
13351           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
13352           gst_caps (peer).
13353
13354 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13355
13356         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
13357         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
13358         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
13359         (gst_spider_identity_sink_loop_type_finding):
13360         * gst/autoplug/gstspideridentity.h:
13361           Fix autoplugging in spider element, so it works with new caps.
13362           This was mainly caused by identifying empty caps incorrectly.
13363
13364 2003-12-22  David Schleef  <ds@schleef.org>
13365
13366         * gststructure.c, gstvalue.c, gstvalue.h: Add
13367           gst_value_init_and_copy() and use it, to avoid silly mistakes in
13368           using g_value_copy()
13369
13370 2003-12-21  David Schleef  <ds@schleef.org>
13371
13372         * many, many files: Merge CAPS branch.  This includes:
13373           - implemention of GstValue and several GstValue types
13374           - implemention of GstStructure
13375           - entire rewrite of GstCaps
13376           - removal of GstProps
13377           - many changes to GstPad to compensate for new caps paradigm
13378           - removal of GstBufferpool
13379         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
13380         gstvalue.h, gst/gstcaps[2]*.[ch]:
13381           - rename gstcaps2.[ch] to gstcaps.[ch]
13382
13383 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13384
13385         * gst/gstqueue.c: (gst_queue_handle_pending_events),
13386         (gst_queue_chain), (gst_queue_handle_src_event):
13387           implement timeout for sending events. Workaround for if the
13388           pipeline on this queue is not passing any data.
13389
13390 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
13391                                                                                 
13392         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
13393         * moved CVS to freedesktop.org
13394